edit relation

This commit is contained in:
DESKTOP-2S5P7D1\Windows 10 2025-01-07 15:28:16 +07:00
parent 75b2340c93
commit 71d31eabe4
2 changed files with 327 additions and 367 deletions

View file

@ -1,232 +1,192 @@
import { import { CreateEvaluateCommander, EvaluateCommander } from "./EvaluateCommander"
CreateEvaluateCommander, import { Entity, Column, OneToMany, JoinColumn, PrimaryGeneratedColumn, ManyToOne } from "typeorm"
EvaluateCommander, import { EntityBase } from "./base/Base"
} from "./EvaluateCommander"; import { AssignCompetencyGroup, CreateAssignCompetencyGroup } from "./AssignCompetencyGroup"
import { import { CreateSurvel, Survey } from "./Survey"
Entity, import { AssignCompetency, CreateAssignCompetency } from "./AssignCompetency"
Column, import { AssignDirector, CreateAssignDirector } from "./AssignDirector"
OneToMany, import { AssignJob, CreateAssignJob } from "./AssignJob"
JoinColumn, import { AssignKnowledge, CreateAssignKnowledge } from "./AssignKnowledge"
PrimaryGeneratedColumn, import { AssignLaw, CreateAssignLaw } from "./AssignLaw"
ManyToOne, import { AssignOutput, CreateAssignOutput } from "./AssignOutput"
} from "typeorm"; import { AssignSkill, CreateAssignSkill } from "./AssignSkill"
import { EntityBase } from "./base/Base"; import { CreateEvaluateAchievement, EvaluateAchievement } from "./EvaluateAchievement"
import { import { CreateEvaluateAssessor, EvaluateAssessor } from "./EvaluateAssessor"
AssignCompetencyGroup, import { CreateEvaluateChairman, EvaluateChairman } from "./EvaluateChairman"
CreateAssignCompetencyGroup, import { CreateEvaluateResult, EvaluateResult } from "./EvaluateResult"
} from "./AssignCompetencyGroup"; import { Personal } from "./Personal"
import { CreateSurvel, Survey } from "./Survey";
import { AssignCompetency, CreateAssignCompetency } from "./AssignCompetency";
import { AssignDirector, CreateAssignDirector } from "./AssignDirector";
import { AssignJob, CreateAssignJob } from "./AssignJob";
import { AssignKnowledge, CreateAssignKnowledge } from "./AssignKnowledge";
import { AssignLaw, CreateAssignLaw } from "./AssignLaw";
import { AssignOutput, CreateAssignOutput } from "./AssignOutput";
import { AssignSkill, CreateAssignSkill } from "./AssignSkill";
import {
CreateEvaluateAchievement,
EvaluateAchievement,
} from "./EvaluateAchievement";
import { CreateEvaluateAssessor, EvaluateAssessor } from "./EvaluateAssessor";
import { CreateEvaluateChairman, EvaluateChairman } from "./EvaluateChairman";
import { CreateEvaluateResult, EvaluateResult } from "./EvaluateResult";
import { Personal } from "./Personal";
@Entity("assign") @Entity("assign")
export class Assign extends EntityBase { export class Assign extends EntityBase {
@PrimaryGeneratedColumn("uuid") @PrimaryGeneratedColumn("uuid")
id: string; id: string
@Column({ @Column({
nullable: false, nullable: false,
type: "uuid", type: "uuid",
comment: "Id ของบุคคล", comment: "Id ของบุคคล",
}) })
personal_id: string; personal_id: string
@Column({ @Column({
type: "int", type: "int",
nullable: false, nullable: false,
comment: "ครั้งที่แบบมอบหมายงาน", comment: "ครั้งที่แบบมอบหมายงาน",
default: 0, default: 0,
}) })
round_no!: number; round_no!: number
@Column({ @Column({
type: "date", type: "date",
nullable: false, nullable: false,
comment: "วันที่เริ่มทดลองงาน", comment: "วันที่เริ่มทดลองงาน",
}) })
date_start: Date; date_start: Date
@Column({ @Column({
type: "date", type: "date",
nullable: false, nullable: false,
comment: "วันที่สิ้นสุดทดลองงาน", comment: "วันที่สิ้นสุดทดลองงาน",
}) })
date_finish: Date; date_finish: Date
@Column({ @Column({
type: "longtext", type: "longtext",
nullable: true, nullable: true,
comment: "อื่นๆ(3.5)", comment: "อื่นๆ(3.5)",
default: null, default: null,
}) })
other4_desc!: string; other4_desc!: string
@Column({ @Column({
type: "longtext", type: "longtext",
nullable: true, nullable: true,
comment: "อื่นๆ(5.2)", comment: "อื่นๆ(5.2)",
default: null, default: null,
}) })
other5_no1_desc!: string; other5_no1_desc!: string
@Column({ @Column({
type: "date", type: "date",
nullable: true, nullable: true,
comment: "ผู้ทดลองปฏิบัติหน้าที่ราชการลงวันที่", comment: "ผู้ทดลองปฏิบัติหน้าที่ราชการลงวันที่",
}) })
experimenter_dated!: Date; experimenter_dated!: Date
@Column({ @Column({
nullable: false, nullable: false,
comment: "สถานะการใช้งาน 1 คือใช้งานปกติ, 0 คือไม่ใช้งาน", comment: "สถานะการใช้งาน 1 คือใช้งานปกติ, 0 คือไม่ใช้งาน",
default: 1, default: 1,
}) })
active: number; active: number
@Column({ @Column({
nullable: true, nullable: true,
comment: "กฎหมายอื่นๆ", comment: "กฎหมายอื่นๆ",
}) })
other_desc!: string; other_desc!: string
@Column({ @Column({
nullable: true, nullable: true,
comment: "Id ของการแต่งตั้งคณะกรรมการ", comment: "Id ของการแต่งตั้งคณะกรรมการ",
}) })
appointId: string; appointId: string
@ManyToOne(() => Personal, (person: Personal) => person.personal_id) @ManyToOne(() => Personal, (person: Personal) => person.assign)
@JoinColumn({ name: "personal_id" }) @JoinColumn({ name: "personal_id" })
profile: Personal; profile: Personal
@OneToMany( @OneToMany(() => AssignCompetencyGroup, (competencyGroup: AssignCompetencyGroup) => competencyGroup.assign)
() => AssignCompetencyGroup, @JoinColumn({ name: "id" })
(competencyGroup: AssignCompetencyGroup) => competencyGroup.assign competencyGroups: AssignCompetencyGroup[]
)
@JoinColumn({ name: "id" })
competencyGroups: AssignCompetencyGroup[];
@OneToMany( @OneToMany(() => AssignCompetency, (competency: AssignCompetency) => competency.assign)
() => AssignCompetency, @JoinColumn({ name: "id" })
(competency: AssignCompetency) => competency.assign competencys: AssignCompetency[]
)
@JoinColumn({ name: "id" })
competencys: AssignCompetency[];
@OneToMany( @OneToMany(() => AssignDirector, (director: AssignDirector) => director.assign)
() => AssignDirector, @JoinColumn({ name: "id" })
(director: AssignDirector) => director.assign directors: AssignDirector[]
)
@JoinColumn({ name: "id" })
directors: AssignDirector[];
@OneToMany(() => AssignJob, (job: AssignJob) => job.assign) @OneToMany(() => AssignJob, (job: AssignJob) => job.assign)
@JoinColumn({ name: "id" }) @JoinColumn({ name: "id" })
jobs: AssignJob[]; jobs: AssignJob[]
@OneToMany( @OneToMany(() => AssignKnowledge, (knowledge: AssignKnowledge) => knowledge.assign)
() => AssignKnowledge, @JoinColumn({ name: "id" })
(knowledge: AssignKnowledge) => knowledge.assign knowledges: AssignKnowledge[]
)
@JoinColumn({ name: "id" })
knowledges: AssignKnowledge[];
@OneToMany(() => AssignLaw, (law: AssignLaw) => law.assign) @OneToMany(() => AssignLaw, (law: AssignLaw) => law.assign)
@JoinColumn({ name: "id" }) @JoinColumn({ name: "id" })
laws: AssignLaw[]; laws: AssignLaw[]
@OneToMany(() => AssignOutput, (output: AssignOutput) => output.assign) @OneToMany(() => AssignOutput, (output: AssignOutput) => output.assign)
@JoinColumn({ name: "id" }) @JoinColumn({ name: "id" })
outputs: AssignOutput[]; outputs: AssignOutput[]
@OneToMany(() => AssignSkill, (skill: AssignSkill) => skill.assign) @OneToMany(() => AssignSkill, (skill: AssignSkill) => skill.assign)
@JoinColumn({ name: "id" }) @JoinColumn({ name: "id" })
skills: AssignSkill[]; skills: AssignSkill[]
@OneToMany(() => Survey, (survey: Survey) => survey.assign) @OneToMany(() => Survey, (survey: Survey) => survey.assign)
@JoinColumn({ name: "id" }) @JoinColumn({ name: "id" })
surveys: Survey; surveys: Survey
@OneToMany( @OneToMany(() => EvaluateAchievement, (evaluateAchievement: EvaluateAchievement) => evaluateAchievement.assign)
() => EvaluateAchievement, @JoinColumn({ name: "id" })
(evaluateAchievement: EvaluateAchievement) => evaluateAchievement.assign evaluateAchievements: EvaluateAchievement
)
@JoinColumn({ name: "id" })
evaluateAchievements: EvaluateAchievement;
@OneToMany( @OneToMany(() => EvaluateAssessor, (evaluateAssessor: EvaluateAssessor) => evaluateAssessor.assign)
() => EvaluateAssessor, @JoinColumn({ name: "id" })
(evaluateAssessor: EvaluateAssessor) => evaluateAssessor.assign evaluateAssessors: EvaluateAssessor
)
@JoinColumn({ name: "id" })
evaluateAssessors: EvaluateAssessor;
@OneToMany( @OneToMany(() => EvaluateChairman, (evaluateChairman: EvaluateChairman) => evaluateChairman.assign)
() => EvaluateChairman, @JoinColumn({ name: "id" })
(evaluateChairman: EvaluateChairman) => evaluateChairman.assign evaluateChairmans: EvaluateChairman
)
@JoinColumn({ name: "id" })
evaluateChairmans: EvaluateChairman;
@OneToMany( @OneToMany(() => EvaluateCommander, (evaluateCommander: EvaluateCommander) => evaluateCommander.assign)
() => EvaluateCommander, @JoinColumn({ name: "id" })
(evaluateCommander: EvaluateCommander) => evaluateCommander.assign evaluateCommanders: EvaluateCommander
)
@JoinColumn({ name: "id" })
evaluateCommanders: EvaluateCommander;
@OneToMany(() => EvaluateResult, (result: EvaluateResult) => result.assign) @OneToMany(() => EvaluateResult, (result: EvaluateResult) => result.assign)
@JoinColumn({ name: "id" }) @JoinColumn({ name: "id" })
evaluateResults: EvaluateResult; evaluateResults: EvaluateResult
@Column({ @Column({
nullable: false, nullable: false,
comment: "id คณะกรรมการที่จะประเมินผล", comment: "id คณะกรรมการที่จะประเมินผล",
}) })
reportPersonId: string; reportPersonId: string
} }
export class CreateAssign { export class CreateAssign {
@Column() @Column()
date_start: Date; date_start: Date
@Column() @Column()
date_finish: Date; date_finish: Date
@Column() @Column()
other4_desc?: string; other4_desc?: string
@Column() @Column()
other5_no1_desc?: string; other5_no1_desc?: string
@Column() @Column()
experimenter_dated?: Date; experimenter_dated?: Date
@Column() @Column()
personalId?: string; personalId?: string
fullname?: string; fullname?: string
position?: string; position?: string
monthSelect?: number; monthSelect?: number
other_desc?: string; other_desc?: string
appointId?: string; appointId?: string
reportPersonId?: string; reportPersonId?: string
assign_competency_group: CreateAssignCompetencyGroup[]; assign_competency_group: CreateAssignCompetencyGroup[]
assign_competency: CreateAssignCompetency[]; assign_competency: CreateAssignCompetency[]
assign_director: CreateAssignDirector[]; assign_director: CreateAssignDirector[]
assign_jobs: CreateAssignJob[]; assign_jobs: CreateAssignJob[]
assign_knowledges: CreateAssignKnowledge[]; assign_knowledges: CreateAssignKnowledge[]
assign_law: CreateAssignLaw[]; assign_law: CreateAssignLaw[]
assign_outputs: CreateAssignOutput[]; assign_outputs: CreateAssignOutput[]
assign_skill: CreateAssignSkill[]; assign_skill: CreateAssignSkill[]
} }
export type UpdateAssign = Partial<CreateAssign>; export type UpdateAssign = Partial<CreateAssign>

