huangzhiguo пре 1 година
родитељ
комит
d528db6499

+ 6 - 0
src/main/java/com/caimei365/user/service/impl/RegisterServiceImpl.java

@@ -69,6 +69,8 @@ public class RegisterServiceImpl implements RegisterService {
     private WeChatService weChatService;
     @Resource
     private ClubMapper clubMapper;
+    @Resource
+    private AsyncService asyncService;
 
     /**
      * 检查账号可以注册
@@ -326,6 +328,10 @@ public class RegisterServiceImpl implements RegisterService {
                 }
             }
         }
+        // 自动分配协销给协销发送微信消息提醒模板 不是默认协销 Id 发送
+        if (null != spId && spId != 1342) {
+            asyncService.sendChoseServiceMessage(1, club.getClubId(), spId, 1342);
+        }
         //推送信息中心-账户通知
         MessageCenter messageCenter = new MessageCenter();
         messageCenter.setShopId(null);

+ 38 - 2
src/main/java/com/caimei365/user/service/impl/ShopServiceImpl.java

@@ -32,6 +32,7 @@ import java.time.LocalDate;
 import java.time.YearMonth;
 import java.time.temporal.TemporalAdjusters;
 import java.util.*;
+import java.util.concurrent.atomic.AtomicInteger;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
@@ -1220,6 +1221,7 @@ public class ShopServiceImpl implements ShopService {
         if (null != shopKeyword && shopKeyword.size() > 0) {
             // 访问供应商用户对于所在地区
             List<String> region = shopMapper.getRegion(startTime, endTime, shopKeyword);
+            region.removeIf(re -> re.length() < 2);
             Set<String> province = new HashSet<>();
             String com = "";
             for (String str : region) {
@@ -1234,8 +1236,42 @@ public class ShopServiceImpl implements ShopService {
                 rData.setValue(collect.size());
                 regionMap.add(rData);
             }
-            userIdentity = shopMapper.getUserIdentity(startTime, endTime, shopKeyword);
-            clubType = shopMapper.getClubType(startTime, endTime, shopKeyword);
+            set = new HashSet<>();
+            List<ReturnEntityVo> userIdentity1 = shopMapper.getUserIdentity(startTime, endTime, shopKeyword);
+            // 所有值之和
+            AtomicInteger maxUserValue = new AtomicInteger(0);
+            if (null != userIdentity1 && userIdentity1.size() > 0) {
+                for (ReturnEntityVo returnEntityVo : userIdentity1) {
+                    maxUserValue.updateAndGet(max -> max + Integer.parseInt(returnEntityVo.getValue()));
+                    if (!set.contains(returnEntityVo.getName())) {
+                        set.add(returnEntityVo.getName());
+                        userIdentity.add(returnEntityVo);
+                    } else {
+                        for (ReturnEntityVo returnUserIdentity : userIdentity) {
+                            returnUserIdentity.setValue(MathUtil.add(returnUserIdentity.getValue(), returnEntityVo.getValue()).toString());
+                        }
+                    }
+                }
+                userIdentity.forEach(returnUserIdentity -> returnUserIdentity.setValue(MathUtil.div(returnUserIdentity.getValue(), maxUserValue.get(), 2).toString()));
+            }
+            set = new HashSet<>();
+            List<ReturnEntityVo> clubType1 = shopMapper.getClubType(startTime, endTime, shopKeyword);
+            if (null != clubType1 && clubType1.size() > 0) {
+                // 所有值之和
+                AtomicInteger maxClubTypeValue = new AtomicInteger(0);
+                for (ReturnEntityVo returnEntityVo : clubType1) {
+                    maxClubTypeValue.updateAndGet(max -> max + Integer.parseInt(returnEntityVo.getValue()));
+                    if (!set.contains(returnEntityVo.getName())) {
+                        set.add(returnEntityVo.getName());
+                        clubType.add(returnEntityVo);
+                    } else {
+                        for (ReturnEntityVo returnUserIdentity : clubType) {
+                            returnUserIdentity.setValue(MathUtil.add(returnUserIdentity.getValue(), returnEntityVo.getValue()).toString());
+                        }
+                    }
+                }
+                userIdentity.forEach(returnUserIdentity -> returnUserIdentity.setValue(MathUtil.div(returnUserIdentity.getValue(), maxClubTypeValue.get(), 2).toString()));
+            }
         }
         map.put("channels", regionMap);
         map.put("userIdentity", userIdentity);

+ 1 - 1
src/main/resources/mapper/ShopMapper.xml

@@ -245,7 +245,7 @@
     </select>
 
     <select id="getShopIsMark" resultType="java.lang.Integer">
-        select id from cm_shop_statistics where shopId = #{shopId} and delFlag = 0
+        select id from cm_shop_statistics where shopId = #{shopId} and delFlag = 0 limit 1
     </select>
 
     <select id="getShopHomeImageCount" resultType="java.lang.Integer">