From e8f01399a49bb718f184e31d0f6de27c3dc64cef Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期二, 19 八月 2025 08:58:34 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/2.0' into 2.0 --- cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/service/impl/WorldCupCompetitorServiceImpl.java | 52 ++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 48 insertions(+), 4 deletions(-) diff --git a/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/service/impl/WorldCupCompetitorServiceImpl.java b/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/service/impl/WorldCupCompetitorServiceImpl.java index 9954889..b2c677a 100644 --- a/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/service/impl/WorldCupCompetitorServiceImpl.java +++ b/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/service/impl/WorldCupCompetitorServiceImpl.java @@ -30,6 +30,7 @@ import java.math.MathContext; import java.math.RoundingMode; import java.text.SimpleDateFormat; +import java.time.LocalDate; import java.util.*; import java.util.stream.Collectors; @@ -796,7 +797,7 @@ cupCompetitor.setLoseIntegral(worldCup.getLoseIntegral()); } //如果之前平了,现在赢了,需要扣减积分 - if(cupCompetitor.getMatchResult() == 0 && blue.compareTo(red) >0){ + if(cupCompetitor.getMatchResult() == 0 && blue>red){ //先扣除 SaveUserIntegralChangesVo vo1 = new SaveUserIntegralChangesVo(); vo1.setAppUserId(cupCompetitor.getAppUserId()); @@ -1044,19 +1045,62 @@ @Override public List<WorldCupCodeListVo> getWorldCupCodeListId(Integer worldCupId) { List<WorldCupCompetitor> worldCupCompetitors = this.baseMapper.selectList(new LambdaQueryWrapper<WorldCupCompetitor>().eq(WorldCupCompetitor::getWorldCupId, worldCupId) - .ge(WorldCupCompetitor::getStartTime, new Date()).lt(WorldCupCompetitor::getEndTime, new Date())); + .and(w->w.isNull(WorldCupCompetitor::getEndTime).or(s->s.le(WorldCupCompetitor::getStartTime, new Date()).ge(WorldCupCompetitor::getEndTime, new Date())))) + ; List<WorldCupCodeListVo> worldCupCodeListVos = new ArrayList<>(); // worldCupCompetitors 通过code分组 Map<String, List<WorldCupCompetitor>> map = worldCupCompetitors.stream().collect(Collectors.groupingBy(WorldCupCompetitor::getCode)); - + LocalDate now = LocalDate.now(); for (Map.Entry<String, List<WorldCupCompetitor>> entry : map.entrySet()) { WorldCupCodeListVo worldCupCodeListVo = new WorldCupCodeListVo(); String code = entry.getKey(); List<WorldCupCompetitor> value = entry.getValue(); + // 蓝队 + List<WorldCupCompetitor> collect1 = value.stream().filter(item -> item.getParticipant() == 1).collect(Collectors.toList()); + ArrayList<UserVo> objects = new ArrayList<>(); + for (WorldCupCompetitor competitor : collect1) { + UserVo userVo = new UserVo(); + AppUser appUser = appUserClient.getAppUser(competitor.getAppUserId()); + userVo.setUserName(appUser.getName()); + userVo.setAvatar(appUser.getHeadImg()); + // 当前日期和生日计算年龄 + Date birthday = appUser.getBirthday(); + + if(birthday!=null){ + int age = now.getYear() - birthday.getYear(); + userVo.setAge(age); + } + objects.add(userVo); + } + worldCupCodeListVo.setBlue(objects); + // 红队 + List<WorldCupCompetitor> collect2 = value.stream().filter(item -> item.getParticipant() == 2).collect(Collectors.toList()); + ArrayList<UserVo> objects1 = new ArrayList<>(); + for (WorldCupCompetitor competitor : collect2) { + UserVo userVo = new UserVo(); + AppUser appUser = appUserClient.getAppUser(competitor.getAppUserId()); + userVo.setUserName(appUser.getName()); + userVo.setAvatar(appUser.getHeadImg()); + // 当前日期和生日计算年龄 + Date birthday = appUser.getBirthday(); + + if(birthday!=null){ + int age = now.getYear() - birthday.getYear(); + userVo.setAge(age); + } + objects1.add(userVo); + } + worldCupCodeListVo.setRed(objects1); + worldCupCodeListVo.setCode(code); worldCupCodeListVo.setStartTime(value.get(0).getStartTime()); - worldCupCodeListVo.setWorldCupId(value.get(0).getWorldCupId()); + Integer worldCupId1 = value.get(0).getWorldCupId(); + WorldCup byId = worldCupService.getById(worldCupId1); + worldCupCodeListVo.setWorldCupId(worldCupId1); + if(byId!=null){ + worldCupCodeListVo.setName(byId.getName()); + } List<Long> collect = value.stream().map(WorldCupCompetitor::getId).collect(Collectors.toList()); worldCupCodeListVo.setCustoms(collect); worldCupCodeListVos.add(worldCupCodeListVo); -- Gitblit v1.7.1