View file

@ -1,205 +1,205 @@
import { Entity, Column, PrimaryGeneratedColumn, OneToOne, JoinColumn, OneToMany } from "typeorm"; import { Entity, Column, PrimaryGeneratedColumn, OneToOne, JoinColumn, OneToMany } from "typeorm"
import { EntityBase } from "./base/Base"; import { EntityBase } from "./base/Base"
import { Assign } from "./Assign"; import { Assign } from "./Assign"
import { Appoint } from "./Appoint"; import { Appoint } from "./Appoint"
@Entity("personal") @Entity("personal")
export class Personal extends EntityBase { export class Personal extends EntityBase {
@PrimaryGeneratedColumn("uuid") @PrimaryGeneratedColumn("uuid")
personal_id: string; personal_id: string
@Column({ @Column({
nullable: true, nullable: true,
comment: "เลขที่คำสั่งบรรจุ", comment: "เลขที่คำสั่งบรรจุ",
}) })
order_number!: string; order_number!: string
@Column({ @Column({
nullable: false, nullable: false,
comment: comment:
"1 อยู่ระหว่างการทดลองปฏิบัติหน้าที่ราชการ, 2 พ้นการทดลองปฏิบัติหน้าที่ราชการ, 3 ไม่พ้นการทดลองปฏิบัติหน้าที่ราชการ, 4 ยุติการทดลองปฏิบัติหน้าที่ราชการเนื่องจากเปลี่ยนตำแหน่ง, 5 ยุติการทดลองปฏิบัติหน้าที่ราชการเนื่องจากลาออก, 6 ยุติการทดลองปฏิบัติหน้าที่ราชการเนื่องจากถึงแก่กรรม, 7 ขยายระยะเวลาทดลองปฏิบัติหน้าที่ราชการ, 8 ดึงรายชื่อไปออกคำสั่งแล้ว", "1 อยู่ระหว่างการทดลองปฏิบัติหน้าที่ราชการ, 2 พ้นการทดลองปฏิบัติหน้าที่ราชการ, 3 ไม่พ้นการทดลองปฏิบัติหน้าที่ราชการ, 4 ยุติการทดลองปฏิบัติหน้าที่ราชการเนื่องจากเปลี่ยนตำแหน่ง, 5 ยุติการทดลองปฏิบัติหน้าที่ราชการเนื่องจากลาออก, 6 ยุติการทดลองปฏิบัติหน้าที่ราชการเนื่องจากถึงแก่กรรม, 7 ขยายระยะเวลาทดลองปฏิบัติหน้าที่ราชการ, 8 ดึงรายชื่อไปออกคำสั่งแล้ว",
default: 1, default: 1,
}) })
probation_status: number; probation_status: number
@Column({ @Column({
nullable: false, nullable: false,
comment: "สถานะการใช้งาน 1 คือใช้งานปกติ, 0 คือไม่ใช้งาน", comment: "สถานะการใช้งาน 1 คือใช้งานปกติ, 0 คือไม่ใช้งาน",
default: 1, default: 1,
}) })
active: number; active: number
@Column({ @Column({
nullable: true, nullable: true,
comment: "คำนำหน้าชื่อ", comment: "คำนำหน้าชื่อ",
}) })
prefixName: string; prefixName: string
@Column({ @Column({
nullable: false, nullable: false,
comment: "ชื่อ", comment: "ชื่อ",
}) })
firstName: string; firstName: string
@Column({ @Column({
nullable: false, nullable: false,
comment: "นามสกุล", comment: "นามสกุล",
}) })
lastName: string; lastName: string
@Column({ @Column({
type: Boolean, type: Boolean,
comment: "สถานะการทดลองงาน 1 คืออยู่ระหว่างการทดลองงาน, 0 คือไม่อยู่ระหว่างการทดลองงาน", comment: "สถานะการทดลองงาน 1 คืออยู่ระหว่างการทดลองงาน, 0 คือไม่อยู่ระหว่างการทดลองงาน",
default: 0, default: 0,
}) })
isProbation: number; isProbation: number
@Column({ @Column({
nullable: true, nullable: true,
comment: "ตำแหน่งในสายงาน", comment: "ตำแหน่งในสายงาน",
}) })
positionName: string; positionName: string
@Column({ @Column({
nullable: true, nullable: true,
comment: "เลขที่ตำแหน่ง", comment: "เลขที่ตำแหน่ง",
}) })
posNo: string; posNo: string
@Column({ @Column({
nullable: true, nullable: true,
comment: "ระดับตำแหน่ง", comment: "ระดับตำแหน่ง",
}) })
positionLevelName: string; positionLevelName: string
@Column({ @Column({
nullable: true, nullable: true,
comment: "ด้าน/สาขา", comment: "ด้าน/สาขา",
}) })
positionLineName: string; positionLineName: string
@Column({ @Column({
nullable: true, nullable: true,
comment: "ประเภทตำแหน่ง", comment: "ประเภทตำแหน่ง",
}) })
positionTypeName: string; positionTypeName: string
@Column({ @Column({
nullable: true, nullable: true,
comment: "หน่วยงาน", comment: "หน่วยงาน",
}) })
orgRootName: string; orgRootName: string
@Column({ @Column({
nullable: true, nullable: true,
comment: "สังกัด", comment: "สังกัด",
}) })
organization: string; organization: string
@Column({ @Column({
nullable: true, nullable: true,
comment: "เลขบัตรประจำตัวประชาชน", comment: "เลขบัตรประจำตัวประชาชน",
}) })
idcard: string; idcard: string
@Column({ nullable: true, comment: "id หน่วยงาน root", default: null }) @Column({ nullable: true, comment: "id หน่วยงาน root", default: null })
root: string; root: string
@Column({ nullable: true, comment: "id หน่วยงาน child1", default: null }) @Column({ nullable: true, comment: "id หน่วยงาน child1", default: null })
child1: string; child1: string
@Column({ nullable: true, comment: "id หน่วยงาน child2", default: null }) @Column({ nullable: true, comment: "id หน่วยงาน child2", default: null })
child2: string; child2: string
@Column({ nullable: true, comment: "id หน่วยงาน child3", default: null }) @Column({ nullable: true, comment: "id หน่วยงาน child3", default: null })
child3: string; child3: string
@Column({ nullable: true, comment: "id หน่วยงาน child4", default: null }) @Column({ nullable: true, comment: "id หน่วยงาน child4", default: null })
child4: string; child4: string
@OneToMany(() => Assign, (assign: Assign) => assign.personal_id) @OneToMany(() => Assign, (assign: Assign) => assign.personal_id)
@JoinColumn({ name: "personal_id" }) @JoinColumn({ name: "id" })
assign: Assign[]; assign: Assign[]
@OneToOne(() => Appoint, (appoint: Appoint) => appoint.profileId) @OneToOne(() => Appoint, (appoint: Appoint) => appoint.profileId)
@JoinColumn({ name: "personal_id" }) @JoinColumn({ name: "personal_id" })
appoint: Appoint; appoint: Appoint
} }
export class CreatePersonal { export class CreatePersonal {
@Column() @Column()
personal_id: string; personal_id: string
@Column() @Column()
order_number: string; order_number: string
@Column() @Column()
probation_status: number; probation_status: number
// @Column() // @Column()
// profiles: PersonalProfile; // profiles: PersonalProfile;
@Column() @Column()
createdUserId: string; createdUserId: string
@Column() @Column()
createdFullName: string; createdFullName: string
@Column() @Column()
updateUserId: string; updateUserId: string
@Column() @Column()
updateFullName: string; updateFullName: string
@Column() @Column()
prefixName: string; prefixName: string
@Column() @Column()
firstName: string; firstName: string
@Column() @Column()
lastName: string; lastName: string
@Column() @Column()
isProbation: number; isProbation: number
@Column() @Column()
positionName: string; positionName: string
@Column() @Column()
posNo: string; posNo: string
@Column() @Column()
positionLevelName: string; positionLevelName: string
@Column() @Column()
positionTypeName: string; positionTypeName: string
@Column() @Column()
positionLineName: string; positionLineName: string
@Column() @Column()
orgRootName: string; orgRootName: string
@Column() @Column()
organization: string; organization: string
@Column() @Column()
idcard: string; idcard: string
} }
export class PostPersonal { export class PostPersonal {
id: string; id: string
prefix: string; prefix: string
firstName: string; firstName: string
lastName: string; lastName: string
isProbation: boolean; isProbation: boolean
posTypeName?: string | null; posTypeName?: string | null
posLevelName: string | null; posLevelName: string | null
position: string | null; position: string | null
posLineName?: string | null; posLineName?: string | null
posNo?: string | null; posNo?: string | null
organization?: string; organization?: string
orgRootName: string | null; orgRootName: string | null
orgChild1Name?: string | null; orgChild1Name?: string | null
orgChild2Name?: string | null; orgChild2Name?: string | null
orgChild3Name?: string | null; orgChild3Name?: string | null
orgChild4Name?: string | null; orgChild4Name?: string | null
order_number?: string; order_number?: string
rank?: string | null; rank?: string | null
idcard?: string; idcard?: string
positionField?: string | null; positionField?: string | null
positionArea?: string | null; positionArea?: string | null
posExecutiveName?: string | null; posExecutiveName?: string | null
positionExecutiveField?: string | null; positionExecutiveField?: string | null
root?: string | null; root?: string | null
child1?: string | null; child1?: string | null
child2?: string | null; child2?: string | null
child3?: string | null; child3?: string | null
child4?: string | null; child4?: string | null
} }
export type UpdatePersonal = Partial<CreatePersonal>; export type UpdatePersonal = Partial<CreatePersonal>