From 7501140cf637fef9629a80202907ed067c8a5a06 Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期五, 08 三月 2024 20:07:45 +0800 Subject: [PATCH] 添加方法 --- cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/service/impl/WorldCupCompetitorServiceImpl.java | 69 +++++++++++++++++++++++++++++----- 1 files changed, 59 insertions(+), 10 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 512837e..f3c89ee 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 @@ -65,7 +65,7 @@ entrantRankVo.setName(participant.getName()); }else{ //学员 - TStudent tStudent = studentClient.queryById(entrantRank.getId()); + TStudent tStudent = studentClient.queryById(entrantRank.getId().intValue()); entrantRankVo.setName(tStudent.getName()); } //全国排名---直接数据库分组查询后排序 @@ -164,7 +164,7 @@ for (int i = 0; i < lists.size(); i++) { Map<String, Object> map = lists.get(i); Integer participantType = Integer.valueOf(map.get("participantType").toString()); - Integer participantId = Integer.valueOf(map.get("participantId").toString()); + Long participantId = Long.valueOf(map.get("participantId").toString()); Integer appUserId = Integer.valueOf(map.get("appUserId").toString()); Integer totalSession = Integer.valueOf(map.get("totalSession").toString()); Double winRate = Double.valueOf(map.get("winRate").toString()); @@ -172,11 +172,12 @@ boolean b = false; if(i <= 19){ WorldCupRankVo worldCupRankVo = new WorldCupRankVo(); + worldCupRankVo.setRank(i + 1); worldCupRankVo.setTotalSession(totalSession); worldCupRankVo.setWinRate(winRate); //学员 if(participantType == 1){ - TStudent tStudent = studentClient.queryById(participantId); + TStudent tStudent = studentClient.queryById(participantId.intValue()); worldCupRankVo.setAvatar(tStudent.getHeadImg()); String name = tStudent.getName(); if(name.length() > 2){ @@ -217,11 +218,12 @@ if(i > 19 && !b){ if(worldCupRank.getIsStudent().equals(participantType) && worldCupRank.getId().equals(participantId)){ WorldCupRankVo worldCupRankVo = new WorldCupRankVo(); + worldCupRankVo.setRank(i + 1); worldCupRankVo.setTotalSession(totalSession); worldCupRankVo.setWinRate(winRate); //学员 if(participantType == 1){ - TStudent tStudent = studentClient.queryById(participantId); + TStudent tStudent = studentClient.queryById(participantId.intValue()); worldCupRankVo.setAvatar(tStudent.getHeadImg()); String name = tStudent.getName(); if(name.length() > 2){ @@ -318,7 +320,7 @@ for (int i = 0; i < mapList.size(); i++) { Map<String, Object> map = mapList.get(i); Integer participantType = Integer.valueOf(map.get("participantType").toString()); - Integer participantId = Integer.valueOf(map.get("participantId").toString()); + Long participantId = Long.valueOf(map.get("participantId").toString()); Integer appUserId = Integer.valueOf(map.get("appUserId").toString()); Integer totalSession = Integer.valueOf(map.get("totalSession").toString()); Integer win = Integer.valueOf(map.get("win").toString()); @@ -327,7 +329,7 @@ AppUser appUser = appUserClient.getAppUser(appUserId); map.put("province", appUser.getProvince() + appUser.getCity()); if(1 == participantType){ - TStudent tStudent = studentClient.queryById(participantId); + TStudent tStudent = studentClient.queryById(participantId.intValue()); map.put("name", tStudent.getName()); map.put("phone", tStudent.getPhone()); }else{ @@ -363,16 +365,18 @@ for (int i = 0; i < mapList.size(); i++) { Map<String, Object> map = mapList.get(i); Integer participantType = Integer.valueOf(map.get("participantType").toString()); - Integer participantId = Integer.valueOf(map.get("participantId").toString()); + Long participantId = Long.valueOf(map.get("participantId").toString()); Integer appUserId = Integer.valueOf(map.get("appUserId").toString()); Integer totalSession = Integer.valueOf(map.get("totalSession").toString()); Integer win = Integer.valueOf(map.get("win").toString()); Integer lose = totalSession - win; map.put("lose", lose); + map.put("participantType", participantType); + map.put("participantId", participantId); AppUser appUser = appUserClient.getAppUser(appUserId); map.put("province", appUser.getProvince() + appUser.getCity()); if(1 == participantType){ - TStudent tStudent = studentClient.queryById(participantId); + TStudent tStudent = studentClient.queryById(participantId.intValue()); if(ToolUtil.isNotEmpty(name) && tStudent.getName().indexOf(name) == -1){ continue; } @@ -427,9 +431,9 @@ Map<String, Object> map = new HashMap<>(); map.put("id", cupCompetitor.getId()); Integer participantType = cupCompetitor.getParticipantType(); - Integer participantId = cupCompetitor.getParticipantId(); + Long participantId = cupCompetitor.getParticipantId(); if(1 == participantType){ - TStudent tStudent = studentClient.queryById(participantId); + TStudent tStudent = studentClient.queryById(participantId.intValue()); if(ToolUtil.isNotEmpty(name) && tStudent.getName().indexOf(name) == -1){ continue; } @@ -517,4 +521,49 @@ } this.updateBatchById(blueList); } + + + /** + * 获取用户比赛记录详情 + * @param userGameRecordList + * @return + */ + @Override + public Map<String, Object> userGameRecordList(UserGameRecordList userGameRecordList) { + String name = userGameRecordList.getUserName(); + List<Map<String, Object>> list = this.baseMapper.userGameRecordList(userGameRecordList.getName()); + List<Map<String, Object>> mapList = new ArrayList<>(); + for (Map<String, Object> map : list) { + Long participantType = Long.valueOf(map.get("participantType").toString()); + Long participantId = Long.valueOf(map.get("participantId").toString()); + Integer ourScore = Integer.valueOf(map.get("ourScore").toString()); + Integer opponentScore = Integer.valueOf(map.get("opponentScore").toString()); + Integer matchResult = Integer.valueOf(map.get("matchResult").toString()); + if(1 == participantType){ + TStudent tStudent = studentClient.queryById(participantId.intValue()); + if(ToolUtil.isNotEmpty(name) && tStudent.getName().indexOf(name) == -1){ + continue; + } + map.put("userName", tStudent.getName()); + }else{ + Participant participant = participantClient.getParticipant(participantId); + if(ToolUtil.isNotEmpty(name) && participant.getName().indexOf(name) == -1){ + continue; + } + map.put("userName", participant.getName()); + } + map.put("score", ourScore.compareTo(opponentScore) > 0 ? + ourScore + ":" + opponentScore : + opponentScore + ":" + ourScore); + map.put("matchResult", matchResult == 1 ? "胜" : "负"); + mapList.add(map); + } + Map<String, Object> map = new HashMap<>(); + map.put("total", mapList.size()); + Integer offset = userGameRecordList.getOffset(); + Integer limit = userGameRecordList.getLimit(); + limit += offset; + map.put("rows", mapList.subList(offset, mapList.size() >= limit ? limit : mapList.size())); + return map; + } } -- Gitblit v1.7.1