[O] Ongeki: Merge game entities

pull/134/head
Azalea 2025-03-26 19:02:45 -04:00
parent c0604bc989
commit f3e83193d6
15 changed files with 122 additions and 325 deletions

View File

@ -6,7 +6,6 @@ import icu.samnyan.aqua.net.games.GenericUserDataRepo
import icu.samnyan.aqua.net.games.GenericUserMusicRepo
import icu.samnyan.aqua.net.games.IUserRepo
import icu.samnyan.aqua.sega.ongeki.model.*
import icu.samnyan.aqua.sega.ongeki.model.gamedata.*
import org.springframework.data.domain.Page
import org.springframework.data.domain.Pageable
import org.springframework.data.jpa.repository.JpaRepository

View File

@ -3,7 +3,7 @@ package icu.samnyan.aqua.sega.ongeki.handler.impl;
import com.fasterxml.jackson.core.JsonProcessingException;
import icu.samnyan.aqua.sega.ongeki.OgkGameEventRepo;
import icu.samnyan.aqua.sega.general.BaseHandler;
import icu.samnyan.aqua.sega.ongeki.model.gamedata.GameEvent;
import icu.samnyan.aqua.sega.ongeki.model.GameEvent;
import icu.samnyan.aqua.sega.ongeki.model.response.data.GameEventItem;
import icu.samnyan.aqua.sega.util.jackson.BasicMapper;
import org.slf4j.Logger;

View File

@ -3,7 +3,7 @@ package icu.samnyan.aqua.sega.ongeki.handler.impl;
import com.fasterxml.jackson.core.JsonProcessingException;
import icu.samnyan.aqua.sega.ongeki.OgkGamePointRepo;
import icu.samnyan.aqua.sega.general.BaseHandler;
import icu.samnyan.aqua.sega.ongeki.model.gamedata.GamePoint;
import icu.samnyan.aqua.sega.ongeki.model.GamePoint;
import icu.samnyan.aqua.sega.util.jackson.BasicMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

View File

@ -3,7 +3,7 @@ package icu.samnyan.aqua.sega.ongeki.handler.impl;
import com.fasterxml.jackson.core.JsonProcessingException;
import icu.samnyan.aqua.sega.ongeki.OgkGamePresentRepo;
import icu.samnyan.aqua.sega.general.BaseHandler;
import icu.samnyan.aqua.sega.ongeki.model.gamedata.GamePresent;
import icu.samnyan.aqua.sega.ongeki.model.GamePresent;
import icu.samnyan.aqua.sega.util.jackson.BasicMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

View File

@ -3,7 +3,7 @@ package icu.samnyan.aqua.sega.ongeki.handler.impl;
import com.fasterxml.jackson.core.JsonProcessingException;
import icu.samnyan.aqua.sega.ongeki.OgkGameRewardRepo;
import icu.samnyan.aqua.sega.general.BaseHandler;
import icu.samnyan.aqua.sega.ongeki.model.gamedata.GameReward;
import icu.samnyan.aqua.sega.ongeki.model.GameReward;
import icu.samnyan.aqua.sega.util.jackson.BasicMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

View File

