From 321ad5d451cc622295a00acd442f960622f0915d Mon Sep 17 00:00:00 2001 From: Dom Eori <4j6dq2zi8@relay.firefox.com> Date: Fri, 11 Mar 2022 21:53:57 +0900 Subject: [PATCH] [ongeki] Add UserMemoryChapter saving --- .../handler/impl/UpsertUserAllHandler.java | 23 ++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/src/main/java/icu/samnyan/aqua/sega/ongeki/handler/impl/UpsertUserAllHandler.java b/src/main/java/icu/samnyan/aqua/sega/ongeki/handler/impl/UpsertUserAllHandler.java index 755b00c9..f2231902 100644 --- a/src/main/java/icu/samnyan/aqua/sega/ongeki/handler/impl/UpsertUserAllHandler.java +++ b/src/main/java/icu/samnyan/aqua/sega/ongeki/handler/impl/UpsertUserAllHandler.java @@ -43,6 +43,7 @@ public class UpsertUserAllHandler implements BaseHandler { private final UserDeckRepository userDeckRepository; private final UserStoryRepository userStoryRepository; private final UserChapterRepository userChapterRepository; + private final UserMemoryChapterRepository userMemoryChapterRepository; private final UserItemRepository userItemRepository; private final UserMusicItemRepository userMusicItemRepository; private final UserLoginBonusRepository userLoginBonusRepository; @@ -60,7 +61,7 @@ public class UpsertUserAllHandler implements BaseHandler { @Autowired public UpsertUserAllHandler(BasicMapper mapper, - CardService cardService, UserDataRepository userDataRepository, UserOptionRepository userOptionRepository, UserPlaylogRepository userPlaylogRepository, UserActivityRepository userActivityRepository, UserMusicDetailRepository userMusicDetailRepository, UserCharacterRepository userCharacterRepository, UserCardRepository userCardRepository, UserDeckRepository userDeckRepository, UserStoryRepository userStoryRepository, UserChapterRepository userChapterRepository, UserItemRepository userItemRepository, UserMusicItemRepository userMusicItemRepository, UserLoginBonusRepository userLoginBonusRepository, UserEventPointRepository userEventPointRepository, UserMissionPointRepository userMissionPointRepository, UserTrainingRoomRepository userTrainingRoomRepository, UserGeneralDataRepository userGeneralDataRepository, UserBossRepository userBossRepository, UserScenarioRepository userScenarioRepository, UserTechCountRepository userTechCountRepository, UserTradeItemRepository userTradeItemRepository, UserEventMusicRepository userEventMusicRepository, UserTechEventRepository userTechEventRepository, UserKopRepository userKopRepository) { + CardService cardService, UserDataRepository userDataRepository, UserOptionRepository userOptionRepository, UserPlaylogRepository userPlaylogRepository, UserActivityRepository userActivityRepository, UserMusicDetailRepository userMusicDetailRepository, UserCharacterRepository userCharacterRepository, UserCardRepository userCardRepository, UserDeckRepository userDeckRepository, UserStoryRepository userStoryRepository, UserChapterRepository userChapterRepository, UserItemRepository userItemRepository, UserMusicItemRepository userMusicItemRepository, UserLoginBonusRepository userLoginBonusRepository, UserEventPointRepository userEventPointRepository, UserMissionPointRepository userMissionPointRepository, UserTrainingRoomRepository userTrainingRoomRepository, UserGeneralDataRepository userGeneralDataRepository, UserBossRepository userBossRepository, UserScenarioRepository userScenarioRepository, UserTechCountRepository userTechCountRepository, UserTradeItemRepository userTradeItemRepository, UserEventMusicRepository userEventMusicRepository, UserTechEventRepository userTechEventRepository, UserKopRepository userKopRepository, UserMemoryChapterRepository userMemoryChapterRepository) { this.mapper = mapper; this.cardService = cardService; this.userDataRepository = userDataRepository; @@ -73,6 +74,7 @@ public class UpsertUserAllHandler implements BaseHandler { this.userDeckRepository = userDeckRepository; this.userStoryRepository = userStoryRepository; this.userChapterRepository = userChapterRepository; + this.userMemoryChapterRepository = userMemoryChapterRepository; this.userItemRepository = userItemRepository; this.userMusicItemRepository = userMusicItemRepository; this.userLoginBonusRepository = userLoginBonusRepository; @@ -325,6 +327,25 @@ public class UpsertUserAllHandler implements BaseHandler { userChapterRepository.saveAll(newUserChapterList); + // UserMemoryChapterList + List userMemoryChapterList = upsertUserAll.getUserMemoryChapterList(); + + if (userMemoryChapterList != null) { + List newUserMemoryChapterList = new ArrayList<>(); + + for (UserMemoryChapter newUserMemoryChapter : userMemoryChapterList) { + int chapterId = newUserMemoryChapter.getChapterId(); + + Optional chapterOptional = userMemoryChapterRepository.findByUserAndChapterId(newUserData, chapterId); + UserMemoryChapter userChapter = chapterOptional.orElseGet(() -> new UserMemoryChapter(newUserData)); + + newUserMemoryChapter.setId(userChapter.getId()); + newUserMemoryChapter.setUser(newUserData); + newUserMemoryChapterList.add(newUserMemoryChapter); + } + userMemoryChapterRepository.saveAll(newUserMemoryChapterList); + } + // UserItemList List userItemList = upsertUserAll.getUserItemList(); List newUserItemList = new ArrayList<>();