From b1fb83530b7105e4aa73e4101727dea945eb01c2 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期五, 29 八月 2025 21:48:15 +0800 Subject: [PATCH] bug修改 --- cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/service/impl/WorldCupCompetitorServiceImpl.java | 33 ++++++++++++++++++++------------- 1 files changed, 20 insertions(+), 13 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 1dd31e0..0b03835 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 @@ -194,6 +194,7 @@ Integer winIntegral = Integer.valueOf(null == map.get("winIntegral") ? "0" : map.get("winIntegral").toString()); Integer drawIntegral = Integer.valueOf(null == map.get("drawIntegral") ? "0" : map.get("drawIntegral").toString()); Integer loseIntegral = Integer.valueOf(null == map.get("loseIntegral") ? "0" : map.get("loseIntegral").toString()); + Integer participationIntegral = Integer.valueOf(null == map.get("participationIntegral") ? "0" : map.get("participationIntegral").toString()); //学员 if(participantType == 1){ TStudent tStudent = studentClient.queryById(participantId.intValue()); @@ -209,7 +210,7 @@ } } map.put("totalSession", num); - map.put("totalIntegral", winIntegral+drawIntegral+loseIntegral); + map.put("totalIntegral", winIntegral+drawIntegral+loseIntegral+participationIntegral); map.put("winRate", "0"); for (Map<String, Object> objectMap : lists1) { Integer participantType1 = Integer.valueOf(objectMap.get("participantType").toString()); @@ -245,7 +246,6 @@ // } // }); // } - List<WorldCupRankVo> list = new ArrayList<>(); for (int i = 0; i < mapList.size(); i++) { @@ -302,6 +302,7 @@ if(i == 19 && b){ break; } + //排名前20的数据添加完成后且包含自己,需要将自己找出来后添加到21位 if(i > 19 && !b){ if(worldCupRank.getIsStudent().compareTo(participantType) == 0 && worldCupRank.getId().compareTo(participantId) == 0){ @@ -342,6 +343,11 @@ } // 排序 list= list.stream().sorted(Comparator.comparing(WorldCupRankVo::getIntegral).reversed().thenComparing(WorldCupRankVo::getTotalSession).reversed().thenComparing(WorldCupRankVo::getWinRate).reversed()).collect(Collectors.toList()); + int a=1; + for (WorldCupRankVo worldCupRankVo : list) { + worldCupRankVo.setRank(a); + a++; + } return list; } @@ -667,7 +673,7 @@ } map.put("startTime", sdf.format(cupCompetitor.getStartTime())); map.put("score", cupCompetitor.getOurScore() + ":" + cupCompetitor.getOpponentScore()); - map.put("matchResult", cupCompetitor.getMatchResult() == 1 ? "胜" : cupCompetitor.getMatchResult() == 0 ? "平" : "负"); + map.put("matchResult", cupCompetitor.getMatchResult() == 1 ? "胜" : (cupCompetitor.getMatchResult() == 0 ? "平" : "负")); map.put("blue", cupCompetitor.getParticipant() == 1 ? cupCompetitor.getOurScore() : cupCompetitor.getOpponentScore()); map.put("red", cupCompetitor.getParticipant() == 2 ? cupCompetitor.getOurScore() : cupCompetitor.getOpponentScore()); mapList.add(map); @@ -797,7 +803,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()); @@ -1045,7 +1051,8 @@ @Override public List<WorldCupCodeListVo> getWorldCupCodeListId(Integer worldCupId) { List<WorldCupCompetitor> worldCupCompetitors = this.baseMapper.selectList(new LambdaQueryWrapper<WorldCupCompetitor>().eq(WorldCupCompetitor::getWorldCupId, worldCupId) - .le(WorldCupCompetitor::getStartTime, new Date()).ge(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分组 @@ -1060,11 +1067,11 @@ 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()); + TStudent tStudent = studentClient.queryById(competitor.getParticipantId().intValue()); + userVo.setUserName(tStudent.getName()); + userVo.setAvatar(tStudent.getHeadImg()); // 当前日期和生日计算年龄 - Date birthday = appUser.getBirthday(); + Date birthday = tStudent.getBirthday(); if(birthday!=null){ int age = now.getYear() - birthday.getYear(); @@ -1078,11 +1085,11 @@ 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()); + TStudent tStudent = studentClient.queryById(competitor.getParticipantId().intValue()); + userVo.setUserName(tStudent.getName()); + userVo.setAvatar(tStudent.getHeadImg()); // 当前日期和生日计算年龄 - Date birthday = appUser.getBirthday(); + Date birthday = tStudent.getBirthday(); if(birthday!=null){ int age = now.getYear() - birthday.getYear(); -- Gitblit v1.7.1