xuqiang преди 1 година
родител
ревизия
4e00b8423a

+ 6 - 5
src/main/java/com/ydtech/modules/partner/controller/PartnerExtractHistoryController.java

@@ -139,6 +139,7 @@ public class PartnerExtractHistoryController extends BaseController {
                 .sorted(Map.Entry.comparingByKey())
                 .collect(Collectors.toList());
         List<JSONObject> list = new ArrayList<>();
+        BigDecimal total = BigDecimal.ZERO;
         for (Map.Entry<Integer, BigDecimal> entry : collect) {
 
             BigDecimal lockCommission = liftingRecordService.queryLockCommission(getUserId(),entry.getKey().toString());
@@ -146,8 +147,11 @@ public class PartnerExtractHistoryController extends BaseController {
             JSONObject jsonObject = new JSONObject();
             jsonObject.put("grade", entry.getKey().toString());
             if (null != lockCommission){
-                jsonObject.put("cashFee", entry.getValue().subtract(lockCommission).toString());
+                BigDecimal subtract = entry.getValue().subtract(lockCommission);
+                total = total.add(subtract);
+                jsonObject.put("cashFee", subtract.toString());
             }else {
+                total = total.add(entry.getValue());
                 jsonObject.put("cashFee", entry.getValue().toString());
             }
             PartnerRuleEntity ruleEntity = ruleService.selectByGrade(entry.getKey().toString());
@@ -156,10 +160,7 @@ public class PartnerExtractHistoryController extends BaseController {
         }
         HashMap<String, Object> map = new HashMap<>();
         map.put("list", list);
-        map.put("total", partnerPartnerAccounts.stream()
-                .map(PartnerPartnerAccount::getCashFee)
-                .filter(Objects::nonNull)
-                .reduce(BigDecimal.ZERO, BigDecimal::add));
+        map.put("total", total);
         return HttpResult.ok(map);
     }
 

+ 31 - 14
src/main/java/com/ydtech/modules/partner/service/Impl/PartnerUserServiceImpl.java

@@ -38,6 +38,7 @@ import com.ydtech.modules.partner.service.PartnerUserService;
 import com.ydtech.modules.partner.utils.ConditionUtils;
 import com.ydtech.modules.partner.utils.ExpiredCommissionUtils;
 import com.ydtech.modules.partner.utils.PartnerDateUtils;
+import com.ydtech.modules.partner.utils.UnlockedStatusUtils;
 import org.apache.commons.lang3.ObjectUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -333,11 +334,11 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
                     if (null == max){
                         overviewVo.setUnlockedStatus(true);
                     }else {
-                        if (4 == max){
+                        if (4 == max || 3 == max ){
                             if (partnerUser.getGrade() == 4 || partnerUser.getGrade() == 3) {
                                 overviewVo.setUnlockedStatus(true);
                             }
-                        }else if (3 == max || 2 == max){
+                        }else if (2 == max){
                             if (partnerUser.getGrade() == 3 || partnerUser.getGrade() == 2 || partnerUser.getGrade() == 4) {
                                 overviewVo.setUnlockedStatus(true);
                             }
@@ -353,12 +354,6 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
         return HttpResult.ok(homeVo);
     }
 
-    public List<String> getGradeList(List<TeamOverviewVo> teamOverviewVos) {
-        return teamOverviewVos.stream()
-                .map(TeamOverviewVo::getGrade)
-                .distinct()
-                .collect(Collectors.toList());
-    }
 
     @Override
     public List<String> getUserGradeList(String userId) {
@@ -426,7 +421,6 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
                 ));
 
         List<MyUserLevel> list = getUserLevels(userId, partnerRules, userMap);
-        //list.sort((o1, o2) -> Integer.compare(o2.getGrade(), o1.getGrade()));
         return HttpResult.ok(list);
     }
 
@@ -586,6 +580,7 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
         }
         Integer minStatus = baseMapper.selectGradeIntMin(userId);
         boolean containsKey = userMap.containsKey(1);
+        Integer max = baseMapper.selectMax(userId);
         for (PartnerRule rule : partnerRules) {
             if (!containsKey && rule.getGrade() == 1){
                 continue;
@@ -594,10 +589,33 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
             PartnerUser partnerUser = userMap.get(grade);
             MyUserLevel level = createBasicUserLevel(rule);
             if (partnerUser == null) {
+                UnlockedStatusUtils.handleUnregisteredCase(max, grade, userMap, level);
+                handleUnregisteredUser(userId, userMap, grade, level);
+            } else {
+                UnlockedStatusUtils.handleRegisteredCase(max, partnerUser.getGrade(), level);
+                handleRegisteredUser(userId, partnerUser, level, minStatus);
+            }
+            list.add(level);
+        }
+        return list;
+    }
+
+
+    /*
+    *
+
+     if (partnerUser == null) {
+                if (null == max){
+                    if (grade == (Collections.min(userMap.keySet()) - 1))
+                    level.setUnlockedStatus(true);
+                }else {
+                    if (grade == (max + 1)){
+                        level.setUnlockedStatus(true);
+                    }
+                }
                 level.setProportional("0");
                 handleUnregisteredUser(userId, userMap, grade, level);
             } else {
-                Integer max = baseMapper.selectMax(userId);
                 if (null == max){
                     level.setUnlockedStatus(true);
                 }else {
@@ -613,10 +631,9 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
                 }
                 handleRegisteredUser(userId, partnerUser, level,minStatus);
             }
-            list.add(level);
-        }
-        return list;
-    }
+
+    *
+    * */
 
 
     // 提取创建基础UserLevel的逻辑