mirror of
https://github.com/MewoLab/AquaDX.git
synced 2025-10-26 04:22:38 +00:00
[API] Ignore song without level information when calculating rating
This commit is contained in:
parent
e992ca81c3
commit
4e462d16ea
@ -83,11 +83,15 @@ public class ApiAmazonController {
|
|||||||
List<RatingItem> result = new ArrayList<>();
|
List<RatingItem> result = new ArrayList<>();
|
||||||
for (UserMusicDetail detail : details) {
|
for (UserMusicDetail detail : details) {
|
||||||
Music music = musicMap.get(detail.getMusicId());
|
Music music = musicMap.get(detail.getMusicId());
|
||||||
Level level = music.getLevels().get(detail.getLevel());
|
if (music != null) {
|
||||||
int levelBase = level.getLevel() * 100 + level.getLevelDecimal();
|
Level level = music.getLevels().get(detail.getLevel());
|
||||||
int score = detail.getScoreMax();
|
if (level != null) {
|
||||||
int rating = calculateRating(levelBase, score);
|
int levelBase = level.getLevel() * 100 + level.getLevelDecimal();
|
||||||
result.add(new RatingItem(music.getMusicId(), music.getName(), music.getArtistName(), level.getDiff(), score, levelBase, rating));
|
int score = detail.getScoreMax();
|
||||||
|
int rating = calculateRating(levelBase, score);
|
||||||
|
result.add(new RatingItem(music.getMusicId(), music.getName(), music.getArtistName(), level.getDiff(), score, levelBase, rating));
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return result.stream()
|
return result.stream()
|
||||||
@ -105,14 +109,17 @@ public class ApiAmazonController {
|
|||||||
List<RatingItem> result = new ArrayList<>();
|
List<RatingItem> result = new ArrayList<>();
|
||||||
for (UserPlaylog log : logList) {
|
for (UserPlaylog log : logList) {
|
||||||
Music music = musicMap.get(log.getMusicId());
|
Music music = musicMap.get(log.getMusicId());
|
||||||
Level level = music.getLevels().get(log.getLevel());
|
if (music != null) {
|
||||||
int levelBase = level.getLevel() * 100 + level.getLevelDecimal();
|
Level level = music.getLevels().get(log.getLevel());
|
||||||
int score = log.getScore();
|
if (level != null) {
|
||||||
int rating = calculateRating(levelBase, score);
|
int levelBase = level.getLevel() * 100 + level.getLevelDecimal();
|
||||||
|
int score = log.getScore();
|
||||||
|
int rating = calculateRating(levelBase, score);
|
||||||
|
|
||||||
result.add(new RatingItem(music.getMusicId(), music.getName(), music.getArtistName(), level.getDiff(), score, levelBase, rating));
|
result.add(new RatingItem(music.getMusicId(), music.getName(), music.getArtistName(), level.getDiff(), score, levelBase, rating));
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
List<String> keys = new ArrayList<>();
|
|
||||||
|
|
||||||
return result.stream()
|
return result.stream()
|
||||||
.filter(detail -> detail.getLevel() != 4)
|
.filter(detail -> detail.getLevel() != 4)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user