From 435740c9d558d7645ba81c47130b1140d9f1b4be Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Fri, 01 Mar 2024 16:05:14 +0800 Subject: [PATCH] 抽奖 --- src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java | 36 +++++++++++++++++++++++------------- 1 files changed, 23 insertions(+), 13 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java index 93cdfb0..bfe07d6 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java @@ -1419,8 +1419,13 @@ //上级 String referrerId = mallMember.getReferrerId(); MallMember mallMemberRef = memberMapper.selectInfoByInviteId(referrerId); + if(ObjectUtil.isEmpty(mallMemberRef)){ + continue; + } List<MallMember> mallMembersAll = memberMapper.selectAllChildAgentListByInviteId(referrerId); - + if(ObjectUtil.isEmpty(mallMembersAll)){ + continue; + } List<MallMember> mallMembers = memberMapper.selectByRefererId(referrerId); Set<Long> mallMembersSet = mallMembers.stream().map(MallMember::getId).collect(Collectors.toSet()); mallMembersSet.retainAll(collect); @@ -1445,18 +1450,23 @@ TeamPerkDto teamPerkDto = JSONObject.parseObject(levelDic.getValue(), TeamPerkDto.class); Integer directCntLevel = teamPerkDto.getDirectCnt(); Integer teamCnt = teamPerkDto.getTeamCnt(); - if(directCntLevel >= intersection.size() && - teamCnt >= mallMembersAll.size()){ - mallMemberRef.setLevel(level); - memberMapper.updateById(mallMemberRef); - flag = true; - } - String nextLevel = MemberLevelNewEnum.ZERO_LEVEL.getNextLevel(level); - level = nextLevel; - if(level.equals(MemberLevelNewEnum.WU_LEVEL.getType()) && - nextLevel.equals(MemberLevelNewEnum.WU_LEVEL.getType()) ){ - mallMemberRef.setLevel(level); - memberMapper.updateById(mallMemberRef); + if(directCntLevel <= intersection.size()){ + if(teamCnt <= mallMembersAll.size()){ + mallMemberRef.setLevel(level); + memberMapper.updateById(mallMemberRef); + + String nextLevel = MemberLevelNewEnum.ZERO_LEVEL.getNextLevel(level); + level = nextLevel; + if(level.equals(MemberLevelNewEnum.WU_LEVEL.getType()) && + nextLevel.equals(MemberLevelNewEnum.WU_LEVEL.getType()) ){ + mallMemberRef.setLevel(level); + memberMapper.updateById(mallMemberRef); + flag = true; + } + }else{ + flag = true; + } + }else{ flag = true; } } -- Gitblit v1.9.1