Skip to content

Commit 93bf026

Browse files
committed
Add scores to TopMatches
1 parent 5200ad7 commit 93bf026

File tree

5 files changed

+20
-55
lines changed

5 files changed

+20
-55
lines changed

src/main/java/delta/codecharacter/server/controller/api/MatchController.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,5 +36,4 @@ public void updateMatch(@RequestBody @Valid UpdateMatchRequest updateMatchReques
3636
return;
3737
matchService.updateMatch(updateMatchRequest);
3838
}
39-
4039
}

src/main/java/delta/codecharacter/server/controller/api/UserController.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import delta.codecharacter.server.controller.request.User.*;
44
import delta.codecharacter.server.controller.response.Match.DetailedMatchStatsResponse;
5-
import delta.codecharacter.server.controller.response.Match.PrivateMatchResponse;
5+
import delta.codecharacter.server.controller.response.Match.MatchResponse;
66
import delta.codecharacter.server.controller.response.User.PrivateUserResponse;
77
import delta.codecharacter.server.controller.response.User.PublicUserResponse;
88
import delta.codecharacter.server.controller.response.UserRatingsResponse;
@@ -158,7 +158,7 @@ public ResponseEntity<List<UserRatingsResponse>> getUserRatings(@PathVariable St
158158
}
159159

160160
@GetMapping(value = "/match/{pageNo}/{pageSize}")
161-
public ResponseEntity<List<PrivateMatchResponse>> getManualAndAutoExecutedMatches(@PathVariable Integer pageNo, @PathVariable Integer pageSize, Authentication authentication) {
161+
public ResponseEntity<List<MatchResponse>> getManualAndAutoExecutedMatches(@PathVariable Integer pageNo, @PathVariable Integer pageSize, Authentication authentication) {
162162
String email = userService.getEmailFromAuthentication(authentication);
163163
User user = userService.getUserByEmail(email);
164164
Pageable pageable = PageRequest.of(pageNo - 1, pageSize);

src/main/java/delta/codecharacter/server/controller/response/Match/MatchResponse.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,9 @@ public class MatchResponse {
1717

1818
private String username2;
1919

20-
private Integer avatarId1;
20+
private Integer avatar1;
2121

22-
private Integer avatarId2;
22+
private Integer avatar2;
2323

2424
private Integer score1;
2525

src/main/java/delta/codecharacter/server/controller/response/Match/PrivateMatchResponse.java

Lines changed: 0 additions & 37 deletions
This file was deleted.

src/main/java/delta/codecharacter/server/service/MatchService.java

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
import delta.codecharacter.server.controller.response.GameLogs;
88
import delta.codecharacter.server.controller.response.Match.DetailedMatchStatsResponse;
99
import delta.codecharacter.server.controller.response.Match.MatchResponse;
10-
import delta.codecharacter.server.controller.response.Match.PrivateMatchResponse;
1110
import delta.codecharacter.server.model.Match;
1211
import delta.codecharacter.server.model.User;
1312
import delta.codecharacter.server.repository.*;
@@ -118,8 +117,10 @@ public List<MatchResponse> getTopMatches(Integer PageNumber, Integer PageSize) {
118117
MatchResponse matchResponse = MatchResponse.builder()
119118
.username1(user1.getUsername())
120119
.username2(user2.getUsername())
121-
.avatarId1(user1.getAvatarId())
122-
.avatarId2(user2.getAvatarId())
120+
.avatar1(user1.getAvatarId())
121+
.avatar2(user2.getAvatarId())
122+
.score1(match.getScore1())
123+
.score2(match.getScore2())
123124
.verdict(match.getVerdict())
124125
.matchMode(match.getMatchMode())
125126
.games(gameService.getAllGamesByMatchId(match.getId()))
@@ -137,15 +138,15 @@ public List<MatchResponse> getTopMatches(Integer PageNumber, Integer PageSize) {
137138
* @param userId UserId of the player
138139
* @return List of paginated manual and auto matches
139140
*/
140-
public List<PrivateMatchResponse> getManualAndAutoExecutedMatchesPaginated(Integer userId, Pageable pageable) {
141+
public List<MatchResponse> getManualAndAutoExecutedMatchesPaginated(Integer userId, Pageable pageable) {
141142
Aggregation aggregation = newAggregation(
142143
match(
143-
new Criteria().andOperator(
144144
new Criteria().andOperator(
145-
new Criteria().orOperator(Criteria.where("player_id_1").is(userId), Criteria.where("player_id_2").is(userId)),
146-
new Criteria().orOperator(Criteria.where("match_mode").is(MatchMode.MANUAL), Criteria.where("match_mode").is(MatchMode.AUTO))
147-
), Criteria.where("status").is("EXECUTED")
148-
)
145+
new Criteria().andOperator(
146+
new Criteria().orOperator(Criteria.where("player_id_1").is(userId), Criteria.where("player_id_2").is(userId)),
147+
new Criteria().orOperator(Criteria.where("match_mode").is(MatchMode.MANUAL), Criteria.where("match_mode").is(MatchMode.AUTO))
148+
), Criteria.where("status").is("EXECUTED")
149+
)
149150
),
150151
sort(Sort.by("createdAt").descending()),
151152
skip((long) pageable.getPageNumber() * pageable.getPageSize()),
@@ -155,26 +156,28 @@ public List<PrivateMatchResponse> getManualAndAutoExecutedMatchesPaginated(Integ
155156
var groupResults = mongoTemplate.aggregate(aggregation, Match.class, Match.class);
156157
List<Match> matches = groupResults.getMappedResults();
157158

158-
List<PrivateMatchResponse> privateMatchResponse = new ArrayList<>();
159+
List<MatchResponse> matchResponseList = new ArrayList<>();
159160
for (var match : matches) {
160161

161162
User user1 = userRepository.findByUserId(match.getPlayerId1());
162163
User user2 = userRepository.findByUserId(match.getPlayerId2());
163164

164-
var matchResponse = PrivateMatchResponse.builder()
165+
var matchResponse = MatchResponse.builder()
165166
.username1(user1.getUsername())
166167
.username2(user2.getUsername())
167168
.avatar1(user1.getAvatarId())
168169
.avatar2(user2.getAvatarId())
170+
.score1(match.getScore1())
171+
.score2(match.getScore2())
169172
.verdict(match.getVerdict())
170173
.playedAt(match.getCreatedAt())
171174
.matchMode(match.getMatchMode())
172175
.games(gameService.getAllGamesByMatchId(match.getId()))
173176
.build();
174177

175-
privateMatchResponse.add(matchResponse);
178+
matchResponseList.add(matchResponse);
176179
}
177-
return privateMatchResponse;
180+
return matchResponseList;
178181
}
179182

180183
/**

0 commit comments

Comments
 (0)