add save child name
This commit is contained in:
parent
1a6dc0214e
commit
9d45d6b0e7
3 changed files with 235 additions and 192 deletions
|
|
@ -89,10 +89,16 @@ export class PersonalController extends Controller {
|
||||||
personalData.child4 = requestBody.child4;
|
personalData.child4 = requestBody.child4;
|
||||||
|
|
||||||
personalData.rootDna = requestBody.rootDna;
|
personalData.rootDna = requestBody.rootDna;
|
||||||
personalData.child1Dna = requestBody.child1Dna;
|
personalData.child1Dna = requestBody.orgChild1Dna;
|
||||||
personalData.child2Dna = requestBody.child2Dna;
|
personalData.child2Dna = requestBody.orgChild2Dna;
|
||||||
personalData.child3Dna = requestBody.child3Dna;
|
personalData.child3Dna = requestBody.orgChild3Dna;
|
||||||
personalData.child4Dna = requestBody.child4Dna;
|
personalData.child4Dna = requestBody.orgChild4Dna;
|
||||||
|
|
||||||
|
const getFieldValue = (field: string | null | undefined): string => field ?? "";
|
||||||
|
personalData.orgChild1Name = getFieldValue(requestBody.orgChild1Name);
|
||||||
|
personalData.orgChild2Name = getFieldValue(requestBody.orgChild2Name);
|
||||||
|
personalData.orgChild3Name = getFieldValue(requestBody.orgChild3Name);
|
||||||
|
personalData.orgChild4Name = getFieldValue(requestBody.orgChild4Name);
|
||||||
|
|
||||||
const before = null;
|
const before = null;
|
||||||
const personal = await this.personalRepository.save(personalData, {
|
const personal = await this.personalRepository.save(personalData, {
|
||||||
|
|
|
||||||
|
|
@ -1,230 +1,247 @@
|
||||||
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";
|
||||||
import { Survey } from "./Survey"
|
import { Survey } from "./Survey";
|
||||||
|
|
||||||
@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;
|
||||||
|
|
||||||
@Column({ nullable: true, comment: "id หน่วยงาน root", default: null })
|
@Column({ nullable: true, comment: "id หน่วยงาน root", default: null })
|
||||||
rootDna: string
|
rootDna: string;
|
||||||
|
|
||||||
@Column({ nullable: true, comment: "id หน่วยงาน child1", default: null })
|
@Column({ nullable: true, comment: "id หน่วยงาน child1", default: null })
|
||||||
child1Dna: string
|
child1Dna: string;
|
||||||
|
|
||||||
@Column({ nullable: true, comment: "id หน่วยงาน child2", default: null })
|
@Column({ nullable: true, comment: "id หน่วยงาน child2", default: null })
|
||||||
child2Dna: string
|
child2Dna: string;
|
||||||
|
|
||||||
@Column({ nullable: true, comment: "id หน่วยงาน child3", default: null })
|
@Column({ nullable: true, comment: "id หน่วยงาน child3", default: null })
|
||||||
child3Dna: string
|
child3Dna: string;
|
||||||
|
|
||||||
@Column({ nullable: true, comment: "id หน่วยงาน child4", default: null })
|
@Column({ nullable: true, comment: "id หน่วยงาน child4", default: null })
|
||||||
child4Dna: string
|
child4Dna: string;
|
||||||
|
|
||||||
@OneToMany(() => Assign, (assign: Assign) => assign.personal_id)
|
@Column({ nullable: true, comment: "ชื่อ หน่วยงาน child1", default: null })
|
||||||
@JoinColumn({ name: "id" })
|
orgChild1Name: string;
|
||||||
assign: Assign[]
|
|
||||||
|
|
||||||
@OneToOne(() => Appoint, appoint => appoint.personal)
|
@Column({ nullable: true, comment: "ชื่อ หน่วยงาน child2", default: null })
|
||||||
@JoinColumn()
|
orgChild2Name: string;
|
||||||
appoint: Appoint
|
|
||||||
|
|
||||||
@OneToOne(() => Survey, { nullable: true })
|
@Column({ nullable: true, comment: "ชื่อ หน่วยงาน child3", default: null })
|
||||||
survey: Survey | null
|
orgChild3Name: string;
|
||||||
|
|
||||||
|
@Column({ nullable: true, comment: "ชื่อ หน่วยงาน child4", default: null })
|
||||||
|
orgChild4Name: string;
|
||||||
|
|
||||||
|
@OneToMany(() => Assign, (assign: Assign) => assign.personal_id)
|
||||||
|
@JoinColumn({ name: "id" })
|
||||||
|
assign: Assign[];
|
||||||
|
|
||||||
|
@OneToOne(() => Appoint, (appoint) => appoint.personal)
|
||||||
|
@JoinColumn()
|
||||||
|
appoint: Appoint;
|
||||||
|
|
||||||
|
@OneToOne(() => Survey, { nullable: true })
|
||||||
|
survey: Survey | null;
|
||||||
}
|
}
|
||||||
|
|
||||||
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;
|
||||||
|
|
||||||
rootDna?: string | null
|
rootDna?: string | null;
|
||||||
child1Dna?: string | null
|
child1Dna?: string | null;
|
||||||
child2Dna?: string | null
|
child2Dna?: string | null;
|
||||||
child3Dna?: string | null
|
child3Dna?: string | null;
|
||||||
child4Dna?: string | null
|
child4Dna?: string | null;
|
||||||
|
|
||||||
|
orgChild1Dna?: string | null;
|
||||||
|
orgChild2Dna?: string | null;
|
||||||
|
orgChild3Dna?: string | null;
|
||||||
|
orgChild4Dna?: string | null;
|
||||||
}
|
}
|
||||||
|
|
||||||
export type UpdatePersonal = Partial<CreatePersonal>
|
export type UpdatePersonal = Partial<CreatePersonal>;
|
||||||
|
|
|
||||||
20
src/migration/1749186876022-personal-add-child-name.ts
Normal file
20
src/migration/1749186876022-personal-add-child-name.ts
Normal file
|
|
@ -0,0 +1,20 @@
|
||||||
|
import { MigrationInterface, QueryRunner } from "typeorm";
|
||||||
|
|
||||||
|
export class PersonalAddChildName1749186876022 implements MigrationInterface {
|
||||||
|
name = 'PersonalAddChildName1749186876022'
|
||||||
|
|
||||||
|
public async up(queryRunner: QueryRunner): Promise<void> {
|
||||||
|
await queryRunner.query(`ALTER TABLE \`personal\` ADD \`orgChild1Name\` varchar(255) NULL COMMENT 'ชื่อ หน่วยงาน child1'`);
|
||||||
|
await queryRunner.query(`ALTER TABLE \`personal\` ADD \`orgChild2Name\` varchar(255) NULL COMMENT 'ชื่อ หน่วยงาน child2'`);
|
||||||
|
await queryRunner.query(`ALTER TABLE \`personal\` ADD \`orgChild3Name\` varchar(255) NULL COMMENT 'ชื่อ หน่วยงาน child3'`);
|
||||||
|
await queryRunner.query(`ALTER TABLE \`personal\` ADD \`orgChild4Name\` varchar(255) NULL COMMENT 'ชื่อ หน่วยงาน child4'`);
|
||||||
|
}
|
||||||
|
|
||||||
|
public async down(queryRunner: QueryRunner): Promise<void> {
|
||||||
|
await queryRunner.query(`ALTER TABLE \`personal\` DROP COLUMN \`orgChild4Name\``);
|
||||||
|
await queryRunner.query(`ALTER TABLE \`personal\` DROP COLUMN \`orgChild3Name\``);
|
||||||
|
await queryRunner.query(`ALTER TABLE \`personal\` DROP COLUMN \`orgChild2Name\``);
|
||||||
|
await queryRunner.query(`ALTER TABLE \`personal\` DROP COLUMN \`orgChild1Name\``);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue