From 8b8e6cb4223a170b3760d8e7b674644aec427c31 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=82=A5=E5=AE=85=E8=99=BE=E5=93=A5?= <42127557+FeiZhaixiage@users.noreply.github.com> Date: Tue, 5 Dec 2023 06:24:46 +0800 Subject: [PATCH] Update ApiMaimai2PlayerDataController.java Add API to save options settings. --- .../game/maimai2/ApiMaimai2PlayerDataController.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/main/java/icu/samnyan/aqua/api/controller/sega/game/maimai2/ApiMaimai2PlayerDataController.java b/src/main/java/icu/samnyan/aqua/api/controller/sega/game/maimai2/ApiMaimai2PlayerDataController.java index b4ab4bec..5e90f4fc 100644 --- a/src/main/java/icu/samnyan/aqua/api/controller/sega/game/maimai2/ApiMaimai2PlayerDataController.java +++ b/src/main/java/icu/samnyan/aqua/api/controller/sega/game/maimai2/ApiMaimai2PlayerDataController.java @@ -207,6 +207,17 @@ public class ApiMaimai2PlayerDataController { return userOptionRepository.findByUser_Card_ExtId(aimeId).orElseThrow(); } + @PostMapping("options") + public ResponseEntity updateOptions(@RequestBody Map request) { + UserDetail profile = userDataRepository.findByCard_ExtId(((Number) request.get("aimeId")).longValue()).orElseThrow(); + ObjectMapper objectMapper = new ObjectMapper(); + UserOption userOption = objectMapper.convertValue(request.get("options"), UserOption.class); + userOption.setUser(profile); + userOptionRepository.deleteByUser(profile); + userOptionRepository.flush(); + return ResponseEntity.ok(userOptionRepository.save(userOption)); + } + @GetMapping("general") public ResponseEntity getGeneralData(@RequestParam long aimeId, @RequestParam String key) { Optional userGeneralDataOptional = userGeneralDataRepository.findByUser_Card_ExtIdAndPropertyKey(aimeId, key);