forked from Cookies_Github_mirror/AquaDX
[F] Ongeki: Fix unique constraints
This commit is contained in:
@@ -37,7 +37,11 @@ fun OngekiController.initUpsertAll() {
|
||||
all.run {
|
||||
// Set users
|
||||
listOfNotNull(
|
||||
userOption, userPlaylogList, userActivityList, userMusicDetailList, userCharacterList
|
||||
userOption, userPlaylogList, userActivityList, userMusicDetailList, userCharacterList, userCardList,
|
||||
userDeckList, userTrainingRoomList, userStoryList, userChapterList, userMemoryChapterList, userItemList,
|
||||
userMusicItemList, userLoginBonusList, userEventPointList, userMissionPointList, userBossList,
|
||||
userTechCountList, userScenarioList, userTradeItemList, userEventMusicList, userTechEventList, userKopList,
|
||||
userEventMap?.let { listOf(it) }
|
||||
).flatten().forEach { it.user = u }
|
||||
|
||||
// UserOption
|
||||
@@ -55,11 +59,6 @@ fun OngekiController.initUpsertAll() {
|
||||
|
||||
// UserSessionlogList, UserJewelboostlogLost doesn't need to be saved for a private server
|
||||
|
||||
// UserActivityList
|
||||
userActivityList?.let { list ->
|
||||
db.activity.saveAll(list.distinctBy { it.activityId to it.kind }.mapApply {
|
||||
id = db.activity.findByUserAndKindAndActivityId(u, kind, activityId)()?.id ?: 0 }) }
|
||||
|
||||
// Ratings
|
||||
mapOf(
|
||||
"recent_rating_list" to userRecentRatingList, // This thing still need to save to solve the rating drop
|
||||
@@ -80,6 +79,11 @@ fun OngekiController.initUpsertAll() {
|
||||
"new_rating_base_next_pscore" to userNewRatingBaseNextPScoreList
|
||||
).forEach { (k, v) -> v?.let { saveGeneralData(it, u, k) } }
|
||||
|
||||
// UserActivityList
|
||||
userActivityList?.let { list ->
|
||||
db.activity.saveAll(list.distinctBy { it.activityId to it.kind }.mapApply {
|
||||
id = db.activity.findByUserAndKindAndActivityId(u, kind, activityId)()?.id ?: 0 }) }
|
||||
|
||||
// UserMusicDetailList
|
||||
userMusicDetailList?.let { list ->
|
||||
db.musicDetail.saveAll(list.distinctBy { it.musicId to it.level }.mapApply {
|
||||
@@ -171,7 +175,7 @@ fun OngekiController.initUpsertAll() {
|
||||
userEventMusicList?.let { list ->
|
||||
db.eventMusic.saveAll(list.distinctBy { it.eventId to it.type to it.musicId }.mapApply {
|
||||
id = db.eventMusic.findByUserAndEventIdAndTypeAndMusicId(u, eventId, type, musicId)()?.id ?: 0 }) }
|
||||
|
||||
|
||||
// UserTechEventList
|
||||
userTechEventList?.let { list ->
|
||||
db.techEvent.saveAll(list.distinctBy { it.eventId }.mapApply {
|
||||
|
||||
Reference in New Issue
Block a user