From a3283457d289b5c9a0f2fca95ab3ae60c31aac51 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Tue, 02 Jan 2024 16:16:16 +0800
Subject: [PATCH] 修改推荐人

---
 src/main/java/cc/mrbird/febs/mall/dto/MallMemberCouponDto.java               |    4 ++++
 src/main/resources/mapper/modules/MallMemberCouponMapper.xml                 |   18 ++++++++++++++++++
 src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java    |    9 +++++++++
 src/main/java/cc/mrbird/febs/mall/mapper/MallMemberCouponMapper.java         |    1 +
 src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java         |    1 +
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java |   14 ++++++++++++++
 6 files changed, 47 insertions(+), 0 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java b/src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java
index 55bf365..a69a704 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java
@@ -251,6 +251,15 @@
         return memberService.memberCoupon(mallMemberCouponDto);
     }
 
+    @ApiOperation(value = "创建订单优惠卷列表")
+    @ApiResponses({
+            @ApiResponse(code = 200, message = "success", response = MallMemberCouponVo.class)
+    })
+    @PostMapping(value = "/memberPayCoupon")
+    public FebsResponse memberPayCoupon(@RequestBody MallMemberCouponDto mallMemberCouponDto) {
+        return memberService.memberPayCoupon(mallMemberCouponDto);
+    }
+
     @ApiOperation(value = "优惠卷详情", notes = "优惠卷详情")
     @ApiResponses({
             @ApiResponse(code = 200, message = "success", response = MallMemberCouponVo.class)
diff --git a/src/main/java/cc/mrbird/febs/mall/dto/MallMemberCouponDto.java b/src/main/java/cc/mrbird/febs/mall/dto/MallMemberCouponDto.java
index 044a411..55a07c1 100644
--- a/src/main/java/cc/mrbird/febs/mall/dto/MallMemberCouponDto.java
+++ b/src/main/java/cc/mrbird/febs/mall/dto/MallMemberCouponDto.java
@@ -5,6 +5,7 @@
 import lombok.Data;
 
 import java.util.Date;
+import java.util.List;
 
 @Data
 @ApiModel(value = "MallMemberCouponDto", description = "参数类")
@@ -28,4 +29,7 @@
     @ApiModelProperty(hidden = true)
     private Date expireTime;
 
+    @ApiModelProperty(hidden = true)
+    private List<Long> couponIds;
+
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/mapper/MallMemberCouponMapper.java b/src/main/java/cc/mrbird/febs/mall/mapper/MallMemberCouponMapper.java
index 6d1912e..503f517 100644
--- a/src/main/java/cc/mrbird/febs/mall/mapper/MallMemberCouponMapper.java
+++ b/src/main/java/cc/mrbird/febs/mall/mapper/MallMemberCouponMapper.java
@@ -13,6 +13,7 @@
 public interface MallMemberCouponMapper extends BaseMapper<MallMemberCoupon> {
 
     IPage<MallMemberCouponVo> selectListInPage(IPage<MallMemberCouponVo> page,  @Param("record") MallMemberCouponDto mallMemberCouponDto);
+    IPage<MallMemberCouponVo> selectListCreateInPage(IPage<MallMemberCouponVo> page,  @Param("record") MallMemberCouponDto mallMemberCouponDto);
 
     List<MallMemberCoupon> selectListByExpireTime(@Param("date")DateTime date);
 
diff --git a/src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java b/src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java
index 73380fe..b5f756d 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java
@@ -89,6 +89,7 @@
     FebsResponse scanCoupon(GetCouponDto getCouponDto);
 
     FebsResponse memberCoupon(MallMemberCouponDto mallMemberCouponDto);
+    FebsResponse memberPayCoupon(MallMemberCouponDto mallMemberCouponDto);
 
     FebsResponse couponDetails(Long id);
 
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
index df62196..a756832 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
@@ -974,6 +974,20 @@
     }
 
     @Override
+    public FebsResponse memberPayCoupon(MallMemberCouponDto mallMemberCouponDto) {
+        Long memberId = LoginUserUtil.getLoginUser().getId();
+        IPage<MallMemberCouponVo> page = new Page<>(mallMemberCouponDto.getPageNum(), mallMemberCouponDto.getPageSize());
+        mallMemberCouponDto.setMemberId(memberId);
+        mallMemberCouponDto.setExpireTime(DateUtil.date());
+        List<Long> couponIds = couponGoodsMapper.selectByGoodId(mallMemberCouponDto.getGoodsId());
+        if(CollUtil.isNotEmpty(couponIds)){
+            IPage<MallMemberCouponVo> pages = mallMemberCouponMapper.selectListCreateInPage(page, mallMemberCouponDto);
+            return new FebsResponse().success().data(pages);
+        }
+        return new FebsResponse().success();
+    }
+
+    @Override
     public FebsResponse couponDetails(Long id) {
         Long memberId = LoginUserUtil.getLoginUser().getId();
         MallMemberCoupon mallMemberCoupon = mallMemberCouponMapper.selectById(id);
diff --git a/src/main/resources/mapper/modules/MallMemberCouponMapper.xml b/src/main/resources/mapper/modules/MallMemberCouponMapper.xml
index bff28e8..845eebc 100644
--- a/src/main/resources/mapper/modules/MallMemberCouponMapper.xml
+++ b/src/main/resources/mapper/modules/MallMemberCouponMapper.xml
@@ -28,6 +28,24 @@
         order by a.CREATED_TIME desc
     </select>
 
+    <select id="selectListCreateInPage" resultType="cc.mrbird.febs.mall.vo.MallMemberCouponVo">
+        select
+        a.*,
+        b.cost_amount costAmount,
+        b.real_amount realAmount
+        from mall_member_coupon a
+        INNER join mall_goods_coupon b on b.id = a.coupon_id and b.state = 2
+        where
+            a.member_id=#{record.memberId}
+                and a.state=#{record.state}
+                and a.expire_time &gt;= #{record.expireTime}
+        and a.coupon_id in
+        <foreach collection = "record.couponIds" item = "item"  separator=","  open = "(" close = ")" >
+            #{item}
+        </foreach >
+        order by a.CREATED_TIME desc
+    </select>
+
     <select id="selectListByExpireTime" resultType="cc.mrbird.febs.mall.entity.MallMemberCoupon">
         select
             a.*

--
Gitblit v1.9.1