[O] Ongeki: Transform user list endpoints

pull/134/head
Azalea 2025-03-26 22:19:49 -04:00
parent 654cda736d
commit 95286bae1c
11 changed files with 16 additions and 505 deletions

View File

@ -10,6 +10,7 @@ import java.time.format.DateTimeFormatter
fun OngekiController.initUser() {
"GetUserData" { mapOf("userId" to uid, "userData" to db.data.findByCard_ExtId(uid)()) }
"GetUserOption" { mapOf("userId" to uid, "userOption" to db.option.findSingleByUser_Card_ExtId(uid)()) }
"GetUserEventMap" { mapOf("userId" to uid, "userEventMap" to db.eventMap.findSingleByUser_Card_ExtId(uid)()) }
@ -25,6 +26,19 @@ fun OngekiController.initUser() {
"GetUserLoginBonus".unpaged { db.loginBonus.findByUser_Card_ExtId(uid) }
"GetUserMissionPoint".unpaged { db.missionPoint.findByUser_Card_ExtId(uid) }
"GetUserMusicItem".unpaged { db.musicItem.findByUser_Card_ExtId(uid) }
"GetUserRival".unpaged { db.rivalData.findByUser_Card_ExtId(uid) }
"GetUserScenario".unpaged { db.scenario.findByUser_Card_ExtId(uid) }
"GetUserSkin".unpaged { db.skin.findByUser_Card_ExtId(uid) }
"GetUserStory".unpaged { db.story.findByUser_Card_ExtId(uid) }
"GetUserTechCount".unpaged { db.techCount.findByUser_Card_ExtId(uid) }
"GetUserTrainingRoomByKey".unpaged("userTrainingRoomList") { db.trainingRoom.findByUser_Card_ExtId(uid) }
"GetUserTradeItem".unpaged {
val start = parsing { data["startChapterId"]!!.int }
val end = parsing { data["endChapterId"]!!.int }
db.tradeItem.findByUser_Card_ExtIdAndChapterIdGreaterThanEqualAndChapterIdLessThanEqual(uid, start, end)
}
val dtPattern = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.0")
@ -59,4 +73,6 @@ fun OngekiController.initUser() {
}
"GetUserBpBase".unpaged { empty }
"GetUserRatinglog".unpaged { empty }
"GetUserRegion".unpaged { empty }
}

View File

@ -21,26 +21,12 @@ public class OngekiController {
private final GetUserItemHandler getUserItemHandler;
private final GetUserMusicHandler getUserMusicHandler;
private final GetUserPreviewHandler getUserPreviewHandler;
private final GetUserRatinglogListHandler getUserRatinglogListHandler;
private final GetUserRecentRatingHandler getUserRecentRatingHandler;
private final GetUserRegionHandler getUserRegionHandler;
private final GetUserRivalHandler getUserRivalHandler;
private final GetUserRivalMusicHandler getUserRivalMusicHandler;
private final GetUserRivalDataHandler getUserRivalDataHandler;
private final GetUserScenarioHandler getUserScenarioHandler;
private final GetUserSkinHandler getUserSkinHandler;
private final GetUserStoryHandler getUserStoryHandler;
private final GetUserTechCountHandler getUserTechCountHandler;
private final GetUserTradeItemHandler getUserTradeItemHandler;
private final GetUserTrainingRoomByKeyHandler getUserTrainingRoomByKeyHandler;
private final GetUserKopHandler getUserKopHandler;
private final UpsertUserAllHandler upsertUserAllHandler;
@PostMapping("GetUserTradeItemApi")
public String getUserTradeItem(@ModelAttribute Map<String, Object> request) throws JsonProcessingException {
return getUserTradeItemHandler.handle(request);
}
@PostMapping("GetUserItemApi")
public String getUserItem(@ModelAttribute Map<String, Object> request) throws JsonProcessingException {
return getUserItemHandler.handle(request);
@ -56,26 +42,11 @@ public class OngekiController {
return getUserPreviewHandler.handle(request);
}
@PostMapping("GetUserRatinglogApi")
public String getUserRatinglog(@ModelAttribute Map<String, Object> request) throws JsonProcessingException {
return getUserRatinglogListHandler.handle(request);
}
@PostMapping("GetUserRecentRatingApi")
public String getUserRecentRating(@ModelAttribute Map<String, Object> request) throws JsonProcessingException {
return getUserRecentRatingHandler.handle(request);
}
@PostMapping("GetUserRegionApi")
public String getUserRegion(@ModelAttribute Map<String, Object> request) throws JsonProcessingException {
return getUserRegionHandler.handle(request);
}
@PostMapping("GetUserRivalApi")
public String getUserRival(@ModelAttribute Map<String, Object> request) throws JsonProcessingException {
return getUserRivalHandler.handle(request);
}
@PostMapping("GetUserRivalDataApi")
public String getUserRivalData(@ModelAttribute Map<String, Object> request) throws JsonProcessingException {
return getUserRivalDataHandler.handle(request);
@ -86,31 +57,6 @@ public class OngekiController {
return getUserRivalMusicHandler.handle(request);
}
@PostMapping("GetUserScenarioApi")
public String getUserScenario(@ModelAttribute Map<String, Object> request) throws JsonProcessingException {
return getUserScenarioHandler.handle(request);
}
@PostMapping("GetUserSkinApi")
public String getUserSkin(@ModelAttribute Map<String, Object> request) throws JsonProcessingException {
return getUserSkinHandler.handle(request);
}
@PostMapping("GetUserStoryApi")
public String getUserStory(@ModelAttribute Map<String, Object> request) throws JsonProcessingException {
return getUserStoryHandler.handle(request);
}
@PostMapping("GetUserTechCountApi")
public String getUserTechCount(@ModelAttribute Map<String, Object> request) throws JsonProcessingException {
return getUserTechCountHandler.handle(request);
}
@PostMapping("GetUserTrainingRoomByKeyApi")
public String getUserTrainingRoomByKey(@ModelAttribute Map<String, Object> request) throws JsonProcessingException {
return getUserTrainingRoomByKeyHandler.handle(request);
}
@PostMapping("GetUserKopApi")
public String getUserKop(@ModelAttribute Map<String, Object> request) throws JsonProcessingException {
return getUserKopHandler.handle(request);

View File

@ -1,45 +0,0 @@
package icu.samnyan.aqua.sega.ongeki.handler.impl;
import com.fasterxml.jackson.core.JsonProcessingException;
import icu.samnyan.aqua.sega.general.BaseHandler;
import icu.samnyan.aqua.sega.util.jackson.BasicMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
/**
* @author samnyan (privateamusement@protonmail.com)
*/
@Component("OngekiGetUserRatinglogHandler")
public class GetUserRatinglogListHandler implements BaseHandler {
private static final Logger logger = LoggerFactory.getLogger(GetUserRatinglogListHandler.class);
private final BasicMapper mapper;
@Autowired
public GetUserRatinglogListHandler(BasicMapper mapper) {
this.mapper = mapper;
}
@Override
public String handle(Map<String, ?> request) throws JsonProcessingException {
long userId = ((Number) request.get("userId")).longValue();
Map<String, Object> resultMap = new LinkedHashMap<>();
resultMap.put("userId", userId);
resultMap.put("length", 0);
resultMap.put("userRatinglogList", new List[]{});
String json = mapper.write(resultMap);
logger.info("Response: " + json);
return json;
}
}

View File

@ -1,46 +0,0 @@
package icu.samnyan.aqua.sega.ongeki.handler.impl;
import com.fasterxml.jackson.core.JsonProcessingException;
import icu.samnyan.aqua.sega.general.BaseHandler;
import icu.samnyan.aqua.sega.util.jackson.BasicMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
/**
* The game doesn't send this to save
* @author samnyan (privateamusement@protonmail.com)
*/
@Component("OngekiGetUserRegionHandler")
public class GetUserRegionHandler implements BaseHandler {
private static final Logger logger = LoggerFactory.getLogger(GetUserRegionHandler.class);
private final BasicMapper mapper;
@Autowired
public GetUserRegionHandler(BasicMapper mapper) {
this.mapper = mapper;
}
@Override
public String handle(Map<String, ?> request) throws JsonProcessingException {
long userId = ((Number) request.get("userId")).longValue();
Map<String, Object> resultMap = new LinkedHashMap<>();
resultMap.put("userId", userId);
resultMap.put("length", 0);
resultMap.put("userRegionList", new List[]{});
String json = mapper.write(resultMap);
logger.info("Response: " + json);
return json;
}
}

View File

@ -1,47 +0,0 @@
package icu.samnyan.aqua.sega.ongeki.handler.impl;
import com.fasterxml.jackson.core.JsonProcessingException;
import icu.samnyan.aqua.sega.ongeki.OgkUserRivalDataRepo;
import icu.samnyan.aqua.sega.general.BaseHandler;
import icu.samnyan.aqua.sega.util.jackson.BasicMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.LinkedHashMap;
import java.util.Map;
/**
* @author GEEKiDoS (geek_ds@foxmail.com)
*/
@Component("OngekiGetUserRivalHandler")
public class GetUserRivalHandler implements BaseHandler {
private static final Logger logger = LoggerFactory.getLogger(GetUserRivalHandler.class);
private final BasicMapper mapper;
private final OgkUserRivalDataRepo userRivalDataRepository;
@Autowired
public GetUserRivalHandler(BasicMapper mapper, OgkUserRivalDataRepo userRivalDataRepository) {
this.mapper = mapper;
this.userRivalDataRepository = userRivalDataRepository;
}
@Override
public String handle(Map<String, ?> request) throws JsonProcessingException {
var userRivalId = ((Number) request.get("userId")).longValue();
Map<String, Object> resultMap = new LinkedHashMap<>();
resultMap.put("userId", userRivalId);
var result = userRivalDataRepository.findByUser_Card_ExtId(userRivalId);//.stream().map(x->x.getUser().getCard().getExtId()).toArray();
resultMap.put("length", result.size());
resultMap.put("userRivalList", result);
String json = mapper.write(resultMap);
logger.info("Response: " + json);
return json;
}
}

View File

@ -1,52 +0,0 @@
package icu.samnyan.aqua.sega.ongeki.handler.impl;
import com.fasterxml.jackson.core.JsonProcessingException;
import icu.samnyan.aqua.sega.ongeki.OgkUserScenarioRepo;
import icu.samnyan.aqua.sega.general.BaseHandler;
import icu.samnyan.aqua.sega.ongeki.model.UserScenario;
import icu.samnyan.aqua.sega.util.jackson.BasicMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
/**
* @author samnyan (privateamusement@protonmail.com)
*/
@Component("OngekiGetUserScenarioHandler")
public class GetUserScenarioHandler implements BaseHandler {
private static final Logger logger = LoggerFactory.getLogger(GetUserScenarioHandler.class);
private final BasicMapper mapper;
private final OgkUserScenarioRepo userScenarioRepository;
@Autowired
public GetUserScenarioHandler(BasicMapper mapper, OgkUserScenarioRepo userScenarioRepository) {
this.mapper = mapper;
this.userScenarioRepository = userScenarioRepository;
}
@Override
public String handle(Map<String, ?> request) throws JsonProcessingException {
long userId = ((Number) request.get("userId")).longValue();
List<UserScenario> userScenarioList = userScenarioRepository.findByUser_Card_ExtId(userId);
Map<String, Object> resultMap = new LinkedHashMap<>();
resultMap.put("userId", userId);
resultMap.put("length", userScenarioList.size());
resultMap.put("userScenarioList", userScenarioList);
String json = mapper.write(resultMap);
logger.info("Response: " + json);
return json;
}
}

View File

@ -1,51 +0,0 @@
package icu.samnyan.aqua.sega.ongeki.handler.impl;
import com.fasterxml.jackson.core.JsonProcessingException;
import icu.samnyan.aqua.sega.general.BaseHandler;
import icu.samnyan.aqua.sega.ongeki.OgkUserSkinRepo;
import icu.samnyan.aqua.sega.ongeki.model.UserSkin;
import icu.samnyan.aqua.sega.util.jackson.BasicMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
/**
* @author samnyan (privateamusement@protonmail.com)
*/
@Component("OngekiGetUserSkinHandler")
public class GetUserSkinHandler implements BaseHandler {
private static final Logger logger = LoggerFactory.getLogger(GetUserSkinHandler.class);
private final BasicMapper mapper;
private final OgkUserSkinRepo userSkinRepository;
@Autowired
public GetUserSkinHandler(BasicMapper mapper, OgkUserSkinRepo userSkinRepository) {
this.mapper = mapper;
this.userSkinRepository = userSkinRepository;
}
@Override
public String handle(Map<String, ?> request) throws JsonProcessingException {
long userId = ((Number) request.get("userId")).longValue();
Map<String, Object> resultMap = new LinkedHashMap<>();
resultMap.put("userId", userId);
List<UserSkin> userSkinList = userSkinRepository.findByUser_Card_ExtId(userId);
resultMap.put("length", userSkinList.size());
resultMap.put("userSkinList", userSkinList);
String json = mapper.write(resultMap);
logger.info("Response: " + json);
return json;
}
}

View File

@ -1,52 +0,0 @@
package icu.samnyan.aqua.sega.ongeki.handler.impl;
import com.fasterxml.jackson.core.JsonProcessingException;
import icu.samnyan.aqua.sega.ongeki.OgkUserStoryRepo;
import icu.samnyan.aqua.sega.general.BaseHandler;
import icu.samnyan.aqua.sega.ongeki.model.UserStory;
import icu.samnyan.aqua.sega.util.jackson.BasicMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
/**
* @author samnyan (privateamusement@protonmail.com)
*/
@Component("OngekiGetUserStoryHandler")
public class GetUserStoryHandler implements BaseHandler {
private static final Logger logger = LoggerFactory.getLogger(GetUserStoryHandler.class);
private final BasicMapper mapper;
private final OgkUserStoryRepo userStoryRepository;
@Autowired
public GetUserStoryHandler(BasicMapper mapper, OgkUserStoryRepo userStoryRepository) {
this.mapper = mapper;
this.userStoryRepository = userStoryRepository;
}
@Override
public String handle(Map<String, ?> request) throws JsonProcessingException {
long userId = ((Number) request.get("userId")).longValue();
List<UserStory> userStoryList = userStoryRepository.findByUser_Card_ExtId(userId);
Map<String, Object> resultMap = new LinkedHashMap<>();
resultMap.put("userId", userId);
resultMap.put("length", userStoryList.size());
resultMap.put("userStoryList", userStoryList);
String json = mapper.write(resultMap);
logger.info("Response: " + json);
return json;
}
}

View File

@ -1,52 +0,0 @@
package icu.samnyan.aqua.sega.ongeki.handler.impl;
import com.fasterxml.jackson.core.JsonProcessingException;
import icu.samnyan.aqua.sega.ongeki.OgkUserTechCountRepo;
import icu.samnyan.aqua.sega.general.BaseHandler;
import icu.samnyan.aqua.sega.ongeki.model.UserTechCount;
import icu.samnyan.aqua.sega.util.jackson.BasicMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
/**
* @author samnyan (privateamusement@protonmail.com)
*/
@Component("OngekiGetTechCountHandler")
public class GetUserTechCountHandler implements BaseHandler {
private static final Logger logger = LoggerFactory.getLogger(GetUserTechCountHandler.class);
private final BasicMapper mapper;
private final OgkUserTechCountRepo userTechCountRepository;
@Autowired
public GetUserTechCountHandler(BasicMapper mapper, OgkUserTechCountRepo userTechCountRepository) {
this.mapper = mapper;
this.userTechCountRepository = userTechCountRepository;
}
@Override
public String handle(Map<String, ?> request) throws JsonProcessingException {
long userId = ((Number) request.get("userId")).longValue();
List<UserTechCount> userTechCountList = userTechCountRepository.findByUser_Card_ExtId(userId);
Map<String, Object> resultMap = new LinkedHashMap<>();
resultMap.put("userId", userId);
resultMap.put("length", userTechCountList.size());
resultMap.put("userTechCountList", userTechCountList);
String json = mapper.write(resultMap);
logger.info("Response: " + json);
return json;
}
}

View File

@ -1,54 +0,0 @@
package icu.samnyan.aqua.sega.ongeki.handler.impl;
import com.fasterxml.jackson.core.JsonProcessingException;
import icu.samnyan.aqua.sega.ongeki.OgkUserTradeItemRepo;
import icu.samnyan.aqua.sega.general.BaseHandler;
import icu.samnyan.aqua.sega.ongeki.model.UserTradeItem;
import icu.samnyan.aqua.sega.util.jackson.BasicMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
/**
* @author samnyan (privateamusement@protonmail.com)
*/
@Component("OngekiGetUserTradeItemHandler")
public class GetUserTradeItemHandler implements BaseHandler {
private static final Logger logger = LoggerFactory.getLogger(GetUserTradeItemHandler.class);
private final BasicMapper mapper;
private final OgkUserTradeItemRepo userTradeItemRepository;
@Autowired
public GetUserTradeItemHandler(BasicMapper mapper, OgkUserTradeItemRepo userTradeItemRepository) {
this.mapper = mapper;
this.userTradeItemRepository = userTradeItemRepository;
}
@Override
public String handle(Map<String, ?> request) throws JsonProcessingException {
long userId = ((Number) request.get("userId")).longValue();
int startChapterId = ((Number) request.get("startChapterId")).intValue();
int endChapterId = ((Number) request.get("endChapterId")).intValue();
List<UserTradeItem> tradeItemList = userTradeItemRepository.findByUser_Card_ExtIdAndChapterIdGreaterThanEqualAndChapterIdLessThanEqual(userId, startChapterId, endChapterId);
Map<String, Object> resultMap = new LinkedHashMap<>();
resultMap.put("userId", userId);
resultMap.put("length", tradeItemList.size());
resultMap.put("userTradeItemList", tradeItemList);
String json = mapper.write(resultMap);
logger.info("Response: " + json);
return json;
}
}

View File

@ -1,52 +0,0 @@
package icu.samnyan.aqua.sega.ongeki.handler.impl;
import com.fasterxml.jackson.core.JsonProcessingException;
import icu.samnyan.aqua.sega.ongeki.OgkUserTrainingRoomRepo;
import icu.samnyan.aqua.sega.general.BaseHandler;
import icu.samnyan.aqua.sega.ongeki.model.UserTrainingRoom;
import icu.samnyan.aqua.sega.util.jackson.BasicMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
/**
* @author samnyan (privateamusement@protonmail.com)
*/
@Component("OngekiGetUserTrainingRoomByKeyHandler")
public class GetUserTrainingRoomByKeyHandler implements BaseHandler {
private static final Logger logger = LoggerFactory.getLogger(GetUserTrainingRoomByKeyHandler.class);
private final BasicMapper mapper;
private final OgkUserTrainingRoomRepo userTrainingRoomRepository;
@Autowired
public GetUserTrainingRoomByKeyHandler(BasicMapper mapper, OgkUserTrainingRoomRepo userTrainingRoomRepository) {
this.mapper = mapper;
this.userTrainingRoomRepository = userTrainingRoomRepository;
}
@Override
public String handle(Map<String, ?> request) throws JsonProcessingException {
long userId = ((Number) request.get("userId")).longValue();
List<UserTrainingRoom> trainingRoomList = userTrainingRoomRepository.findByUser_Card_ExtId(userId);
Map<String, Object> resultMap = new LinkedHashMap<>();
resultMap.put("userId", userId);
resultMap.put("length", trainingRoomList.size());
resultMap.put("userTrainingRoomList", trainingRoomList);
String json = mapper.write(resultMap);
logger.info("Response: " + json);
return json;
}
}