@ -0,0 +1,118 @@
package icu.samnyan.aqua.sega.ongeki.model
import com.fasterxml.jackson.annotation.JsonIgnore
import icu.samnyan.aqua.sega.ongeki.model.common.GpProductID
import icu.samnyan.aqua.sega.ongeki.model.common.ItemType
import jakarta.persistence.*
import java.io.Serializable
@Entity(name = "OngekiGameCard")
@Table(name = "ongeki_game_card")
class GameCard {
@Id
var id: Long = 0
var name: String = ""
var nickName: String = ""
var attribute: String = ""
var charaId = 0
var school: String = ""
var gakunen: String = ""
var rarity: String = ""
// csv
var levelParam: String = ""
var skillId = 0
var choKaikaSkillId = 0
var cardNumber: String = ""
var version: String = ""
}
@Entity(name = "OngekiGameChara")
@Table(name = "ongeki_game_chara")
class GameChara {
@Id
var id: Long = 0
var name: String = ""
var cv: String = ""
var modelId = 0
}
@Entity(name = "OngekiGameEvent")
@Table(name = "ongeki_game_event")
class GameEvent {
@Id
var id: Long = 0
}
@Entity(name = "OngekiGameMusic")
@Table(name = "ongeki_game_music")
class GameMusic {
@Id
var id: Long = 0
var name: String = ""
var sortName: String = ""
var artistName: String = ""
var genre: String = ""
var bossCardId = 0
var bossLevel = 0
var level0: String = ""
var level1: String = ""
var level2: String = ""
var level3: String = ""
var level4: String = ""
}
@Entity(name = "OngekiGamePoint")
@Table(name = "ongeki_game_point", uniqueConstraints = [UniqueConstraint(columnNames = ["type"])])
class GamePoint(@field:Enumerated(EnumType.ORDINAL) var type: GpProductID, var cost: Int) :
Serializable {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@JsonIgnore
var id: Long = 0
val startDate = "2000-01-01 05:00:00.0"
val endDate = "2099-01-01 05:00:00.0"
}
@Entity(name = "OngekiGamePresent")
@Table(name = "ongeki_game_present")
class GamePresent(
presentId: Int, var presentName: String, var rewardId: Int, // count
var stock: Int, // acquisitionCondition
var message: String
) :
Serializable {
@Id
@Column(name = "id")
var presentId = presentId.toLong()
val startDate = "2000-01-01 05:00:00.0"
val endDate = "2099-01-01 05:00:00.0"
}
@Entity(name = "OngekiGameReward")
@Table(name = "ongeki_game_reward")
class GameReward(
rewardId: Int,
@field:Enumerated(EnumType.ORDINAL) var itemKind: ItemType,
var itemId: Int
) {
@Id
@Column(name = "id")
var rewardId = rewardId.toLong()
}
@Entity(name = "OngekiGameSkill")
@Table(name = "ongeki_game_skill")
class GameSkill {
@Id
var id: Long = 0
var name: String = ""
var category: String = ""
var info: String = ""
}

View File

@ -2,7 +2,6 @@ package icu.samnyan.aqua.sega.ongeki.model
import com.fasterxml.jackson.annotation.JsonIgnore
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonPropertyOrder
import com.fasterxml.jackson.databind.annotation.JsonSerialize
import icu.samnyan.aqua.net.games.*
import icu.samnyan.aqua.sega.general.model.Card

View File

@ -1,52 +0,0 @@
package icu.samnyan.aqua.sega.ongeki.model.gamedata;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import jakarta.persistence.Entity;
import jakarta.persistence.Id;
import jakarta.persistence.Table;
import java.io.Serializable;
/**
* @author samnyan (privateamusement@protonmail.com)
*/
@Entity(name = "OngekiGameCard")
@Table(name = "ongeki_game_card")
@Data
@NoArgsConstructor
@AllArgsConstructor
public class GameCard implements Serializable {
private static final long serialVersionUID = 1L;
@Id
private long id;
private String name;
private String nickName;
private String attribute;
private int charaId;
private String school;
private String gakunen;
private String rarity;
// csv
private String levelParam;
private int skillId;
private int choKaikaSkillId;
private String cardNumber;
private String version;
}

View File

@ -1,33 +0,0 @@
package icu.samnyan.aqua.sega.ongeki.model.gamedata;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import jakarta.persistence.Entity;
import jakarta.persistence.Id;
import jakarta.persistence.Table;
import java.io.Serializable;
/**
* @author samnyan (privateamusement@protonmail.com)
*/
@Entity(name = "OngekiGameChara")
@Table(name = "ongeki_game_chara")
@Data
@NoArgsConstructor
@AllArgsConstructor
public class GameChara implements Serializable {
private static final long serialVersionUID = 1L;
@Id
private long id;
private String name;
private String cv;
private int modelId;
}

View File

@ -1,26 +0,0 @@
package icu.samnyan.aqua.sega.ongeki.model.gamedata;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import jakarta.persistence.Entity;
import jakarta.persistence.Id;
import jakarta.persistence.Table;
import java.io.Serializable;
/**
* @author samnyan (privateamusement@protonmail.com)
*/
@Entity(name = "OngekiGameEvent")
@Table(name = "ongeki_game_event")
@Data
@NoArgsConstructor
@AllArgsConstructor
public class GameEvent implements Serializable {
private static final long serialVersionUID = 1L;
@Id
private long id;
}

