ff-admin-server/src/entity/club/member/memberQualifications.ts
2025-02-01 13:11:10 +01:00

43 lines
1.1 KiB
TypeScript

import { Column, ColumnType, Entity, ManyToOne, PrimaryColumn } from "typeorm";
import { member } from "./member";
import { qualification } from "../../settings/qualification";
import { getTypeByORM } from "../../../migrations/ormHelper";
@Entity()
export class memberQualifications {
@PrimaryColumn({ generated: "increment", type: "int" })
id: number;
@Column({ type: "varchar", length: 255, nullable: true })
note?: string;
@Column({ type: getTypeByORM("date").type as ColumnType })
start: Date;
@Column({ type: getTypeByORM("date").type as ColumnType, nullable: true })
end?: Date;
@Column({ type: "varchar", length: 255, nullable: true })
terminationReason?: string;
@Column()
memberId: string;
@Column()
qualificationId: number;
@ManyToOne(() => member, (member) => member.awards, {
nullable: false,
onDelete: "CASCADE",
onUpdate: "RESTRICT",
})
member: member;
@ManyToOne(() => qualification, (qualification) => qualification.members, {
nullable: false,
onDelete: "RESTRICT",
onUpdate: "RESTRICT",
cascade: ["insert"],
})
qualification: qualification;
}