mirror of
https://github.com/MewoLab/AquaDX.git
synced 2026-02-05 03:07:27 +08:00
[O] Refactor chusan repos
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
package icu.samnyan.aqua.api.controller.sega.game.chuni.v2;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.dao.gamedata.*;
|
||||
import icu.samnyan.aqua.sega.chusan.model.*;
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.Character;
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.*;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
|
||||
@@ -7,6 +7,7 @@ import icu.samnyan.aqua.net.utils.AquaNetProps
|
||||
import icu.samnyan.aqua.net.games.GenericUserDataRepo
|
||||
import icu.samnyan.aqua.net.games.IGenericUserData
|
||||
import icu.samnyan.aqua.net.utils.SUCCESS
|
||||
import icu.samnyan.aqua.sega.chusan.model.UserDataRepository
|
||||
import icu.samnyan.aqua.sega.general.dao.CardRepository
|
||||
import icu.samnyan.aqua.sega.general.model.Card
|
||||
import icu.samnyan.aqua.sega.general.service.CardService
|
||||
@@ -144,7 +145,7 @@ suspend fun getSummaryFor(repo: GenericUserDataRepo<*>, card: Card): Map<Str, An
|
||||
@Service
|
||||
class CardGameService(
|
||||
val maimai2: Mai2UserDataRepo,
|
||||
val chusan: icu.samnyan.aqua.sega.chusan.dao.userdata.UserDataRepository,
|
||||
val chusan: UserDataRepository,
|
||||
val ongeki: icu.samnyan.aqua.sega.ongeki.dao.userdata.UserDataRepository,
|
||||
val diva: icu.samnyan.aqua.sega.diva.dao.userdata.PlayerProfileRepository,
|
||||
) {
|
||||
|
||||
@@ -5,9 +5,10 @@ import ext.RP
|
||||
import ext.Str
|
||||
import icu.samnyan.aqua.net.db.AquaUserServices
|
||||
import icu.samnyan.aqua.net.utils.*
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.UserDataRepository
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.UserGeneralDataRepository
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.UserPlaylogRepository
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.*
|
||||
import icu.samnyan.aqua.sega.chusan.model.UserDataRepository
|
||||
import icu.samnyan.aqua.sega.chusan.model.UserGeneralDataRepository
|
||||
import icu.samnyan.aqua.sega.chusan.model.UserPlaylogRepository
|
||||
import org.springframework.web.bind.annotation.RestController
|
||||
|
||||
@RestController
|
||||
|
||||
@@ -3,8 +3,12 @@ package icu.samnyan.aqua.net.games
|
||||
import ext.*
|
||||
import icu.samnyan.aqua.net.db.AquaUserServices
|
||||
import icu.samnyan.aqua.net.utils.*
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserPlaylog
|
||||
import icu.samnyan.aqua.sega.general.model.Card
|
||||
import kotlinx.serialization.Serializable
|
||||
import org.springframework.data.domain.Page
|
||||
import org.springframework.data.domain.Pageable
|
||||
import org.springframework.data.jpa.repository.JpaRepository
|
||||
import org.springframework.data.jpa.repository.Query
|
||||
import org.springframework.data.repository.NoRepositoryBean
|
||||
@@ -95,7 +99,7 @@ interface IGenericGamePlaylog {
|
||||
@NoRepositoryBean
|
||||
interface GenericUserDataRepo<T : IGenericUserData> : JpaRepository<T, Long> {
|
||||
fun findByCard(card: Card): T?
|
||||
|
||||
fun findByCard_ExtId(extId: Long): Optional<T>
|
||||
@Query("select count(*) from #{#entityName} where playerRating > :rating")
|
||||
fun getRanking(rating: Int): Long
|
||||
}
|
||||
@@ -103,6 +107,7 @@ interface GenericUserDataRepo<T : IGenericUserData> : JpaRepository<T, Long> {
|
||||
@NoRepositoryBean
|
||||
interface GenericPlaylogRepo<T: IGenericGamePlaylog> : JpaRepository<T, Long> {
|
||||
fun findByUserCardExtId(extId: Long): List<T>
|
||||
fun findByUserCardExtId(extId: Long, page: Pageable): Page<T>
|
||||
}
|
||||
|
||||
abstract class GameApiController(name: String) {
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.gamedata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.AvatarAcc;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanGameAvatarAccRepository")
|
||||
public interface GameAvatarAccRepository extends JpaRepository<AvatarAcc, Long> {
|
||||
|
||||
Optional<AvatarAcc> findById(int trophyId);
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.gamedata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.Character;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanGameCharacterRepository")
|
||||
public interface GameCharacterRepository extends JpaRepository<Character, Long> {
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.gamedata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.GameCharge;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanGameChargeRepository")
|
||||
public interface GameChargeRepository extends JpaRepository<GameCharge, Long> {
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.gamedata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.GameEvent;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanGameEventRepository")
|
||||
public interface GameEventRepository extends JpaRepository<GameEvent, Integer> {
|
||||
|
||||
List<GameEvent> findByEnable(boolean enable);
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.gamedata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.Frame;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanGameFrameRepository")
|
||||
public interface GameFrameRepository extends JpaRepository<Frame, Long> {
|
||||
|
||||
Optional<Frame> findById(int trophyId);
|
||||
}
|
||||
@@ -1,17 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.gamedata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.GameGachaCard;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanGameGachaCardRepository")
|
||||
public interface GameGachaCardRepository extends JpaRepository<GameGachaCard, Long> {
|
||||
|
||||
List<GameGachaCard> findAllByGachaId(int gacha_id);
|
||||
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.gamedata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.GameGacha;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanGameGachaRepository")
|
||||
public interface GameGachaRepository extends JpaRepository<GameGacha, Long> {
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.gamedata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.GameLoginBonusPreset;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.data.jpa.repository.Query;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface GameLoginBonusPresetsRepository extends JpaRepository<GameLoginBonusPreset, Integer> {
|
||||
@Query(value = "select * from chusan_game_login_bonus_preset where version = ?1 and is_enabled = ?2", nativeQuery = true)
|
||||
List<GameLoginBonusPreset> findLoginBonusPresets(int version, int isEnabled);
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.gamedata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.GameLoginBonus;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.data.jpa.repository.Query;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
public interface GameLoginBonusRepository extends JpaRepository<GameLoginBonus, Integer> {
|
||||
@Query(value = "select * from chusan_game_login_bonus where version = ?1 and preset_id = ?2 order by need_login_day_count desc", nativeQuery = true)
|
||||
List<GameLoginBonus> findGameLoginBonus(int version, int presetId);
|
||||
|
||||
@Query(value = "select * from chusan_game_login_bonus where version = ?1 and preset_id = ?2 and need_login_day_count = ?3 limit 1", nativeQuery = true)
|
||||
Optional<GameLoginBonus> findByRequiredDays(int version, int presetId, int requiredDays);
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.gamedata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.MapIcon;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanGameMapIconRepository")
|
||||
public interface GameMapIconRepository extends JpaRepository<MapIcon, Long> {
|
||||
|
||||
Optional<MapIcon> findById(int mapIconId);
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.gamedata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.Music;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanGameMusicRepository")
|
||||
public interface GameMusicRepository extends JpaRepository<Music, Long> {
|
||||
|
||||
Optional<Music> findByMusicId(int musicId);
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.gamedata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.NamePlate;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanGameNamePlateRepository")
|
||||
public interface GameNamePlateRepository extends JpaRepository<NamePlate, Long> {
|
||||
|
||||
Optional<NamePlate> findById(int trophyId);
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.gamedata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.SystemVoice;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanGameSystemVoiceRepository")
|
||||
public interface GameSystemVoiceRepository extends JpaRepository<SystemVoice, Long> {
|
||||
|
||||
Optional<SystemVoice> findById(int trophyId);
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.gamedata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.Trophy;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanGameTrophyRepository")
|
||||
public interface GameTrophyRepository extends JpaRepository<Trophy, Long> {
|
||||
|
||||
Optional<Trophy> findById(int trophyId);
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.userdata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserLoginBonus;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.data.jpa.repository.Query;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
public interface ChusanUserLoginBonusRepository extends JpaRepository<UserLoginBonus, Integer>{
|
||||
@Query(value = "select * from chusan_user_login_bonus where user = ?1 and version = ?2 and is_finished = ?3 order by last_update_date desc", nativeQuery = true)
|
||||
List<UserLoginBonus> findAllLoginBonus(int user_id, int version, int is_finished);
|
||||
|
||||
@Query(value = "select * from chusan_user_login_bonus where user = ?1 and version = ?2 and preset_id = ?3 limit 1", nativeQuery = true)
|
||||
Optional<UserLoginBonus> findLoginBonus(int user_id, int version, int preset_id);
|
||||
}
|
||||
@@ -1,22 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.userdata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserActivity;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanUserActivityRepository")
|
||||
public interface UserActivityRepository extends JpaRepository<UserActivity, Long> {
|
||||
|
||||
Optional<UserActivity> findTopByUserAndActivityIdAndKindOrderByIdDesc(UserData user, int activityId, int kind);
|
||||
|
||||
List<UserActivity> findAllByUser_Card_ExtIdAndKindOrderBySortNumberDesc(Long extId, int kind);
|
||||
|
||||
List<UserActivity> findAllByUser_Card_ExtId(Long extId);
|
||||
}
|
||||
@@ -1,20 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.userdata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserCardPrintState;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanUserCardPrintStateRepository")
|
||||
public interface UserCardPrintStateRepository extends JpaRepository<UserCardPrintState, Long> {
|
||||
List<UserCardPrintState> findByUser_Card_ExtId(Long extId);
|
||||
|
||||
List<UserCardPrintState> findByUser_Card_ExtIdAndHasCompleted(Long extId, boolean hasCompleted);
|
||||
|
||||
List<UserCardPrintState> findByUserAndGachaIdAndHasCompleted(UserData userData, int gachaId, boolean hasCompleted);
|
||||
}
|
||||
@@ -1,27 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.userdata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserCharacter;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanUserCharacterRepository")
|
||||
public interface UserCharacterRepository extends JpaRepository<UserCharacter, Long> {
|
||||
|
||||
Page<UserCharacter> findByUser_Card_ExtId(Long extId, Pageable pageable);
|
||||
|
||||
List<UserCharacter> findByUser_Card_ExtId(Long extId);
|
||||
|
||||
Optional<UserCharacter> findTopByUserAndCharacterIdOrderByIdDesc(UserData user, int characterId);
|
||||
|
||||
Optional<UserCharacter> findByUser_Card_ExtIdAndCharacterId(Long extId, int characterId);
|
||||
|
||||
}
|
||||
@@ -1,19 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.userdata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserCharge;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanUserChargeRepository")
|
||||
public interface UserChargeRepository extends JpaRepository<UserCharge, Long> {
|
||||
List<UserCharge> findByUser_Card_ExtId(Long extId);
|
||||
|
||||
Optional<UserCharge> findByUserAndChargeId(UserData extId, int chargeId);
|
||||
}
|
||||
@@ -1,23 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.userdata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserCourse;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanUserCourseRepository")
|
||||
public interface UserCourseRepository extends JpaRepository<UserCourse, Long> {
|
||||
Optional<UserCourse> findTopByUserAndCourseIdOrderByIdDesc(UserData user, int courseId);
|
||||
|
||||
Page<UserCourse> findByUser_Card_ExtId(Long extId, Pageable page);
|
||||
|
||||
List<UserCourse> findByUser_Card_ExtId(Long extId);
|
||||
}
|
||||
@@ -1,17 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.userdata;
|
||||
|
||||
import icu.samnyan.aqua.net.games.GenericUserDataRepo;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import org.springframework.data.jpa.repository.Query;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanUserDataRepository")
|
||||
public interface UserDataRepository extends GenericUserDataRepo<UserData> {
|
||||
|
||||
Optional<UserData> findByCard_ExtId(Long extId);
|
||||
}
|
||||
@@ -1,20 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.userdata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserDuel;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanUserDuelRepository")
|
||||
public interface UserDuelRepository extends JpaRepository<UserDuel, Long> {
|
||||
|
||||
Optional<UserDuel> findTopByUserAndDuelIdOrderByIdDesc(UserData user, int duelId);
|
||||
|
||||
List<UserDuel> findByUser_Card_ExtId(Long extId);
|
||||
}
|
||||
@@ -1,19 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.userdata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserGacha;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanUserGachaRepository")
|
||||
public interface UserGachaRepository extends JpaRepository<UserGacha, Long> {
|
||||
List<UserGacha> findByUser_Card_ExtId(Long extId);
|
||||
|
||||
Optional<UserGacha> findByUserAndGachaId(UserData extId, int gachaId);
|
||||
}
|
||||
@@ -1,19 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.userdata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserGameOption;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanUserGameOptionRepository")
|
||||
public interface UserGameOptionRepository extends JpaRepository<UserGameOption, Long> {
|
||||
|
||||
Optional<UserGameOption> findByUser(UserData user);
|
||||
|
||||
Optional<UserGameOption> findByUser_Card_ExtId(Long extId);
|
||||
}
|
||||
@@ -1,19 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.userdata
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserGeneralData
|
||||
import org.springframework.data.jpa.repository.JpaRepository
|
||||
import org.springframework.stereotype.Repository
|
||||
import java.util.*
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanUserGeneralDataRepository")
|
||||
interface UserGeneralDataRepository : JpaRepository<UserGeneralData, Long> {
|
||||
fun findByUserAndPropertyKey(user: UserData, key: String): Optional<UserGeneralData>
|
||||
|
||||
fun findByUser_Card_ExtIdAndPropertyKey(extId: Long, key: String): Optional<UserGeneralData>
|
||||
|
||||
fun findByUser_Card_ExtId(extId: Long): List<UserGeneralData>
|
||||
}
|
||||
@@ -1,28 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.userdata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserItem;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanUserItemRepository")
|
||||
public interface UserItemRepository extends JpaRepository<UserItem, Long> {
|
||||
|
||||
Optional<UserItem> findTopByUserAndItemIdAndItemKindOrderByIdDesc(UserData user, int itemId, int itemKind);
|
||||
|
||||
Page<UserItem> findAllByUser_Card_ExtIdAndItemKind(Long extId, int itemKind, Pageable pageable);
|
||||
|
||||
List<UserItem> findAllByUser_Card_ExtId(Long extId);
|
||||
|
||||
List<UserItem> findAllByUser_Card_ExtIdAndItemKind(Long extId, int itemKind);
|
||||
|
||||
Page<UserItem> findByUser_Card_ExtId(Long extId, Pageable pageable);
|
||||
}
|
||||
@@ -1,21 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.userdata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserMapArea;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository
|
||||
public interface UserMapAreaRepository extends JpaRepository<UserMapArea, Long> {
|
||||
List<UserMapArea> findAllByUser(UserData user);
|
||||
|
||||
List<UserMapArea> findAllByUser_Card_ExtId(Long extId);
|
||||
|
||||
Optional<UserMapArea> findTopByUserAndMapAreaIdOrderByIdDesc(UserData user, int mapAreaId);
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.userdata;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserMusicDetail;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanUserMusicDetailRepository")
|
||||
public interface UserMusicDetailRepository extends JpaRepository<UserMusicDetail, Long> {
|
||||
|
||||
Optional<UserMusicDetail> findTopByUserAndMusicIdAndLevelOrderByIdDesc(UserData user, int musicId, int level);
|
||||
|
||||
List<UserMusicDetail> findByUser_Card_ExtId(Long extId);
|
||||
|
||||
List<UserMusicDetail> findByUser_Card_ExtIdAndMusicId(Long extId, int musicId);
|
||||
|
||||
Page<UserMusicDetail> findByUser_Card_ExtId(Long extId, Pageable page);
|
||||
}
|
||||
@@ -1,21 +0,0 @@
|
||||
package icu.samnyan.aqua.sega.chusan.dao.userdata;
|
||||
|
||||
import icu.samnyan.aqua.net.games.GenericPlaylogRepo;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserPlaylog;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
*/
|
||||
@Repository("ChusanUserPlaylogRepository")
|
||||
public interface UserPlaylogRepository extends GenericPlaylogRepo<UserPlaylog> {
|
||||
List<UserPlaylog> findByUser_Card_ExtIdAndLevelNot(Long extId, int levelNot, Pageable page);
|
||||
|
||||
Page<UserPlaylog> findByUserCardExtId(Long extId, Pageable page);
|
||||
|
||||
List<UserPlaylog> findByUser_Card_ExtIdAndMusicIdAndLevel(Long extId, int musicId, int level);
|
||||
}
|
||||
@@ -1,8 +1,8 @@
|
||||
package icu.samnyan.aqua.sega.chusan.handler.impl;
|
||||
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.UserCardPrintStateRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.UserGachaRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.UserCardPrintStateRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.UserGachaRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.handler.BaseHandler;
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.GameGachaCard;
|
||||
import icu.samnyan.aqua.sega.chusan.model.request.UpsertUserGacha;
|
||||
|
||||
@@ -2,7 +2,7 @@ package icu.samnyan.aqua.sega.chusan.handler.impl;
|
||||
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import com.fasterxml.jackson.core.type.TypeReference;
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.UserCardPrintStateRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.UserCardPrintStateRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.handler.BaseHandler;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserCardPrintState;
|
||||
import icu.samnyan.aqua.sega.util.jackson.BasicMapper;
|
||||
|
||||
@@ -2,7 +2,7 @@ package icu.samnyan.aqua.sega.chusan.handler.impl;
|
||||
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import com.fasterxml.jackson.core.type.TypeReference;
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.UserCardPrintStateRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.UserCardPrintStateRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.handler.BaseHandler;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserCardPrintState;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package icu.samnyan.aqua.sega.chusan.handler.impl;
|
||||
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import icu.samnyan.aqua.sega.chusan.dao.gamedata.GameChargeRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.GameChargeRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.handler.BaseHandler;
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.GameCharge;
|
||||
import icu.samnyan.aqua.sega.util.jackson.StringMapper;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package icu.samnyan.aqua.sega.chusan.handler.impl;
|
||||
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import icu.samnyan.aqua.sega.chusan.dao.gamedata.GameEventRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.GameEventRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.handler.BaseHandler;
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.GameEvent;
|
||||
import icu.samnyan.aqua.sega.util.jackson.StringMapper;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package icu.samnyan.aqua.sega.chusan.handler.impl;
|
||||
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import icu.samnyan.aqua.sega.chusan.dao.gamedata.GameGachaRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.GameGachaRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.handler.BaseHandler;
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.GameGacha;
|
||||
import icu.samnyan.aqua.sega.util.jackson.BasicMapper;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package icu.samnyan.aqua.sega.chusan.handler.impl;
|
||||
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.UserCardPrintStateRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.UserCardPrintStateRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.handler.BaseHandler;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserCardPrintState;
|
||||
import icu.samnyan.aqua.sega.util.jackson.BasicMapper;
|
||||
|
||||
188
src/main/java/icu/samnyan/aqua/sega/chusan/model/Repos.kt
Normal file
188
src/main/java/icu/samnyan/aqua/sega/chusan/model/Repos.kt
Normal file
@@ -0,0 +1,188 @@
|
||||
@file:Suppress("FunctionName")
|
||||
|
||||
package icu.samnyan.aqua.sega.chusan.model
|
||||
|
||||
import icu.samnyan.aqua.net.games.GenericPlaylogRepo
|
||||
import icu.samnyan.aqua.net.games.GenericUserDataRepo
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.*
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.*
|
||||
import org.springframework.data.domain.Page
|
||||
import org.springframework.data.domain.Pageable
|
||||
import org.springframework.data.jpa.repository.JpaRepository
|
||||
import org.springframework.data.jpa.repository.Query
|
||||
import org.springframework.data.repository.NoRepositoryBean
|
||||
import org.springframework.stereotype.Repository
|
||||
import java.util.*
|
||||
|
||||
|
||||
@NoRepositoryBean
|
||||
interface UserLinked<T, ID> : JpaRepository<T, ID> {
|
||||
fun findByUser_Card_ExtId(extId: Long): List<T>
|
||||
fun findSingleByUser_Card_ExtId(extId: Long): Optional<T>
|
||||
fun findByUser_Card_ExtId(extId: Long, pageable: Pageable): Page<T>
|
||||
fun findByUser(user: UserData): List<T>
|
||||
fun findSingleByUser(user: UserData): Optional<T>
|
||||
}
|
||||
|
||||
|
||||
interface ChusanUserLoginBonusRepository : JpaRepository<UserLoginBonus, Int> {
|
||||
@Query(
|
||||
value = "select * from chusan_user_login_bonus where user = ?1 and version = ?2 and is_finished = ?3 order by last_update_date desc",
|
||||
nativeQuery = true
|
||||
)
|
||||
fun findAllLoginBonus(userId: Int, version: Int, isFinished: Int): List<UserLoginBonus>
|
||||
|
||||
@Query(
|
||||
value = "select * from chusan_user_login_bonus where user = ?1 and version = ?2 and preset_id = ?3 limit 1",
|
||||
nativeQuery = true
|
||||
)
|
||||
fun findLoginBonus(userId: Int, version: Int, presetId: Int): Optional<UserLoginBonus>
|
||||
}
|
||||
|
||||
@Repository("ChusanUserActivityRepository")
|
||||
interface UserActivityRepository : UserLinked<UserActivity, Long> {
|
||||
fun findTopByUserAndActivityIdAndKindOrderByIdDesc(user: UserData, activityId: Int, kind: Int): Optional<UserActivity>
|
||||
|
||||
fun findAllByUser_Card_ExtIdAndKindOrderBySortNumberDesc(extId: Long, kind: Int): List<UserActivity>
|
||||
}
|
||||
|
||||
@Repository("ChusanUserCardPrintStateRepository")
|
||||
interface UserCardPrintStateRepository : UserLinked<UserCardPrintState, Long> {
|
||||
fun findByUser_Card_ExtIdAndHasCompleted(extId: Long, hasCompleted: Boolean): List<UserCardPrintState>
|
||||
|
||||
fun findByUserAndGachaIdAndHasCompleted(userData: UserData, gachaId: Int, hasCompleted: Boolean): List<UserCardPrintState>
|
||||
}
|
||||
|
||||
@Repository("ChusanUserCharacterRepository")
|
||||
interface UserCharacterRepository : UserLinked<UserCharacter, Long> {
|
||||
fun findTopByUserAndCharacterIdOrderByIdDesc(user: UserData, characterId: Int): Optional<UserCharacter>
|
||||
}
|
||||
|
||||
@Repository("ChusanUserChargeRepository")
|
||||
interface UserChargeRepository : UserLinked<UserCharge, Long> {
|
||||
fun findByUserAndChargeId(extId: UserData, chargeId: Int): Optional<UserCharge>
|
||||
}
|
||||
|
||||
@Repository("ChusanUserCourseRepository")
|
||||
interface UserCourseRepository : UserLinked<UserCourse, Long> {
|
||||
fun findTopByUserAndCourseIdOrderByIdDesc(user: UserData, courseId: Int): Optional<UserCourse>
|
||||
}
|
||||
|
||||
@Repository("ChusanUserDataRepository")
|
||||
interface UserDataRepository : GenericUserDataRepo<UserData>
|
||||
|
||||
@Repository("ChusanUserDuelRepository")
|
||||
interface UserDuelRepository : UserLinked<UserDuel, Long> {
|
||||
fun findTopByUserAndDuelIdOrderByIdDesc(user: UserData, duelId: Int): Optional<UserDuel>
|
||||
}
|
||||
|
||||
@Repository("ChusanUserGachaRepository")
|
||||
interface UserGachaRepository : UserLinked<UserGacha, Long> {
|
||||
fun findByUserAndGachaId(extId: UserData, gachaId: Int): Optional<UserGacha>
|
||||
}
|
||||
|
||||
@Repository("ChusanUserGameOptionRepository")
|
||||
interface UserGameOptionRepository : UserLinked<UserGameOption, Long>
|
||||
|
||||
@Repository("ChusanUserGeneralDataRepository")
|
||||
interface UserGeneralDataRepository : UserLinked<UserGeneralData, Long> {
|
||||
fun findByUserAndPropertyKey(user: UserData, key: String): Optional<UserGeneralData>
|
||||
|
||||
fun findByUser_Card_ExtIdAndPropertyKey(extId: Long, key: String): Optional<UserGeneralData>
|
||||
}
|
||||
|
||||
@Repository("ChusanUserItemRepository")
|
||||
interface UserItemRepository : UserLinked<UserItem, Long> {
|
||||
fun findTopByUserAndItemIdAndItemKindOrderByIdDesc(
|
||||
user: UserData,
|
||||
itemId: Int,
|
||||
itemKind: Int
|
||||
): Optional<UserItem>
|
||||
|
||||
fun findAllByUser_Card_ExtIdAndItemKind(extId: Long, itemKind: Int, pageable: Pageable): Page<UserItem>
|
||||
|
||||
fun findAllByUser_Card_ExtIdAndItemKind(extId: Long, itemKind: Int): List<UserItem>
|
||||
}
|
||||
|
||||
@Repository
|
||||
interface UserMapAreaRepository : UserLinked<UserMapArea, Long> {
|
||||
fun findTopByUserAndMapAreaIdOrderByIdDesc(user: UserData, mapAreaId: Int): Optional<UserMapArea>
|
||||
}
|
||||
|
||||
@Repository("ChusanUserMusicDetailRepository")
|
||||
interface UserMusicDetailRepository : UserLinked<UserMusicDetail, Long> {
|
||||
fun findTopByUserAndMusicIdAndLevelOrderByIdDesc(user: UserData, musicId: Int, level: Int): Optional<UserMusicDetail>
|
||||
|
||||
fun findByUser_Card_ExtIdAndMusicId(extId: Long, musicId: Int): List<UserMusicDetail>
|
||||
}
|
||||
|
||||
@Repository("ChusanUserPlaylogRepository")
|
||||
interface UserPlaylogRepository : GenericPlaylogRepo<UserPlaylog> {
|
||||
fun findByUser_Card_ExtIdAndLevelNot(extId: Long, levelNot: Int, page: Pageable): List<UserPlaylog>
|
||||
|
||||
fun findByUser_Card_ExtIdAndMusicIdAndLevel(extId: Long, musicId: Int, level: Int): List<UserPlaylog>
|
||||
}
|
||||
|
||||
@Repository("ChusanGameAvatarAccRepository")
|
||||
interface GameAvatarAccRepository : JpaRepository<AvatarAcc, Long>
|
||||
|
||||
@Repository("ChusanGameCharacterRepository")
|
||||
interface GameCharacterRepository : JpaRepository<Character, Long>
|
||||
|
||||
@Repository("ChusanGameChargeRepository")
|
||||
interface GameChargeRepository : JpaRepository<GameCharge, Long>
|
||||
|
||||
@Repository("ChusanGameEventRepository")
|
||||
interface GameEventRepository : JpaRepository<GameEvent, Int> {
|
||||
fun findByEnable(enable: Boolean): List<GameEvent>
|
||||
}
|
||||
|
||||
@Repository("ChusanGameFrameRepository")
|
||||
interface GameFrameRepository : JpaRepository<Frame, Long>
|
||||
|
||||
@Repository("ChusanGameGachaCardRepository")
|
||||
interface GameGachaCardRepository : JpaRepository<GameGachaCard, Long> {
|
||||
fun findAllByGachaId(gachaId: Int): List<GameGachaCard>
|
||||
}
|
||||
|
||||
@Repository("ChusanGameGachaRepository")
|
||||
interface GameGachaRepository : JpaRepository<GameGacha, Long>
|
||||
|
||||
interface GameLoginBonusPresetsRepository : JpaRepository<GameLoginBonusPreset, Int> {
|
||||
@Query(
|
||||
value = "select * from chusan_game_login_bonus_preset where version = ?1 and is_enabled = ?2",
|
||||
nativeQuery = true
|
||||
)
|
||||
fun findLoginBonusPresets(version: Int, isEnabled: Int): List<GameLoginBonusPreset>
|
||||
}
|
||||
|
||||
interface GameLoginBonusRepository : JpaRepository<GameLoginBonus, Int> {
|
||||
@Query(
|
||||
value = "select * from chusan_game_login_bonus where version = ?1 and preset_id = ?2 order by need_login_day_count desc",
|
||||
nativeQuery = true
|
||||
)
|
||||
fun findGameLoginBonus(version: Int, presetId: Int): List<GameLoginBonus>
|
||||
|
||||
@Query(
|
||||
value = "select * from chusan_game_login_bonus where version = ?1 and preset_id = ?2 and need_login_day_count = ?3 limit 1",
|
||||
nativeQuery = true
|
||||
)
|
||||
fun findByRequiredDays(version: Int, presetId: Int, requiredDays: Int): Optional<GameLoginBonus>
|
||||
}
|
||||
|
||||
@Repository("ChusanGameMapIconRepository")
|
||||
interface GameMapIconRepository : JpaRepository<MapIcon, Long>
|
||||
|
||||
@Repository("ChusanGameMusicRepository")
|
||||
interface GameMusicRepository : JpaRepository<Music, Long> {
|
||||
fun findByMusicId(musicId: Int): Optional<Music>
|
||||
}
|
||||
|
||||
@Repository("ChusanGameNamePlateRepository")
|
||||
interface GameNamePlateRepository : JpaRepository<NamePlate, Long>
|
||||
|
||||
@Repository("ChusanGameSystemVoiceRepository")
|
||||
interface GameSystemVoiceRepository : JpaRepository<SystemVoice, Long>
|
||||
|
||||
@Repository("ChusanGameTrophyRepository")
|
||||
interface GameTrophyRepository : JpaRepository<Trophy, Long>
|
||||
@@ -18,7 +18,7 @@ public class UserLoginBonus implements Serializable {
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
@JsonIgnore
|
||||
private int id;
|
||||
private long id;
|
||||
private int version;
|
||||
private int user;
|
||||
private int presetId;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package icu.samnyan.aqua.sega.chusan.service;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.dao.gamedata.GameGachaCardRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.GameGachaCardRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.GameGachaCard;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.cache.annotation.Cacheable;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package icu.samnyan.aqua.sega.chusan.service;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.dao.gamedata.GameLoginBonusPresetsRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.GameLoginBonusPresetsRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.GameLoginBonusPreset;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package icu.samnyan.aqua.sega.chusan.service;
|
||||
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.dao.gamedata.GameLoginBonusRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.GameLoginBonusRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.GameLoginBonus;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package icu.samnyan.aqua.sega.chusan.service;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.dao.gamedata.GameMusicRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.GameMusicRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.gamedata.Music;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.cache.annotation.Cacheable;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package icu.samnyan.aqua.sega.chusan.service;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.UserActivityRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.UserActivityRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserActivity;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -39,6 +39,6 @@ public class UserActivityService {
|
||||
}
|
||||
|
||||
public List<UserActivity> getByUserId(String userId) {
|
||||
return userActivityRepository.findAllByUser_Card_ExtId(Long.parseLong(userId));
|
||||
return userActivityRepository.findByUser_Card_ExtId(Long.parseLong(userId));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package icu.samnyan.aqua.sega.chusan.service;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.UserCharacterRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.UserCharacterRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserCharacter;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package icu.samnyan.aqua.sega.chusan.service;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.UserChargeRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.UserChargeRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserCharge;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package icu.samnyan.aqua.sega.chusan.service;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.UserCourseRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.UserCourseRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserCourse;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package icu.samnyan.aqua.sega.chusan.service;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.UserDataRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.UserDataRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import icu.samnyan.aqua.sega.general.model.Card;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package icu.samnyan.aqua.sega.chusan.service;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.UserDuelRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.UserDuelRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserDuel;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package icu.samnyan.aqua.sega.chusan.service;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.UserGachaRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.UserGachaRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserGacha;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package icu.samnyan.aqua.sega.chusan.service;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.UserGameOptionRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.UserGameOptionRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserGameOption;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -26,10 +26,10 @@ public class UserGameOptionService {
|
||||
}
|
||||
|
||||
public Optional<UserGameOption> getByUser(UserData user) {
|
||||
return userGameOptionRepository.findByUser(user);
|
||||
return userGameOptionRepository.findSingleByUser(user);
|
||||
}
|
||||
|
||||
public Optional<UserGameOption> getByUserId(String userId) {
|
||||
return userGameOptionRepository.findByUser_Card_ExtId(Long.parseLong(userId));
|
||||
return userGameOptionRepository.findSingleByUser_Card_ExtId(Long.parseLong(userId));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package icu.samnyan.aqua.sega.chusan.service;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.UserGeneralDataRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.UserGeneralDataRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserGeneralData;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package icu.samnyan.aqua.sega.chusan.service;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.UserItemRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.UserItemRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserItem;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -34,7 +34,7 @@ public class UserItemService {
|
||||
}
|
||||
|
||||
public List<UserItem> getByUserId(String userId) {
|
||||
List<UserItem> userItemList = userItemRepository.findAllByUser_Card_ExtId(Long.parseLong(userId));
|
||||
List<UserItem> userItemList = userItemRepository.findByUser_Card_ExtId(Long.parseLong(userId));
|
||||
userItemList.sort(Comparator.comparingInt(UserItem::getItemId));
|
||||
return userItemList;
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package icu.samnyan.aqua.sega.chusan.service;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.ChusanUserLoginBonusRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.ChusanUserLoginBonusRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserLoginBonus;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package icu.samnyan.aqua.sega.chusan.service;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.UserMapAreaRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.UserMapAreaRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserMapArea;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -31,11 +31,11 @@ public class UserMapAreaService {
|
||||
}
|
||||
|
||||
public List<UserMapArea> getByUser(UserData user) {
|
||||
return userMapRepository.findAllByUser(user);
|
||||
return userMapRepository.findByUser(user);
|
||||
}
|
||||
|
||||
public List<UserMapArea> getByUserId(String userId) {
|
||||
return userMapRepository.findAllByUser_Card_ExtId(Long.parseLong(userId));
|
||||
return userMapRepository.findByUser_Card_ExtId(Long.parseLong(userId));
|
||||
}
|
||||
|
||||
public Optional<UserMapArea> getByUserAndMapAreaId(UserData user, int mapId) {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package icu.samnyan.aqua.sega.chusan.service;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.UserMusicDetailRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.UserMusicDetailRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserMusicDetail;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package icu.samnyan.aqua.sega.chusan.service;
|
||||
|
||||
import icu.samnyan.aqua.sega.chusan.dao.userdata.UserPlaylogRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.UserPlaylogRepository;
|
||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserPlaylog;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.data.domain.Page;
|
||||
|
||||
@@ -13,7 +13,6 @@ import org.springframework.data.domain.Page
|
||||
import org.springframework.data.domain.Pageable
|
||||
import org.springframework.data.jpa.repository.JpaRepository
|
||||
import org.springframework.data.repository.NoRepositoryBean
|
||||
import org.springframework.stereotype.Repository
|
||||
import org.springframework.transaction.annotation.Transactional
|
||||
import java.util.*
|
||||
|
||||
@@ -27,35 +26,28 @@ interface UserLinked<T>: JpaRepository<T, Long> {
|
||||
fun deleteByUser(user: UserDetail)
|
||||
}
|
||||
|
||||
@Repository
|
||||
interface Mai2MapEncountNpcRepo : UserLinked<MapEncountNpc>
|
||||
|
||||
@Repository
|
||||
interface Mai2UserActRepo : UserLinked<UserAct> {
|
||||
fun findByUserAndKindAndActivityId(user: UserDetail, kind: Int, id: Int): Optional<UserAct>
|
||||
|
||||
fun findByUser_Card_ExtIdAndKind(userId: Long, kind: Int): List<UserAct>
|
||||
}
|
||||
|
||||
@Repository
|
||||
interface Mai2UserCardRepo : UserLinked<UserCard> {
|
||||
fun findByUserAndCardId(user: UserDetail, cardId: Int): Optional<UserCard>
|
||||
}
|
||||
|
||||
@Repository
|
||||
interface Mai2UserCharacterRepo : UserLinked<UserCharacter> {
|
||||
fun findByUserAndCharacterId(user: UserDetail, characterId: Int): Optional<UserCharacter>
|
||||
}
|
||||
|
||||
@Repository
|
||||
interface Mai2UserChargeRepo : UserLinked<UserCharge>
|
||||
|
||||
@Repository
|
||||
interface Mai2UserCourseRepo : UserLinked<UserCourse> {
|
||||
fun findByUserAndCourseId(user: UserDetail, courseId: Int): Optional<UserCourse>
|
||||
}
|
||||
|
||||
@Repository
|
||||
interface Mai2UserDataRepo : GenericUserDataRepo<UserDetail> {
|
||||
fun findByCardExtId(userId: Long): Optional<UserDetail>
|
||||
|
||||
@@ -63,73 +55,58 @@ interface Mai2UserDataRepo : GenericUserDataRepo<UserDetail> {
|
||||
fun deleteByCard(card: Card)
|
||||
}
|
||||
|
||||
@Repository
|
||||
interface Mai2UserExtendRepo : UserLinked<UserExtend>
|
||||
|
||||
@Repository
|
||||
interface Mai2UserFavoriteRepo : UserLinked<UserFavorite> {
|
||||
fun findByUserAndItemKind(user: UserDetail, kind: Int): Optional<UserFavorite>
|
||||
|
||||
fun findByUserIdAndItemKind(userId: Long, kind: Int): List<UserFavorite>
|
||||
}
|
||||
|
||||
@Repository
|
||||
interface Mai2UserFriendSeasonRankingRepo : UserLinked<UserFriendSeasonRanking> {
|
||||
fun findByUserAndSeasonId(user: UserDetail, seasonId: Int): Optional<UserFriendSeasonRanking>
|
||||
}
|
||||
|
||||
@Repository
|
||||
interface Mai2UserGeneralDataRepo : UserLinked<UserGeneralData> {
|
||||
fun findByUserAndPropertyKey(user: UserDetail, key: String): Optional<UserGeneralData>
|
||||
|
||||
fun findByUser_Card_ExtIdAndPropertyKey(userId: Long, key: String): Optional<UserGeneralData>
|
||||
}
|
||||
|
||||
@Repository
|
||||
interface Mai2UserItemRepo : UserLinked<UserItem> {
|
||||
fun findByUserAndItemKindAndItemId(user: UserDetail, itemKind: Int, itemId: Int): Optional<UserItem>
|
||||
|
||||
fun findByUser_Card_ExtIdAndItemKind(userId: Long, kind: Int, page: Pageable): Page<UserItem>
|
||||
}
|
||||
|
||||
@Repository
|
||||
interface Mai2UserLoginBonusRepo : UserLinked<UserLoginBonus> {
|
||||
fun findByUserAndBonusId(user: UserDetail, bonusId: Int): Optional<UserLoginBonus>
|
||||
}
|
||||
|
||||
@Repository
|
||||
interface Mai2UserMapRepo : UserLinked<UserMap> {
|
||||
fun findByUserAndMapId(user: UserDetail, mapId: Int): Optional<UserMap>
|
||||
}
|
||||
|
||||
@Repository
|
||||
interface Mai2UserMusicDetailRepo : UserLinked<UserMusicDetail> {
|
||||
fun findByUser_Card_ExtIdAndMusicId(userId: Long, id: Int): List<UserMusicDetail>
|
||||
|
||||
fun findByUserAndMusicIdAndLevel(user: UserDetail, musicId: Int, level: Int): Optional<UserMusicDetail>
|
||||
}
|
||||
|
||||
@Repository
|
||||
interface Mai2UserOptionRepo : UserLinked<UserOption>
|
||||
|
||||
@Repository
|
||||
interface Mai2UserPlaylogRepo : GenericPlaylogRepo<UserPlaylog>, UserLinked<UserPlaylog> {
|
||||
fun findByUser_Card_ExtIdAndMusicIdAndLevel(userId: Long, musicId: Int, level: Int): List<UserPlaylog>
|
||||
}
|
||||
|
||||
@Repository
|
||||
interface Mai2UserPrintDetailRepo : JpaRepository<UserPrintDetail, Long>
|
||||
|
||||
@Repository
|
||||
interface Mai2UserUdemaeRepo : UserLinked<UserUdemae>
|
||||
|
||||
@Repository
|
||||
interface Mai2GameChargeRepo : JpaRepository<GameCharge, Long>
|
||||
|
||||
@Repository
|
||||
interface Mai2GameEventRepo : JpaRepository<GameEvent, Int> {
|
||||
fun findByTypeAndEnable(type: Int, enable: Boolean): List<GameEvent>
|
||||
}
|
||||
|
||||
@Repository
|
||||
interface Mai2GameSellingCardRepo : JpaRepository<GameSellingCard, Long>
|
||||
@@ -5,7 +5,6 @@ import icu.samnyan.aqua.sega.general.model.Card
|
||||
import icu.samnyan.aqua.sega.ongeki.model.userdata.UserData
|
||||
import org.springframework.stereotype.Repository
|
||||
import org.springframework.transaction.annotation.Transactional
|
||||
import java.util.*
|
||||
|
||||
/**
|
||||
* @author samnyan (privateamusement@protonmail.com)
|
||||
@@ -14,8 +13,6 @@ import java.util.*
|
||||
interface UserDataRepository : GenericUserDataRepo<UserData> {
|
||||
fun findByCard_ExtIdIn(userIds: Collection<Long>): List<UserData>
|
||||
|
||||
fun findByCard_ExtId(aimeId: Long): Optional<UserData>
|
||||
|
||||
@Transactional
|
||||
fun deleteByCard(card: Card)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user