From 01a064f1ab4508ddaa7fa666b372e0e61ac52494 Mon Sep 17 00:00:00 2001 From: Azalea <22280294+hykilpikonna@users.noreply.github.com> Date: Sat, 4 Jan 2025 20:07:16 -0500 Subject: [PATCH] [O] Game entities --- .../aqua/sega/chusan/model/Chu3GameData.kt | 88 +++++++++++++++++++ .../chusan/model/gamedata/GameCharge.java | 46 ---------- .../sega/chusan/model/gamedata/GameEvent.java | 37 -------- .../sega/chusan/model/gamedata/GameGacha.java | 42 --------- .../chusan/model/gamedata/GameGachaCard.java | 34 ------- .../chusan/model/gamedata/GameLoginBonus.java | 31 ------- .../model/gamedata/GameLoginBonusPreset.java | 27 ------ .../chusan/model/request/UpsertUserGacha.java | 50 ----------- .../chusan/model/request/UpsertUserGacha.kt | 22 +++++ 9 files changed, 110 insertions(+), 267 deletions(-) create mode 100644 src/main/java/icu/samnyan/aqua/sega/chusan/model/Chu3GameData.kt delete mode 100644 src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameCharge.java delete mode 100644 src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameEvent.java delete mode 100644 src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameGacha.java delete mode 100644 src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameGachaCard.java delete mode 100644 src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameLoginBonus.java delete mode 100644 src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameLoginBonusPreset.java delete mode 100644 src/main/java/icu/samnyan/aqua/sega/chusan/model/request/UpsertUserGacha.java create mode 100644 src/main/java/icu/samnyan/aqua/sega/chusan/model/request/UpsertUserGacha.kt diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/Chu3GameData.kt b/src/main/java/icu/samnyan/aqua/sega/chusan/model/Chu3GameData.kt new file mode 100644 index 00000000..b3a36250 --- /dev/null +++ b/src/main/java/icu/samnyan/aqua/sega/chusan/model/Chu3GameData.kt @@ -0,0 +1,88 @@ +package icu.samnyan.aqua.sega.chusan.model + +import com.fasterxml.jackson.annotation.JsonIgnore +import com.fasterxml.jackson.annotation.JsonProperty +import icu.samnyan.aqua.net.games.BaseEntity +import jakarta.persistence.Column +import jakarta.persistence.Entity +import jakarta.persistence.Table +import java.time.LocalDateTime + +@Entity(name = "ChusanGameCharge") +@Table(name = "chusan_game_charge") +class GameCharge: BaseEntity() { + var orderId = 0 + + @Column(unique = true) + var chargeId = 0 + var price = 0 + var startDate: LocalDateTime? = null + var endDate: LocalDateTime? = null + var salePrice = 0 + var saleStartDate: LocalDateTime? = null + var saleEndDate: LocalDateTime? = null +} + +@Entity(name = "ChusanGameEvent") +@Table(name = "chusan_game_event") +class GameEvent: BaseEntity() { + val type = 0 + val startDate: LocalDateTime? = null + val endDate: LocalDateTime? = null + + @JsonIgnore + val enable = false +} + +@Entity(name = "ChusanGameGacha") +@Table(name = "chusan_game_gacha") +class GameGacha : BaseEntity() { + var gachaId = 0 + var gachaName: String? = null + var type = 0 + var kind = 0 + + @JsonProperty("isCeiling") + var isCeiling = false + var ceilingCnt = 0 + var changeRateCnt1 = 0 + var changeRateCnt2 = 0 + var startDate: LocalDateTime? = null + var endDate: LocalDateTime? = null + var noticeStartDate: LocalDateTime? = null + var noticeEndDate: LocalDateTime? = null +} + +@Entity(name = "ChusanGameGachaCard") +@Table(name = "chusan_game_gacha_card") +class GameGachaCard : BaseEntity() { + var gachaId = 0 + var cardId = 0 + var rarity = 0 + var weight = 0 + + @JsonProperty("isPickup") + var isPickup = false +} + +@Entity(name = "ChusanGameLoginBonus") +@Table(name = "chusan_game_login_bonus") +class GameLoginBonus : BaseEntity() { + var version = 0 + var presetId = 0 + var loginBonusId = 0 + var loginBonusName: String? = null + var presentId = 0 + var presentName: String? = null + var itemNum = 0 + var needLoginDayCount = 0 + var loginBonusCategoryType = 0 +} + +@Entity(name = "ChusanGameLoginBonusPreset") +@Table(name = "chusan_game_login_bonus_preset") +class GameLoginBonusPreset : BaseEntity() { + var version = 0 + var presetName: String? = null + var isEnabled = false +} \ No newline at end of file diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameCharge.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameCharge.java deleted file mode 100644 index 07c630a1..00000000 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameCharge.java +++ /dev/null @@ -1,46 +0,0 @@ -package icu.samnyan.aqua.sega.chusan.model.gamedata; - -import com.fasterxml.jackson.annotation.JsonIgnore; -import jakarta.persistence.*; -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.io.Serializable; -import java.time.LocalDateTime; - -/** - * @author samnyan (privateamusement@protonmail.com) - */ -@Entity(name = "ChusanGameCharge") -@Table(name = "chusan_game_charge") -@Data -@AllArgsConstructor -@NoArgsConstructor -public class GameCharge implements Serializable { - - private static final long serialVersionUID = 1L; - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @JsonIgnore - private long id; - - private int orderId; - - @Column(unique = true) - private int chargeId; - - private int price; - - private LocalDateTime startDate; - - private LocalDateTime endDate; - - private int salePrice; - - private LocalDateTime saleStartDate; - - private LocalDateTime saleEndDate; - -} diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameEvent.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameEvent.java deleted file mode 100644 index 1d4c38bd..00000000 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameEvent.java +++ /dev/null @@ -1,37 +0,0 @@ -package icu.samnyan.aqua.sega.chusan.model.gamedata; - -import com.fasterxml.jackson.annotation.JsonIgnore; -import jakarta.persistence.Entity; -import jakarta.persistence.Id; -import jakarta.persistence.Table; -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.io.Serializable; -import java.time.LocalDateTime; - -/** - * @author samnyan (privateamusement@protonmail.com) - */ -@Entity(name = "ChusanGameEvent") -@Table(name = "chusan_game_event") -@Data -@AllArgsConstructor -@NoArgsConstructor -public class GameEvent implements Serializable { - - private static final long serialVersionUID = 1L; - - @Id - private int id; - - private int type; - - private LocalDateTime startDate; - - private LocalDateTime endDate; - - @JsonIgnore - private boolean enable; -} diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameGacha.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameGacha.java deleted file mode 100644 index 62aefdef..00000000 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameGacha.java +++ /dev/null @@ -1,42 +0,0 @@ -package icu.samnyan.aqua.sega.chusan.model.gamedata; - -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonProperty; -import jakarta.persistence.*; -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.io.Serializable; -import java.time.LocalDateTime; - -/** - * @author samnyan (privateamusement@protonmail.com) - */ -@Entity(name = "ChusanGameGacha") -@Table(name = "chusan_game_gacha") -@Data -@AllArgsConstructor -@NoArgsConstructor -public class GameGacha implements Serializable { - - private static final long serialVersionUID = 1L; - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @JsonIgnore - private int id; - private int gachaId; - private String gachaName; - private int type; - private int kind; // 0 - @JsonProperty("isCeiling") - private boolean isCeiling; - private int ceilingCnt; - private int changeRateCnt1; - private int changeRateCnt2; - private LocalDateTime startDate; - private LocalDateTime endDate; - private LocalDateTime noticeStartDate; - private LocalDateTime noticeEndDate; -} diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameGachaCard.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameGachaCard.java deleted file mode 100644 index 50104f82..00000000 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameGachaCard.java +++ /dev/null @@ -1,34 +0,0 @@ -package icu.samnyan.aqua.sega.chusan.model.gamedata; - -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonProperty; -import jakarta.persistence.*; -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.io.Serializable; - -/** - * @author samnyan (privateamusement@protonmail.com) - */ -@Entity(name = "ChusanGameGachaCard") -@Table(name = "chusan_game_gacha_card") -@Data -@AllArgsConstructor -@NoArgsConstructor -public class GameGachaCard implements Serializable { - - private static final long serialVersionUID = 1L; - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @JsonIgnore - private int id; - private int gachaId; - private int cardId; - private int rarity; - private int weight; - @JsonProperty("isPickup") - private boolean isPickup; -} diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameLoginBonus.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameLoginBonus.java deleted file mode 100644 index 764e4836..00000000 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameLoginBonus.java +++ /dev/null @@ -1,31 +0,0 @@ -package icu.samnyan.aqua.sega.chusan.model.gamedata; - -import com.fasterxml.jackson.annotation.JsonIgnore; -import jakarta.persistence.*; -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.io.Serializable; - -@Entity(name = "ChusanGameLoginBonus") -@Table(name = "chusan_game_login_bonus") -@Data -@AllArgsConstructor -@NoArgsConstructor -public class GameLoginBonus implements Serializable { - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @JsonIgnore - private int id; - private int version; - private int presetId; - private int loginBonusId; - private String loginBonusName; - private int presentId; - private String presentName; - private int itemNum; - private int needLoginDayCount; - private int loginBonusCategoryType; -} diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameLoginBonusPreset.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameLoginBonusPreset.java deleted file mode 100644 index 8e9754b5..00000000 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/gamedata/GameLoginBonusPreset.java +++ /dev/null @@ -1,27 +0,0 @@ -package icu.samnyan.aqua.sega.chusan.model.gamedata; - -import com.fasterxml.jackson.annotation.JsonIgnore; -import jakarta.persistence.*; -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.io.Serializable; - -@Entity(name = "ChusanGameLoginBonusPreset") -@Table(name = "chusan_game_login_bonus_preset") -@Data -@AllArgsConstructor -@NoArgsConstructor -public class GameLoginBonusPreset implements Serializable { - // No one cares about chuni lol - // Maimai and Ongeki all got their login bonus but nothing for chunithm - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @JsonIgnore - private int id; - private int version; - private String presetName; - private boolean isEnabled; -} diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/request/UpsertUserGacha.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/request/UpsertUserGacha.java deleted file mode 100644 index 5e8c2aba..00000000 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/request/UpsertUserGacha.java +++ /dev/null @@ -1,50 +0,0 @@ -package icu.samnyan.aqua.sega.chusan.model.request; - -import com.fasterxml.jackson.annotation.JsonProperty; -import icu.samnyan.aqua.sega.chusan.model.gamedata.GameGachaCard; -import icu.samnyan.aqua.sega.chusan.model.userdata.Chu3UserData; -import icu.samnyan.aqua.sega.chusan.model.userdata.UserGacha; -import icu.samnyan.aqua.sega.chusan.model.userdata.UserItem; -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; -import org.springframework.lang.Nullable; - -import java.io.Serializable; -import java.util.List; - -/** - * @author samnyan (privateamusement@protonmail.com) - */ -@Data -@AllArgsConstructor -@NoArgsConstructor -public class UpsertUserGacha implements Serializable { - - @Nullable - private Chu3UserData userData; - - @Nullable - private UserGacha userGacha; - - @Nullable - private List userCharacterList; - - @Nullable - private List userCardList; - - @Nullable - private List gameGachaCardList; - - @Nullable - private List userItemList; - - @Nullable - @JsonProperty("isNewCharacterList") - private String isNewCharacterList; - - @Nullable - @JsonProperty("isNewCardList") - private String isNewCardList; - -} diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/request/UpsertUserGacha.kt b/src/main/java/icu/samnyan/aqua/sega/chusan/model/request/UpsertUserGacha.kt new file mode 100644 index 00000000..0a5dd488 --- /dev/null +++ b/src/main/java/icu/samnyan/aqua/sega/chusan/model/request/UpsertUserGacha.kt @@ -0,0 +1,22 @@ +package icu.samnyan.aqua.sega.chusan.model.request + +import com.fasterxml.jackson.annotation.JsonProperty +import icu.samnyan.aqua.sega.chusan.model.gamedata.GameGachaCard +import icu.samnyan.aqua.sega.chusan.model.userdata.Chu3UserData +import icu.samnyan.aqua.sega.chusan.model.userdata.UserGacha +import icu.samnyan.aqua.sega.chusan.model.userdata.UserItem +import java.io.Serializable + +class UpsertUserGacha : Serializable { + var userData: Chu3UserData? = null + var userGacha: UserGacha? = null + var userCharacterList: List? = null + var userCardList: List? = null + var gameGachaCardList: List? = null + var userItemList: List? = null + + @JsonProperty("isNewCharacterList") + var isNewCharacterList: String? = null + @JsonProperty("isNewCardList") + var isNewCardList: String? = null +}