From 8ec428a747c75ea5282feb64c3d7c4c3ac3dda11 Mon Sep 17 00:00:00 2001 From: codezwjava <1563330148@qq.com> Date: Tue, 23 Mar 2021 13:56:33 +0800 Subject: [PATCH] =?UTF-8?q?bug=20=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/AerialDeliveryUserServiceImpl.java | 103 ++++++++++++++++-- 1 file changed, 95 insertions(+), 8 deletions(-) diff --git a/wisenergy-service/src/main/java/cn/wisenergy/service/app/impl/AerialDeliveryUserServiceImpl.java b/wisenergy-service/src/main/java/cn/wisenergy/service/app/impl/AerialDeliveryUserServiceImpl.java index c3e852e..a60470c 100644 --- a/wisenergy-service/src/main/java/cn/wisenergy/service/app/impl/AerialDeliveryUserServiceImpl.java +++ b/wisenergy-service/src/main/java/cn/wisenergy/service/app/impl/AerialDeliveryUserServiceImpl.java @@ -7,16 +7,15 @@ import cn.wisenergy.model.app.RecommendUser; import cn.wisenergy.model.app.TeamUserInfo; import cn.wisenergy.model.app.User; import cn.wisenergy.service.app.AerialDeliveryUserService; +import com.xxl.job.core.handler.annotation.XxlJob; import lombok.extern.slf4j.Slf4j; import org.bouncycastle.pqc.crypto.newhope.NHOtherInfoGenerator; +import org.bytedeco.javacpp.presets.opencv_core; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.text.SimpleDateFormat; -import java.util.Calendar; -import java.util.Date; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.concurrent.ConcurrentHashMap; @Service @@ -76,7 +75,7 @@ public class AerialDeliveryUserServiceImpl implements AerialDeliveryUserService } } - log.info("--------------------------ç©ºæŠ•æ± ç”¨æˆ·éšæœºåˆ†æ´¾å¼€å§‹æ‰§è¡Œå®Œæˆ---------------------------------"); + log.info("--------------------------ç©ºæŠ•æ± ç”¨æˆ·éšæœºåˆ†é…开始执行完æˆ---------------------------------"); } @Override @@ -150,10 +149,12 @@ public class AerialDeliveryUserServiceImpl implements AerialDeliveryUserService } /** - * 团队数æ®ç»´æŠ¤ - * @param beInvitedUserId 推è人userId - * @param userId 当å‰ç”¨æˆ·çš„userId + * 团队整体数æ®çš„计算 + * @param beInvitedUserId 推è人的用户id + * @param userId 当å‰ç”¨æˆ·çš„id + * @return map 团队ä¸å„ç‰çº§çš„ç”¨æˆ·æ•°é‡ */ + @Override public Map<String, Integer> teamUserInfoByAerialDelivery(String beInvitedUserId, String userId) { TeamUserInfo teamUserInfoByIntvitedUser = teamUserInfoMapper.getByUserId(beInvitedUserId); TeamUserInfo teamUserInfoByUserId = teamUserInfoMapper.getByUserId(userId); @@ -228,6 +229,7 @@ public class AerialDeliveryUserServiceImpl implements AerialDeliveryUserService } //整体团队数æ®ç»´æŠ¤ + @Override public void teamData(Map<String, Integer> teamDataMap, String userId){ //最上级用户对象 User user = usersMapper.getByUserId(userId); @@ -263,6 +265,7 @@ public class AerialDeliveryUserServiceImpl implements AerialDeliveryUserService } //查询顶级用户 + @Override public User highUser(String userId) { User byUserId = usersMapper.getByUserId(userId); String beInvitedCode = byUserId.getBeInvitedCode(); @@ -274,4 +277,88 @@ public class AerialDeliveryUserServiceImpl implements AerialDeliveryUserService return userByInviteCode; } + /** + * 团队数æ®ç»´æŠ¤ åªç»´æŠ¤å›¢é˜Ÿæ•°æ® ä¸åŒ…å«ç›´æŽ¨æ•°æ®çš„维护 + * @param userId 当期用户的userId + * @param userInvitedId 推è人的userId + */ + @Override + public void teamDataNotRecommend(String userId, String userInvitedId){ + //4ã€ç”¨æˆ·çš„团队表数æ®ç»´æŠ¤ + //ä¸Šçº§ç”¨æˆ·çš„å›¢é˜Ÿæ•°æ® + TeamUserInfo teamUserInfoMapperByUserId = teamUserInfoMapper.getByUserId(userInvitedId); + //团队ä¸å„ç‰çº§äººæ•° + Integer normalUserNum = teamUserInfoMapperByUserId.getNormalUserNum(); + Integer seedlingNum = teamUserInfoMapperByUserId.getSeedlingNum(); + Integer bronzeTreeNum = teamUserInfoMapperByUserId.getBronzeTreeNum(); + Integer silverTreeNum = teamUserInfoMapperByUserId.getSilverTreeNum(); + Integer goldTreeNum = teamUserInfoMapperByUserId.getGoldTreeNum(); + Integer farmerNum = teamUserInfoMapperByUserId.getFarmerNum(); + Integer forestStartNum = teamUserInfoMapperByUserId.getForestStartNum(); + Integer partnerNum = teamUserInfoMapperByUserId.getPartnerNum(); + + //当å‰ç”¨æˆ·å‡çº§åŽçš„æ•°æ® + User userByUserId = usersMapper.getUserByUserId(userId); + if (null != userByUserId){ + int userLevel = userByUserId.getUserLevel(); + if (userLevel == 1){ + //用户ç‰çº§ä¸º1 + // å›¢é˜Ÿæ™®é€šç”¨æˆ·æ•°é‡ -1 + // æ˜¯å›¢é˜Ÿå¹¼è‹—æ•°é‡ +1 + if (normalUserNum > 0){ + normalUserNum = normalUserNum - 1; + } + seedlingNum = seedlingNum + 1; + }else if (userLevel == 2){ + if (seedlingNum > 0){ + seedlingNum = seedlingNum - 1; + } + bronzeTreeNum = bronzeTreeNum + 1; + }else if (userLevel == 3){ + if (bronzeTreeNum > 0){ + bronzeTreeNum = bronzeTreeNum - 1; + } + silverTreeNum = silverTreeNum + 1; + }else if (userLevel == 4){ + if (silverTreeNum > 0){ + silverTreeNum = silverTreeNum - 1; + } + goldTreeNum = goldTreeNum + 1; + }else if (userLevel == 5){ + if (goldTreeNum > 0){ + goldTreeNum = goldTreeNum - 1; + } + farmerNum = farmerNum + 1; + }else if (userLevel == 6){ + if (farmerNum > 0){ + farmerNum = farmerNum - 1; + } + forestStartNum = forestStartNum + 1; + }else if (userLevel == 7){ + if (forestStartNum > 0){ + forestStartNum = forestStartNum - 1; + } + partnerNum = partnerNum + 1; + } + } + + Map<String , Integer> teamDataMap = new HashMap<String , Integer>(); + teamDataMap.put("resultTeamNormalNum",normalUserNum); + teamDataMap.put("resultTeamSeedlingNum",seedlingNum); + teamDataMap.put("resultTeamBronzeTreeNum",bronzeTreeNum); + teamDataMap.put("resultTeamSilverTreeNum",silverTreeNum); + teamDataMap.put("resultTeamGoldTreeNum",goldTreeNum); + teamDataMap.put("resultTeamFarmerNum",farmerNum); + teamDataMap.put("resultTeamForestStartNum",forestStartNum); + teamDataMap.put("resultTeamPartnerNum",partnerNum); + //4.1获å–当å‰å›¢é˜Ÿä¸æœ€ä¸Šçº§çš„用户对象 + User highUser = highUser(userId); + if (null != highUser){ + //4.2 最上级用户id + String highUserId = highUser.getUserId(); + //4.1整体团队数æ®ç»´æŠ¤ + teamData(teamDataMap, highUserId); + } + } + } -- 2.18.1