From 10f1422bc8f401b06b1e55ee63b23016d74abce8 Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期三, 28 二月 2024 11:34:09 +0800 Subject: [PATCH] 优化商户发券逻辑 --- ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/member/MemberService.java | 5 +++++ ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml | 10 ++++++++++ ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/member/MemberMapper.java | 8 ++++++++ ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java | 13 +++++++++++++ ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java | 7 +++++++ 5 files changed, 43 insertions(+), 0 deletions(-) diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/member/MemberMapper.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/member/MemberMapper.java index 99b9564..803d21c 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/member/MemberMapper.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/member/MemberMapper.java @@ -96,6 +96,14 @@ */ List<Long> listIdBySendType(@Param("sendType")Integer sendType,@Param("shopId")Long shopId); + + /** + * 获取商户发送全部用的数据 + * @param shopId + * @return + */ + List<Long> listIdBySendType2(@Param("shopId")Long shopId); + /** * @description 通过ids获取用户简易返回 * @author jqs diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java index 8062e06..fee79df 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java @@ -495,6 +495,13 @@ userIdList = relUserIdList; } } + //商户发送全部,则发送没有绑定的会员及绑定了当前商户端会员 + if(coupon.getCouponFrom() == 2 && sendTarget == 2){ + shopId = coupon.getShopId(); + userIdList = memberService.listIdBySendType2(shopId); + } + + if(userIdList!=null&&!userIdList.isEmpty()){ List<MemberCoupon> memberCouponList = new ArrayList<>(); MemberCoupon memberCoupon; @@ -645,6 +652,12 @@ userIdList = relUserIdList; } } + //商户发送全部,则发送没有绑定的会员及绑定了当前商户端会员 + if(coupon.getCouponFrom() == 2 && sendTarget == 2){ + shopId = coupon.getShopId(); + userIdList = memberService.listIdBySendType2(shopId); + } + if(relUserIdList!=null&&!relUserIdList.isEmpty()){ List<MemberCoupon> memberCouponList = new ArrayList<>(); MemberCoupon memberCoupon; diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java index 25e92af..2d03862 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java @@ -1241,6 +1241,13 @@ return memberMapper.listIdBySendType(sendType,shopId); } + + public List<Long> listIdBySendType2(Long shopId) { + //1.手动领取2.全部用户3.会员用户4非会员用户5自定义 + return memberMapper.listIdBySendType2(shopId); + } + + /** * @param userIds * @return List<MgtSimpleMemberVo> diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/member/MemberService.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/member/MemberService.java index 477a7ca..05932d0 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/member/MemberService.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/member/MemberService.java @@ -195,6 +195,11 @@ */ List<Long> listIdBySendType(Integer sendType,Long shopId); + + List<Long> listIdBySendType2(Long shopId); + + + /** * @description 通过ids获取用户简易返回 * @author jqs diff --git a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml index faa4ad1..0913eef 100644 --- a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml +++ b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml @@ -344,6 +344,16 @@ </if> </select> + + <select id="listIdBySendType2" resultType="java.lang.Long"> + SELECT + tm.user_id + FROM t_member tm + WHERE tm.del_flag = 0 AND (tm.binding_flag = 0 or (tm.binding_flag = 1 AND tm.relation_shop_id = #{shopId})) + </select> + + + <select id="listSimpleVoByIds" resultType="com.ruoyi.system.api.domain.vo.MgtSimpleMemberVo"> SELECT tm.user_id userId, -- Gitblit v1.7.1