From 6ffd8818ebf72ec80accb96634c994f7274dce5a Mon Sep 17 00:00:00 2001
From: cloudroam <cloudroam>
Date: 星期二, 03 九月 2024 17:40:07 +0800
Subject: [PATCH] fix:新增修改会员校验规则; add:会员成长值变化更新用户会员等级

---
 src/main/java/com/mzl/flower/mapper/customer/CustomerMapper.java |   20 ++++++++++++++++++++
 1 files changed, 20 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/mzl/flower/mapper/customer/CustomerMapper.java b/src/main/java/com/mzl/flower/mapper/customer/CustomerMapper.java
index d1f488e..f36c8d7 100644
--- a/src/main/java/com/mzl/flower/mapper/customer/CustomerMapper.java
+++ b/src/main/java/com/mzl/flower/mapper/customer/CustomerMapper.java
@@ -6,6 +6,8 @@
 import com.mzl.flower.dto.response.customer.CustomerDTO;
 import com.mzl.flower.entity.customer.Customer;
 import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+import org.apache.ibatis.annotations.Update;
 import org.springframework.stereotype.Repository;
 
 import java.util.List;
@@ -17,4 +19,22 @@
     CustomerDTO getCurrentCustomer(@Param("userId") String userId);
 
     void bindPartner(@Param("id") Long id, @Param("partnerId")Long partnerId, @Param("userId")String userId);
+
+    @Select("select count(1) from t_customer_info where level_id = #{levelId} and deleted = '0' ")
+    Integer getByLevelId(@Param("levelId") String levelId);
+
+    @Update("UPDATE t_customer_info c " +
+            "JOIN ( " +
+            "    SELECT user_id, " +
+            "           SUM(growth) as sumgrowthvalue " +
+            "    FROM t_member_growth_record " +
+            "    WHERE deleted = '0' " +
+            "    GROUP BY user_id " +
+            "    HAVING SUM(growth) > 0 " +
+            ") t1 ON c.user_id = t1.user_id " +
+            "SET c.level_id = #{levelId} " +
+            "WHERE t1.sumgrowthvalue BETWEEN #{startPoint} AND #{endPoint} ")
+    Boolean updateMemberLevelByPoint(@Param("levelId") Long levelId, @Param("startPoint") int startPoint, @Param("endPoint") int endPoint);
+
+
 }

--
Gitblit v1.9.3