81 lines
1.7 KiB
TypeScript
81 lines
1.7 KiB
TypeScript
import { AimeCard } from "../aimedb";
|
|
import { ConstructableBaseEntity } from "external/db/utils/constructable-base-entity";
|
|
import { HasIdCardVersion } from "external/db/utils/has-id-card-version";
|
|
import { Column, Entity, ManyToOne, PrimaryGeneratedColumn, Unique } from "typeorm";
|
|
import { integer } from "types/misc";
|
|
|
|
@Entity("chunithm_user_character")
|
|
@Unique(["card", "characterId"])
|
|
export class ChunithmUserCharacter extends ConstructableBaseEntity {
|
|
@PrimaryGeneratedColumn()
|
|
id!: integer;
|
|
|
|
@ManyToOne(() => AimeCard, { eager: true })
|
|
card!: AimeCard;
|
|
|
|
@Column()
|
|
characterId!: integer;
|
|
|
|
@Column()
|
|
skillId!: integer;
|
|
|
|
@Column({ default: 1 })
|
|
level!: integer;
|
|
|
|
@Column({ default: 0 })
|
|
param1!: integer;
|
|
|
|
@Column({ default: 0 })
|
|
param2!: integer;
|
|
|
|
@Column({ type: "boolean", default: true })
|
|
isValid!: boolean;
|
|
|
|
@Column({ type: "boolean", default: true })
|
|
isNewMark!: boolean;
|
|
|
|
@Column({ default: 0 })
|
|
playCount!: integer;
|
|
|
|
@Column({ default: 0 })
|
|
friendshipExp!: integer;
|
|
|
|
@Column({ default: 0 })
|
|
assignIllust!: integer;
|
|
|
|
@Column({ default: 0 })
|
|
exMaxLv!: integer;
|
|
}
|
|
|
|
@Entity("chunithm_user_item")
|
|
@Unique(["card", "itemId"])
|
|
export class ChunithmUserItem extends ConstructableBaseEntity {
|
|
@PrimaryGeneratedColumn()
|
|
id!: integer;
|
|
|
|
@ManyToOne(() => AimeCard, { eager: true })
|
|
card!: AimeCard;
|
|
|
|
@Column()
|
|
itemId!: integer;
|
|
|
|
@Column()
|
|
itemKind!: integer;
|
|
|
|
@Column({ default: 1 })
|
|
stock!: integer;
|
|
|
|
@Column({ type: "boolean", default: true })
|
|
isValid!: boolean;
|
|
}
|
|
|
|
@Entity("chunithm_user_favorite_item")
|
|
@Unique(["card", "version", "favId", "favKind"])
|
|
export class ChunithmUserFavoriteItem extends HasIdCardVersion {
|
|
@Column()
|
|
favId!: integer;
|
|
|
|
@Column()
|
|
favKind!: integer;
|
|
}
|