From 790ed3c2799b395cc2b51c7c070c8a73cd9203a1 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Mon, 11 Sep 2023 17:43:47 +0800
Subject: [PATCH] 优惠卷

---
 src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java       |    9 +++++++++
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java |    2 +-
 src/main/java/cc/mrbird/febs/mall/vo/OrderItemVo.java                           |    6 ++++++
 src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java            |    2 ++
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java    |   12 ++++++++++++
 5 files changed, 30 insertions(+), 1 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 682a494..f66e037 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java
@@ -235,4 +235,13 @@
         return memberService.memberCoupon(mallMemberCouponDto);
     }
 
+    @ApiOperation(value = "优惠卷详情", notes = "优惠卷详情")
+    @ApiResponses({
+            @ApiResponse(code = 200, message = "success", response = MallMemberCouponVo.class)
+    })
+    @GetMapping(value = "/couponDetails/{id}")
+    public FebsResponse couponDetails(@PathVariable("id") Long id) {
+        return memberService.couponDetails(id);
+    }
+
 }
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 bb68b55..38de0a4 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java
@@ -87,4 +87,6 @@
     FebsResponse getCoupon(GetCouponDto getCouponDto);
 
     FebsResponse memberCoupon(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 bb681a5..48309b2 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
@@ -912,6 +912,18 @@
         return new FebsResponse().success().data(pages);
     }
 
+    @Override
+    public FebsResponse couponDetails(Long id) {
+        Long memberId = LoginUserUtil.getLoginUser().getId();
+        MallMemberCoupon mallMemberCoupon = mallMemberCouponMapper.selectById(id);
+        MallMemberCouponVo mallMemberCouponVo = new MallMemberCouponVo();
+        mallMemberCouponVo.setCouponName(mallMemberCoupon.getCouponName());
+        MallGoodsCoupon mallGoodsCoupon = mallGoodsCouponMapper.selectById(mallMemberCoupon.getCouponId());
+        mallMemberCouponVo.setCostAmount(mallGoodsCoupon.getCostAmount());
+        mallMemberCouponVo.setRealAmount(mallGoodsCoupon.getRealAmount());
+        return new FebsResponse().success().data(mallMemberCouponVo);
+    }
+
     private  String getXcxLoginUrl(String code) {
         String wechatLoginUrl =xcxProperties.getWecharLoginUrl();
         return String.format(wechatLoginUrl, xcxProperties.getXcxAppid(), xcxProperties.getXcxSecret(), code);
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
index 96d2d09..1d3fad8 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
@@ -212,7 +212,7 @@
                         BigDecimal costAmount = mallGoodsCoupon.getCostAmount();
                         BigDecimal realAmount = mallGoodsCoupon.getRealAmount();
                         if(amount.compareTo(costAmount) >= 0){
-                            amount = (amount.subtract(realAmount).compareTo(BigDecimal.ZERO) > 0 ? amount : BigDecimal.ZERO);
+                            amount = (amount.subtract(realAmount).compareTo(BigDecimal.ZERO) > 0 ? amount.subtract(realAmount) : BigDecimal.ZERO);
                             orderItem.setMemberCouponId(memberCouponId);
                         }
                     }
diff --git a/src/main/java/cc/mrbird/febs/mall/vo/OrderItemVo.java b/src/main/java/cc/mrbird/febs/mall/vo/OrderItemVo.java
index 3baa30a..fb4061a 100644
--- a/src/main/java/cc/mrbird/febs/mall/vo/OrderItemVo.java
+++ b/src/main/java/cc/mrbird/febs/mall/vo/OrderItemVo.java
@@ -24,6 +24,12 @@
     @ApiModelProperty(value = "商品名称")
     private String goodsName;
 
+    @ApiModelProperty(value = "优惠卷ID")
+    private Long memberCouponId;
+
+    @ApiModelProperty(value = "推销员邀请码")
+    private String memberInviteId;
+
     @ApiModelProperty(value = "样式名称")
     private String styleName;
 

--
Gitblit v1.9.1