[+] mai2: support adding rival

This commit is contained in:
Clansty
2024-08-05 20:37:18 +08:00
parent 94ba1f0b09
commit 473f4a4295
14 changed files with 88 additions and 20 deletions

View File

@@ -122,11 +122,13 @@ class Maimai2ServletController(
val getUserRivalData = UserReqHandler { req, userId ->
val rivalId = parsing { (req["rivalId"] as Number).toLong() }
// rivalId should store and fetch with the id column of table rather than card_ext_id
// or user will be able to get others' ext_id by setting them as rival
mapOf(
"userId" to userId,
"userRivalData" to mapOf(
"rivalId" to rivalId,
"rivalName" to (repos.userData.findByCardExtId(rivalId)()?.userName ?: "")
"rivalName" to (repos.userData.findById(rivalId)()?.userName ?: "")
)
)
}

View File

@@ -38,7 +38,7 @@ public class GetUserRivalMusicHandler implements BaseHandler {
long userId = ((Number) request.get("userId")).longValue();
long rivalId = ((Number) request.get("rivalId")).intValue();
List<Mai2UserMusicDetail> details = userMusicDetailRepository.findByUser_Card_ExtId(rivalId);
List<Mai2UserMusicDetail> details = userMusicDetailRepository.findByUserId(rivalId);
List<UserRivalMusic> userRivalMusicList = new LinkedList<>();
Map<Integer, UserRivalMusic> userRivalMusicMap = new HashMap<>();
for (Mai2UserMusicDetail detail : details) {

View File

@@ -96,6 +96,8 @@ interface Mai2UserMusicDetailRepo : Mai2UserLinked<Mai2UserMusicDetail> {
fun findByUserAndMusicIdAndLevel(user: Mai2UserDetail, musicId: Int, level: Int): Optional<Mai2UserMusicDetail>
fun findByUser_Card_ExtIdAndMusicIdIn(userId: Long, musicId: List<Int>): List<Mai2UserMusicDetail>
fun findByUserId(userId: Long): List<Mai2UserMusicDetail>
}
interface Mai2UserOptionRepo : Mai2UserLinked<Mai2UserOption>