From 21b61754dce38193d780c998f49d5ca0ba66cd4f Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Mon, 12 Dec 2022 09:48:09 +0800
Subject: [PATCH] 20221130

---
 src/main/java/cc/mrbird/febs/job/OnHookPlanJob.java |   29 ++++++++++++++
 src/test/java/cc/mrbird/febs/JunitTest.java         |   40 ++++++++++----------
 2 files changed, 49 insertions(+), 20 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/job/OnHookPlanJob.java b/src/main/java/cc/mrbird/febs/job/OnHookPlanJob.java
index e534334..065731f 100644
--- a/src/main/java/cc/mrbird/febs/job/OnHookPlanJob.java
+++ b/src/main/java/cc/mrbird/febs/job/OnHookPlanJob.java
@@ -439,9 +439,38 @@
             List<DappMemberEntity> LEVEL_BP = getMemberLevelList(dappMemberEntities, DataDictionaryEnum.LEVEL_GIB.getCode(), DataDictionaryEnum.LEVEL_BP.getCode());
             List<DappMemberEntity> LEVEL_SP = getMemberLevelList(dappMemberEntities, DataDictionaryEnum.LEVEL_BP.getCode(), DataDictionaryEnum.LEVEL_SP.getCode());
             List<DappMemberEntity> LEVEL_GP = getMemberLevelList(dappMemberEntities, DataDictionaryEnum.LEVEL_SP.getCode(), DataDictionaryEnum.LEVEL_GP.getCode());
+
+            //会员升级-只要下级存在某个等级,在这条线都直接升级为该等级
+            updateMemberLevelUp(DataDictionaryEnum.LEVEL_IB.getCode(),LEVEL_IB);
+            updateMemberLevelUp(DataDictionaryEnum.LEVEL_FIB.getCode(),LEVEL_FIB);
+            updateMemberLevelUp(DataDictionaryEnum.LEVEL_CIB.getCode(),LEVEL_CIB);
+            updateMemberLevelUp(DataDictionaryEnum.LEVEL_AIB.getCode(),LEVEL_AIB);
+            updateMemberLevelUp(DataDictionaryEnum.LEVEL_GIB.getCode(),LEVEL_GIB);
+            updateMemberLevelUp(DataDictionaryEnum.LEVEL_BP.getCode(),LEVEL_BP);
+            updateMemberLevelUp(DataDictionaryEnum.LEVEL_SP.getCode(),LEVEL_SP);
+            updateMemberLevelUp(DataDictionaryEnum.LEVEL_GP.getCode(),LEVEL_GP);
         }
     }
 
+    private void updateMemberLevelUp(String code,List<DappMemberEntity> dappMemberEntities){
+        if(CollUtil.isNotEmpty(dappMemberEntities)){
+            for(DappMemberEntity dappMemberEntity : dappMemberEntities){
+                String refererIds = dappMemberEntity.getRefererIds();
+                if(StrUtil.isNotEmpty(refererIds)){
+                    List<String> strings = StrUtil.splitTrim(refererIds, ",");
+                    for(String inviteId : strings){
+                        DappMemberEntity memberEntity = dappMemberDao.selectMemberInfoByInviteId(inviteId);
+                        if(ObjectUtil.isNotEmpty(memberEntity)){
+                            memberEntity.setIdentity(code);
+                            dappMemberDao.updateById(memberEntity);
+                        }
+                    }
+                }
+            }
+        }
+
+    }
+
     private List<DappMemberEntity> getMemberLevelList(List<DappMemberEntity> dappMemberEntities,String identity,String identityNext){
         List<DappMemberEntity> dappMemberEntitiesNext = new ArrayList<>();
         if(CollUtil.isNotEmpty(dappMemberEntities)){
diff --git a/src/test/java/cc/mrbird/febs/JunitTest.java b/src/test/java/cc/mrbird/febs/JunitTest.java
index ffcf458..4e2a6c6 100644
--- a/src/test/java/cc/mrbird/febs/JunitTest.java
+++ b/src/test/java/cc/mrbird/febs/JunitTest.java
@@ -56,26 +56,26 @@
     @Autowired
     private DappMemberDao dappMemberDao;
 
-    @Test
-    public void referenceId(){
-        DappMemberEntity dappMemberEntity = dappMemberDao.selectById(1129L);
-        String refererIds = dappMemberEntity.getRefererIds();
-        List<String> refererIdList = StrUtil.split(refererIds, ",", -1, true, true);
-
-        //根据上下级,筛选用户的级别
-        ArrayList<String> refererIdLisstUp = new ArrayList<>();
-        String levelNext = MemberLevelEnum.LEVEL_MB.getType();
-        for(String inviteId : refererIdList){
-            DappMemberEntity dappMemberUp = dappMemberDao.selectMemberInfoByInviteId(inviteId);
-            String identityUp = dappMemberUp.getIdentity();
-            int compareLevelResult = MemberLevelEnum.LEVEL_MB.compareLevel(identityUp, levelNext);
-            if(0 < compareLevelResult){
-                levelNext = identityUp;
-                refererIdLisstUp.add(inviteId);
-            }
-        }
-        System.out.println(refererIdLisstUp);
-    }
+//    @Test
+//    public void referenceId(){
+//        DappMemberEntity dappMemberEntity = dappMemberDao.selectById(1129L);
+//        String refererIds = dappMemberEntity.getRefererIds();
+//        List<String> refererIdList = StrUtil.split(refererIds, ",", -1, true, true);
+//
+//        //根据上下级,筛选用户的级别
+//        ArrayList<String> refererIdLisstUp = new ArrayList<>();
+//        String levelNext = MemberLevelEnum.LEVEL_MB.getType();
+//        for(String inviteId : refererIdList){
+//            DappMemberEntity dappMemberUp = dappMemberDao.selectMemberInfoByInviteId(inviteId);
+//            String identityUp = dappMemberUp.getIdentity();
+//            int compareLevelResult = MemberLevelEnum.LEVEL_MB.compareLevel(identityUp, levelNext);
+//            if(0 < compareLevelResult){
+//                levelNext = identityUp;
+//                refererIdLisstUp.add(inviteId);
+//            }
+//        }
+//        System.out.println(refererIdLisstUp);
+//    }
 
 //    @Test
 //    public void incomeTest() {

--
Gitblit v1.9.1