diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/Chu3UserData.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/Chu3UserData.java index 0a88fffc..8ba34b3a 100644 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/Chu3UserData.java +++ b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/Chu3UserData.java @@ -10,7 +10,9 @@ import icu.samnyan.aqua.sega.chusan.model.response.data.UserEmoney; import icu.samnyan.aqua.sega.general.model.Card; import icu.samnyan.aqua.sega.util.jackson.AccessCodeSerializer; import jakarta.persistence.*; -import lombok.*; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; import java.io.Serializable; import java.time.LocalDateTime; diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/Chu3UserEntity.kt b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/Chu3UserEntity.kt new file mode 100644 index 00000000..c86edc01 --- /dev/null +++ b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/Chu3UserEntity.kt @@ -0,0 +1,16 @@ +package icu.samnyan.aqua.sega.chusan.model.userdata + +import com.fasterxml.jackson.annotation.JsonIgnore +import icu.samnyan.aqua.net.games.BaseEntity +import icu.samnyan.aqua.net.games.IUserEntity +import jakarta.persistence.JoinColumn +import jakarta.persistence.ManyToOne +import jakarta.persistence.MappedSuperclass + +@MappedSuperclass +open class Chu3UserEntity : BaseEntity(), IUserEntity { + @JsonIgnore + @ManyToOne + @JoinColumn(name = "user_id") + public override var user: Chu3UserData = Chu3UserData() +} \ No newline at end of file diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserActivity.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserActivity.java index c30dc75e..93b88b29 100644 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserActivity.java +++ b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserActivity.java @@ -1,15 +1,15 @@ package icu.samnyan.aqua.sega.chusan.model.userdata; -import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import jakarta.persistence.*; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; +import jakarta.persistence.UniqueConstraint; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import java.io.Serializable; - /** * @author samnyan (privateamusement@protonmail.com) */ @@ -19,20 +19,7 @@ import java.io.Serializable; @NoArgsConstructor @AllArgsConstructor @JsonPropertyOrder({"kind", "id", "sortNumber", "param1", "param2", "param3", "param4"}) -public class UserActivity implements Serializable { - - private static final long serialVersionUID = 1L; - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @JsonIgnore - private long id; - - @JsonIgnore - @ManyToOne - @JoinColumn(name = "user_id") - private Chu3UserData user; - +public class UserActivity extends Chu3UserEntity { private int kind; @JsonProperty("id") @@ -49,7 +36,5 @@ public class UserActivity implements Serializable { private int param4; - public UserActivity(Chu3UserData userData) { - user = userData; - } + public UserActivity(Chu3UserData userData) { setUser(userData); } } diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCMission.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCMission.java index 28fd353d..2e463806 100644 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCMission.java +++ b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCMission.java @@ -1,7 +1,8 @@ package icu.samnyan.aqua.sega.chusan.model.userdata; -import com.fasterxml.jackson.annotation.JsonIgnore; -import jakarta.persistence.*; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @@ -11,17 +12,7 @@ import lombok.NoArgsConstructor; @Data @AllArgsConstructor @NoArgsConstructor -public class UserCMission { - @Id - @JsonIgnore - @GeneratedValue(strategy = GenerationType.IDENTITY) - private long id; - - @JsonIgnore - @ManyToOne - @JoinColumn(name = "user_id") - private Chu3UserData user; - +public class UserCMission extends Chu3UserEntity { @Column(name = "mission_id") private int missionId; diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCMissionProgress.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCMissionProgress.java index 8ab9a694..2f21a243 100644 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCMissionProgress.java +++ b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCMissionProgress.java @@ -1,7 +1,9 @@ package icu.samnyan.aqua.sega.chusan.model.userdata; -import com.fasterxml.jackson.annotation.JsonIgnore; -import jakarta.persistence.*; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; +import jakarta.persistence.UniqueConstraint; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @@ -11,17 +13,7 @@ import lombok.NoArgsConstructor; @Data @AllArgsConstructor @NoArgsConstructor -public class UserCMissionProgress { - @Id - @JsonIgnore - @GeneratedValue(strategy = GenerationType.IDENTITY) - private long id; - - @JsonIgnore - @ManyToOne - @JoinColumn(name = "user_id") - private Chu3UserData user; - +public class UserCMissionProgress extends Chu3UserEntity { @Column(name = "mission_id") private int missionId; diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCardPrintState.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCardPrintState.java index b49d6946..09635f4b 100644 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCardPrintState.java +++ b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCardPrintState.java @@ -1,13 +1,11 @@ package icu.samnyan.aqua.sega.chusan.model.userdata; -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonProperty; -import jakarta.persistence.*; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import java.io.Serializable; import java.time.LocalDateTime; /** @@ -18,27 +16,10 @@ import java.time.LocalDateTime; @Data @NoArgsConstructor @AllArgsConstructor -public class UserCardPrintState implements Serializable { - - private static final long serialVersionUID = 1L; - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @JsonProperty("orderId") - private long id; - - @JsonIgnore - @ManyToOne - @JoinColumn(name = "user_id") - private Chu3UserData user; - +public class UserCardPrintState extends Chu3UserEntity { private boolean hasCompleted; private LocalDateTime limitDate; private int placeId; private int cardId; private int gachaId; - - public UserCardPrintState(Chu3UserData user) { - this.user = user; - } } diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCharacter.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCharacter.java index 1f5b832f..aff9f1d1 100644 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCharacter.java +++ b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCharacter.java @@ -1,15 +1,15 @@ package icu.samnyan.aqua.sega.chusan.model.userdata; -import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import jakarta.persistence.*; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; +import jakarta.persistence.UniqueConstraint; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import java.io.Serializable; - /** * @author samnyan (privateamusement@protonmail.com) */ @@ -19,20 +19,7 @@ import java.io.Serializable; @NoArgsConstructor @AllArgsConstructor @JsonPropertyOrder({"characterId", "playCount", "level", "friendshipExp", "isValid", "isNewMark", "exMaxLv", "assignIllust", "param1", "param2"}) -public class UserCharacter implements Serializable { - - private static final long serialVersionUID = 1L; - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @JsonIgnore - private long id; - - @JsonIgnore - @ManyToOne - @JoinColumn(name = "user_id") - private Chu3UserData user; - +public class UserCharacter extends Chu3UserEntity { @Column(name = "character_id") private int characterId; @@ -57,6 +44,6 @@ public class UserCharacter implements Serializable { private int param2 = 0; public UserCharacter(Chu3UserData userData) { - user = userData; + setUser(userData); } } diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCharge.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCharge.java index deb2f5e2..cc8dc528 100644 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCharge.java +++ b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCharge.java @@ -1,13 +1,14 @@ package icu.samnyan.aqua.sega.chusan.model.userdata; -import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import jakarta.persistence.*; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; +import jakarta.persistence.UniqueConstraint; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import java.io.Serializable; import java.time.LocalDateTime; /** @@ -19,20 +20,7 @@ import java.time.LocalDateTime; @NoArgsConstructor @AllArgsConstructor @JsonPropertyOrder({"chargeId", "stock", "purchaseDate", "validDate", "param1", "param2", "paramDate"}) -public class UserCharge implements Serializable { - - private static final long serialVersionUID = 1L; - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @JsonIgnore - private long id; - - @JsonIgnore - @ManyToOne - @JoinColumn(name = "user_id") - private Chu3UserData user; - +public class UserCharge extends Chu3UserEntity { @Column(name = "charge_id") private int chargeId; @@ -49,6 +37,6 @@ public class UserCharge implements Serializable { private LocalDateTime paramDate; public UserCharge(Chu3UserData user) { - this.user = user; + setUser(user); } } diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCourse.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCourse.java index c41ee930..1dc46d51 100644 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCourse.java +++ b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserCourse.java @@ -1,8 +1,10 @@ package icu.samnyan.aqua.sega.chusan.model.userdata; -import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; -import jakarta.persistence.*; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; +import jakarta.persistence.UniqueConstraint; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @@ -17,18 +19,7 @@ import java.time.LocalDateTime; @Data @NoArgsConstructor @AllArgsConstructor -public class UserCourse { - - @Id - @JsonIgnore - @GeneratedValue(strategy = GenerationType.IDENTITY) - private long id; - - @JsonIgnore - @ManyToOne - @JoinColumn(name = "user_id") - private Chu3UserData user; - +public class UserCourse extends Chu3UserEntity { @Column(name = "course_id") private int courseId; @@ -71,7 +62,7 @@ public class UserCourse { private boolean isClear; public UserCourse(Chu3UserData userData) { - user = userData; + setUser(userData); } public UserCourse(int classId) { diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserDuel.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserDuel.java index 32b8adad..33cc6f9b 100644 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserDuel.java +++ b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserDuel.java @@ -1,8 +1,10 @@ package icu.samnyan.aqua.sega.chusan.model.userdata; -import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; -import jakarta.persistence.*; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; +import jakarta.persistence.UniqueConstraint; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @@ -17,18 +19,7 @@ import java.time.LocalDateTime; @Data @NoArgsConstructor @AllArgsConstructor -public class UserDuel { - - @Id - @JsonIgnore - @GeneratedValue(strategy = GenerationType.IDENTITY) - private long id; - - @JsonIgnore - @ManyToOne - @JoinColumn(name = "user_id") - private Chu3UserData user; - +public class UserDuel extends Chu3UserEntity { @Column(name = "duel_id") private int duelId; @@ -50,6 +41,6 @@ public class UserDuel { private int param4; public UserDuel(Chu3UserData userData) { - user = userData; + setUser(userData); } } diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserGacha.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserGacha.java index 1e9e4084..5ad4c0d4 100644 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserGacha.java +++ b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserGacha.java @@ -1,12 +1,13 @@ package icu.samnyan.aqua.sega.chusan.model.userdata; -import com.fasterxml.jackson.annotation.JsonIgnore; -import jakarta.persistence.*; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; +import jakarta.persistence.UniqueConstraint; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import java.io.Serializable; import java.time.LocalDateTime; /** @@ -17,20 +18,7 @@ import java.time.LocalDateTime; @Data @NoArgsConstructor @AllArgsConstructor -public class UserGacha implements Serializable { - - private static final long serialVersionUID = 1L; - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @JsonIgnore - private long id; - - @JsonIgnore - @ManyToOne - @JoinColumn(name = "user_id") - private Chu3UserData user; - +public class UserGacha extends Chu3UserEntity { @Column(name = "gacha_id") private int gachaId; @@ -45,8 +33,4 @@ public class UserGacha implements Serializable { private int elevenGachaCnt; private LocalDateTime dailyGachaDate; - - public UserGacha(Chu3UserData user) { - this.user = user; - } } diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserGameOption.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserGameOption.java index 05f4400e..8fc09020 100644 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserGameOption.java +++ b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserGameOption.java @@ -1,14 +1,12 @@ package icu.samnyan.aqua.sega.chusan.model.userdata; -import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import jakarta.persistence.*; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import java.io.Serializable; - /** * @author samnyan (privateamusement@protonmail.com) */ @@ -69,19 +67,7 @@ import java.io.Serializable; "ext9", "ext10" }) -public class UserGameOption implements Serializable { - - private static final long serialVersionUID = 1L; - - @Id - @JsonIgnore - @GeneratedValue(strategy = GenerationType.IDENTITY) - private long id; - - @JsonIgnore - @ManyToOne - @JoinColumn(name = "user_id") - private Chu3UserData user; +public class UserGameOption extends Chu3UserEntity { private int bgInfo; @@ -184,6 +170,6 @@ public class UserGameOption implements Serializable { private int ext10; public UserGameOption(Chu3UserData userData) { - user = userData; + setUser(userData); } } diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserGeneralData.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserGeneralData.java index 222bf559..9597947a 100644 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserGeneralData.java +++ b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserGeneralData.java @@ -1,13 +1,12 @@ package icu.samnyan.aqua.sega.chusan.model.userdata; -import com.fasterxml.jackson.annotation.JsonIgnore; -import jakarta.persistence.*; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import java.io.Serializable; - /** * This is for storing the other data that doesn't need to save it in a separate table * @author samnyan (privateamusement@protonmail.com) @@ -17,27 +16,14 @@ import java.io.Serializable; @Data @NoArgsConstructor @AllArgsConstructor -public class UserGeneralData implements Serializable { - - private static final long serialVersionUID = 1L; - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @JsonIgnore - private long id; - - @JsonIgnore - @ManyToOne - @JoinColumn(name = "user_id") - private Chu3UserData user; - +public class UserGeneralData extends Chu3UserEntity { private String propertyKey; @Column(columnDefinition = "TEXT") private String propertyValue; public UserGeneralData(Chu3UserData userData, String key) { - this.user = userData; + setUser(userData); this.propertyKey = key; this.propertyValue = ""; } diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserItem.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserItem.java index 7e71a410..4febb59b 100644 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserItem.java +++ b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserItem.java @@ -1,15 +1,15 @@ package icu.samnyan.aqua.sega.chusan.model.userdata; -import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import jakarta.persistence.*; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; +import jakarta.persistence.UniqueConstraint; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import java.io.Serializable; - /** * @author samnyan (privateamusement@protonmail.com) */ @@ -19,20 +19,7 @@ import java.io.Serializable; @NoArgsConstructor @AllArgsConstructor @JsonPropertyOrder({"itemKind", "itemId", "stock", "isValid"}) -public class UserItem implements Serializable { - - private static final long serialVersionUID = 1L; - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @JsonIgnore - private long id; - - @JsonIgnore - @ManyToOne - @JoinColumn(name = "user_id") - private Chu3UserData user; - +public class UserItem extends Chu3UserEntity { // Kind ,Type @Column(name = "item_kind") private int itemKind; @@ -46,6 +33,6 @@ public class UserItem implements Serializable { private boolean isValid = true; public UserItem(Chu3UserData userData) { - user = userData; + setUser(userData); } } diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserLoginBonus.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserLoginBonus.java index b5d6ae18..623094c7 100644 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserLoginBonus.java +++ b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserLoginBonus.java @@ -1,12 +1,12 @@ package icu.samnyan.aqua.sega.chusan.model.userdata; -import com.fasterxml.jackson.annotation.JsonIgnore; -import jakarta.persistence.*; +import icu.samnyan.aqua.net.games.BaseEntity; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import java.io.Serializable; import java.time.LocalDateTime; @Entity(name = "ChusanUserLoginBonus") @@ -14,11 +14,7 @@ import java.time.LocalDateTime; @Data @AllArgsConstructor @NoArgsConstructor -public class UserLoginBonus implements Serializable { - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @JsonIgnore - private long id; +public class UserLoginBonus extends BaseEntity { private int version; private int user; private int presetId; diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserMap.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserMap.java index 172c55de..d1562a3b 100644 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserMap.java +++ b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserMap.java @@ -1,15 +1,15 @@ package icu.samnyan.aqua.sega.chusan.model.userdata; -import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import jakarta.persistence.*; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; +import jakarta.persistence.UniqueConstraint; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import java.io.Serializable; - /** * @author samnyan (privateamusement@protonmail.com) */ @@ -27,20 +27,7 @@ import java.io.Serializable; "remainGridCount", "isLocked" }) -public class UserMap implements Serializable { - - private static final long serialVersionUID = 1L; - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @JsonIgnore - private long id; - - @JsonIgnore - @ManyToOne - @JoinColumn(name = "user_id") - private Chu3UserData user; - +public class UserMap extends Chu3UserEntity { @Column(name = "map_area_id") private int mapAreaId; @@ -59,6 +46,6 @@ public class UserMap implements Serializable { private boolean isLocked; public UserMap(Chu3UserData userData) { - user = userData; + setUser(userData); } } diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserMusicDetail.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserMusicDetail.java index d2e51cf1..d46e6554 100644 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserMusicDetail.java +++ b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserMusicDetail.java @@ -1,17 +1,17 @@ package icu.samnyan.aqua.sega.chusan.model.userdata; -import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import icu.samnyan.aqua.sega.chusan.util.BooleanToIntegerDeserializer; -import jakarta.persistence.*; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; +import jakarta.persistence.UniqueConstraint; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import java.io.Serializable; - /** * @author samnyan (privateamusement@protonmail.com) */ @@ -36,20 +36,7 @@ import java.io.Serializable; "theoryCount", "ext1" }) -public class UserMusicDetail implements Serializable { - - private static final long serialVersionUID = 1L; - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @JsonIgnore - private long id; - - @JsonIgnore - @ManyToOne - @JoinColumn(name = "user_id") - private Chu3UserData user; - +public class UserMusicDetail extends Chu3UserEntity { @Column(name = "music_id") private int musicId; @@ -87,24 +74,6 @@ public class UserMusicDetail implements Serializable { private int ext1; public UserMusicDetail(Chu3UserData userData) { - user = userData; - } - - public UserMusicDetail(int musicId, int level, int playCount, int scoreMax, int missCount, int maxComboCount, boolean isFullCombo, boolean isAllJustice, int isSuccess, int fullChain, int maxChain, int scoreRank, boolean isLock, int theoryCount, int ext1) { - this.musicId = musicId; - this.level = level; - this.playCount = playCount; - this.scoreMax = scoreMax; - this.missCount = missCount; - this.maxComboCount = maxComboCount; - this.isFullCombo = isFullCombo; - this.isAllJustice = isAllJustice; - this.isSuccess = isSuccess; - this.fullChain = fullChain; - this.maxChain = maxChain; - this.scoreRank = scoreRank; - this.isLock = isLock; - this.theoryCount = theoryCount; - this.ext1 = ext1; + setUser(userData); } } diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserPlaylog.java b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserPlaylog.java index a41d8554..d8162950 100644 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserPlaylog.java +++ b/src/main/java/icu/samnyan/aqua/sega/chusan/model/userdata/UserPlaylog.java @@ -1,15 +1,14 @@ package icu.samnyan.aqua.sega.chusan.model.userdata; -import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; import icu.samnyan.aqua.net.games.IGenericGamePlaylog; -import jakarta.persistence.*; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import java.io.Serial; -import java.io.Serializable; import java.time.LocalDateTime; /** @@ -20,20 +19,7 @@ import java.time.LocalDateTime; @Data @NoArgsConstructor @AllArgsConstructor -public class UserPlaylog implements Serializable, IGenericGamePlaylog { - - @Serial - private static final long serialVersionUID = 1L; - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - private long id; - - @JsonIgnore - @ManyToOne - @JoinColumn(name = "user_id") - private Chu3UserData user; - +public class UserPlaylog extends Chu3UserEntity implements IGenericGamePlaylog { private String romVersion; private int orderId; @@ -156,7 +142,7 @@ public class UserPlaylog implements Serializable, IGenericGamePlaylog { private int ticketId; public UserPlaylog(Chu3UserData userData) { - user = userData; + setUser(userData); } @Override