import { AssignKnowledge } from "./AssignKnowledge"; import { Entity, Column, PrimaryGeneratedColumn, OneToMany, JoinColumn, } from "typeorm"; import { EntityBase } from "./base/Base"; export enum TypeKnowledge { PERFORMANCE = "performance", LAW = "law", } @Entity("knowledge") export class Knowledge extends EntityBase { @PrimaryGeneratedColumn() id: number; @Column({ nullable: false, type: "enum", enum: TypeKnowledge, default: TypeKnowledge.PERFORMANCE, comment: "หมวดหมู่ความรู้ performance คือความรู้ความสามารถ, law คือความรู้ด้านกฎหมาย", }) type: TypeKnowledge; @Column({ nullable: false, comment: "หัวข้อความรู้", }) title: string; @Column({ type: "text", nullable: true, comment: "คำอธิบายระดับความรู้ ระดับที่ 1", }) level1: string; @Column({ type: "text", nullable: true, comment: "คำอธิบายระดับความรู้ ระดับที่ 2", }) level2: string; @Column({ type: "text", nullable: true, comment: "คำอธิบายระดับความรู้ ระดับที่ 3", }) level3: string; @Column({ type: "text", nullable: true, comment: "คำอธิบายระดับความรู้ ระดับที่ 4", }) level4: string; @Column({ type: "text", nullable: true, comment: "คำอธิบายระดับความรู้ ระดับที่ 5", }) level5: string; @Column({ nullable: false, comment: "สถานะการใช้งาน 1 คือใช้งานปกติ, 0 คือไม่ใช้งาน", default: 1, }) active: number; @OneToMany( () => AssignKnowledge, (assignKnowledge: AssignKnowledge) => assignKnowledge.knowledge_id ) @JoinColumn({ name: "id" }) assignKnowledge: AssignKnowledge[]; }