View File

@ -1,49 +0,0 @@
package icu.samnyan.aqua.sega.ongeki.model.gamedata;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import jakarta.persistence.Entity;
import jakarta.persistence.Id;
import jakarta.persistence.Table;
import java.io.Serializable;
/**
* @author samnyan (privateamusement@protonmail.com)
*/
@Entity(name = "OngekiGameMusic")
@Table(name = "ongeki_game_music")
@Data
@NoArgsConstructor
@AllArgsConstructor
public class GameMusic implements Serializable {
private static final long serialVersionUID = 1L;
@Id
private long id;
private String name;
private String sortName;
private String artistName;
private String genre;
private int bossCardId;
private int bossLevel;
private String level0;
private String level1;
private String level2;
private String level3;
private String level4;
}

View File

@ -1,42 +0,0 @@
package icu.samnyan.aqua.sega.ongeki.model.gamedata;
import com.fasterxml.jackson.annotation.JsonIgnore;
import icu.samnyan.aqua.sega.ongeki.model.common.GpProductID;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import jakarta.persistence.*;
import java.io.Serializable;
/**
* @author samnyan (privateamusement@protonmail.com)
*/
@Entity(name = "OngekiGamePoint")
@Table(name = "ongeki_game_point", uniqueConstraints = {@UniqueConstraint(columnNames = {"type"})})
@Data
@NoArgsConstructor
@AllArgsConstructor
public class GamePoint implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@JsonIgnore
private long id;
@Enumerated(EnumType.ORDINAL)
private GpProductID type;
private int cost;
private String startDate = "2000-01-01 05:00:00.0";
private String endDate = "2099-01-01 05:00:00.0";
public GamePoint(GpProductID type, int cost) {
this.type = type;
this.cost = cost;
}
}

View File

@ -1,47 +0,0 @@
package icu.samnyan.aqua.sega.ongeki.model.gamedata;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import jakarta.persistence.*;
import java.io.Serializable;
/**
* @author samnyan (privateamusement@protonmail.com)
*/
@Entity(name = "OngekiGamePresent")
@Table(name = "ongeki_game_present")
@Data
@NoArgsConstructor
@AllArgsConstructor
public class GamePresent implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Column(name = "id")
private long presentId;
private String presentName;
private int rewardId;
// count
private int stock;
// acquisitionCondition
private String message;
private String startDate = "2000-01-01 05:00:00.0";
private String endDate = "2099-01-01 05:00:00.0";
public GamePresent(int presentId, String presentName, int rewardId, int stock, String message) {
this.presentId = presentId;
this.presentName = presentName;
this.rewardId = rewardId;
this.stock = stock;
this.message = message;
}
}

View File

@ -1,37 +0,0 @@
package icu.samnyan.aqua.sega.ongeki.model.gamedata;
import icu.samnyan.aqua.sega.ongeki.model.common.ItemType;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import jakarta.persistence.*;
import java.io.Serializable;
/**
* @author samnyan (privateamusement@protonmail.com)
*/
@Entity(name = "OngekiGameReward")
@Table(name = "ongeki_game_reward")
@Data
@NoArgsConstructor
@AllArgsConstructor
public class GameReward implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Column(name = "id")
private long rewardId;
@Enumerated(EnumType.ORDINAL)
private ItemType itemKind;
private int itemId;
public GameReward(int rewardId, ItemType itemKind, int itemId) {
this.rewardId = rewardId;
this.itemKind = itemKind;
this.itemId = itemId;
}
}

View File

@ -1,33 +0,0 @@
package icu.samnyan.aqua.sega.ongeki.model.gamedata;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import jakarta.persistence.Entity;
import jakarta.persistence.Id;
import jakarta.persistence.Table;
import java.io.Serializable;
/**
* @author samnyan (privateamusement@protonmail.com)
*/
@Entity(name = "OngekiGameSkill")
@Table(name = "ongeki_game_skill")
@Data
@NoArgsConstructor
@AllArgsConstructor
public class GameSkill implements Serializable {
private static final long serialVersionUID = 1L;
@Id
private long id;
private String name;
private String category;
private String info;
}