From 2a506a87222f01102fbe60070132cbc22323878c Mon Sep 17 00:00:00 2001
From: cloudroam <cloudroam>
Date: 星期三, 11 九月 2024 16:37:16 +0800
Subject: [PATCH] add:人员成长值接口参数调整

---
 src/main/java/com/mzl/flower/dto/request/menber/TargetMemberDTO.java                |   10 ++++++++++
 src/main/java/com/mzl/flower/service/menber/impl/MemberGrowthRecordServiceImpl.java |   23 ++++++++++++++++++++++-
 src/main/java/com/mzl/flower/dto/request/menber/UserGrowthRecordDTO.java            |   13 +++++++++++++
 3 files changed, 45 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/mzl/flower/dto/request/menber/TargetMemberDTO.java b/src/main/java/com/mzl/flower/dto/request/menber/TargetMemberDTO.java
index 820d107..4ba60c8 100644
--- a/src/main/java/com/mzl/flower/dto/request/menber/TargetMemberDTO.java
+++ b/src/main/java/com/mzl/flower/dto/request/menber/TargetMemberDTO.java
@@ -20,4 +20,14 @@
     @ApiModelProperty("目标会员等级优惠金额")
     private BigDecimal targetDiscountAmount;
 
+    @ApiModelProperty("折扣类型")
+    private String targetDiscountType;
+
+    @ApiModelProperty("折扣类型Str")
+    private String targetDiscountTypeStr;
+
+    @ApiModelProperty("会员折扣百分比")
+    private BigDecimal targetDiscountRatio;
+
+
 }
diff --git a/src/main/java/com/mzl/flower/dto/request/menber/UserGrowthRecordDTO.java b/src/main/java/com/mzl/flower/dto/request/menber/UserGrowthRecordDTO.java
index 53b7acf..4281ed3 100644
--- a/src/main/java/com/mzl/flower/dto/request/menber/UserGrowthRecordDTO.java
+++ b/src/main/java/com/mzl/flower/dto/request/menber/UserGrowthRecordDTO.java
@@ -3,6 +3,7 @@
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
+import java.math.BigDecimal;
 import java.util.List;
 
 @Data
@@ -13,6 +14,18 @@
     @ApiModelProperty("当前成长值")
     private int currentGrowthValue;
 
+    @ApiModelProperty("折扣类型")
+    private String currentDiscountType;
+
+    @ApiModelProperty("折扣类型Str")
+    private String currentDiscountTypeStr;
+
+    @ApiModelProperty("当前会员等级优惠金额")
+    private BigDecimal currentDiscountAmount;
+
+    @ApiModelProperty("会员折扣百分比")
+    private BigDecimal currentDiscountRatio;
+
     List<TargetMemberDTO> targetMemberInfos;
 
 }
diff --git a/src/main/java/com/mzl/flower/service/menber/impl/MemberGrowthRecordServiceImpl.java b/src/main/java/com/mzl/flower/service/menber/impl/MemberGrowthRecordServiceImpl.java
index 935da0b..fb302df 100644
--- a/src/main/java/com/mzl/flower/service/menber/impl/MemberGrowthRecordServiceImpl.java
+++ b/src/main/java/com/mzl/flower/service/menber/impl/MemberGrowthRecordServiceImpl.java
@@ -145,6 +145,17 @@
         //查询当前会员等级
         Member member = memberMapper.getMemberByGrowthValue(sumGrowth);
         userGrowthRecordDTO.setCurrentMemberLevel(member.getName());
+        userGrowthRecordDTO.setCurrentDiscountType(member.getDiscountType());
+        switch (member.getDiscountType()) {
+            case "ratio":
+                userGrowthRecordDTO.setCurrentDiscountTypeStr(Constants.DISCOUNT_TYPE.ratio.getDesc());
+                break;
+            case "amount":
+                userGrowthRecordDTO.setCurrentDiscountTypeStr(Constants.DISCOUNT_TYPE.amount.getDesc());
+                break;
+        }
+        userGrowthRecordDTO.setCurrentDiscountRatio(StringUtils.isEmpty(member.getDiscountRatio()) ? BigDecimal.valueOf(100) : member.getDiscountRatio());
+        userGrowthRecordDTO.setCurrentDiscountAmount(StringUtils.isEmpty(member.getDiscountAmount()) ? BigDecimal.ZERO  : member.getDiscountAmount());
         //查询比当前等级高的会员等级信息
         List<Member> memberList = memberMapper.getgtMembersByGrowthValue(sumGrowth);
         if (!CollectionUtils.isEmpty(memberList)) {
@@ -153,7 +164,17 @@
                 targetMemberDTO.setTargetMemberLevel(m.getName());
                 targetMemberDTO.setTargetStartPoint(m.getStartPoint());
                 targetMemberDTO.setTargetGap(m.getStartPoint() - sumGrowth);
-                targetMemberDTO.setTargetDiscountAmount(m.getDiscountAmount());
+                targetMemberDTO.setTargetDiscountAmount(StringUtils.isEmpty(m.getDiscountAmount()) ? BigDecimal.ZERO : m.getDiscountAmount());
+                targetMemberDTO.setTargetDiscountType(m.getDiscountType());
+                switch (member.getDiscountType()) {
+                    case "ratio":
+                        targetMemberDTO.setTargetDiscountTypeStr(Constants.DISCOUNT_TYPE.ratio.getDesc());
+                        break;
+                    case "amount":
+                        targetMemberDTO.setTargetDiscountTypeStr(Constants.DISCOUNT_TYPE.amount.getDesc());
+                        break;
+                }
+                targetMemberDTO.setTargetDiscountRatio(StringUtils.isEmpty(m.getDiscountRatio()) ? BigDecimal.valueOf(100) : m.getDiscountRatio());
                 targetMemberDTOList.add(targetMemberDTO);
             });
         }

--
Gitblit v1.9.3