From d21704baaf0cb00055fe237587fa5443cc83d5b3 Mon Sep 17 00:00:00 2001 From: Kittapath Date: Wed, 17 Apr 2024 15:01:33 +0700 Subject: [PATCH] =?UTF-8?q?=E0=B9=80=E0=B8=9E=E0=B8=B4=E0=B9=88=E0=B8=A1?= =?UTF-8?q?=E0=B8=A7=E0=B8=B1=E0=B8=99=E0=B8=97=E0=B8=B5=E0=B9=88=E0=B8=AD?= =?UTF-8?q?=E0=B8=B1=E0=B8=9E=E0=B9=84=E0=B8=9F=E0=B8=A5=E0=B9=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/controllers/DevelopmentController.ts | 16 ++++-- .../DevelopmentEmployeeHistoryController.ts | 51 ++++++++++++------- .../DevelopmentHistoryController.ts | 2 + src/entities/DevelopmentHistory.ts | 24 +++++++++ ...23367-update_table_devhis_add_dateStart.ts | 16 ++++++ 5 files changed, 88 insertions(+), 21 deletions(-) create mode 100644 src/migration/1713340723367-update_table_devhis_add_dateStart.ts diff --git a/src/controllers/DevelopmentController.ts b/src/controllers/DevelopmentController.ts index 4a17ecb..cafa443 100644 --- a/src/controllers/DevelopmentController.ts +++ b/src/controllers/DevelopmentController.ts @@ -1643,6 +1643,8 @@ export class DevelopmentController extends Controller { trainingDays: item.trainingDays, commandNumber: item.order, commandDate: item.dateOrder, + dateStart: item.dateStart, + dateEnd: item.dateEnd, isDone: item.isDone, })); return new HttpSuccess(_getDevelopment); @@ -1674,12 +1676,12 @@ export class DevelopmentController extends Controller { topic: x.development == null ? null : x.development.topicAcademic, yearly: x.development == null ? null : x.development.year, place: x.development == null ? null : x.development.addressAcademic, - duration: x.development == null ? null : x.development.totalDate, + duration: x.trainingDays, department: x.development == null ? null : x.development.root, numberOrder: x.order, dateOrder: x.dateOrder, - startDate: x.development == null ? null : x.development.dateStart, - endDate: x.development == null ? null : x.development.dateEnd, + startDate: x.dateStart, + endDate: x.dateEnd, isDate: true, }) .then((x) => { @@ -1758,6 +1760,10 @@ export class DevelopmentController extends Controller { .GetData(request, `org/unauthorize/officer/citizen/${item["รหัสประจำตัวประชาชน"]}`) .then(async (x: any) => { let development = Object.assign(new DevelopmentHistory(), x); + development.dateStart = + item["วันที่เริ่มต้น"] == undefined ? null : item["วันที่เริ่มต้น"]; + development.dateEnd = + item["วันที่สิ้นสุด"] == undefined ? null : item["วันที่สิ้นสุด"]; development.order = item["เลขที่คำสั่ง/เลขที่หนังสืออนุมัติ"] == undefined ? null @@ -1783,6 +1789,10 @@ export class DevelopmentController extends Controller { .GetData(request, `org/unauthorize/employee/citizen/${item["รหัสประจำตัวประชาชน"]}`) .then(async (x: any) => { let development = Object.assign(new DevelopmentHistory(), x); + development.dateStart = + item["วันที่เริ่มต้น"] == undefined ? null : item["วันที่เริ่มต้น"]; + development.dateEnd = + item["วันที่สิ้นสุด"] == undefined ? null : item["วันที่สิ้นสุด"]; development.order = item["เลขที่คำสั่ง/เลขที่หนังสืออนุมัติ"] == undefined ? null diff --git a/src/controllers/DevelopmentEmployeeHistoryController.ts b/src/controllers/DevelopmentEmployeeHistoryController.ts index a5f8d6c..48ccdfd 100644 --- a/src/controllers/DevelopmentEmployeeHistoryController.ts +++ b/src/controllers/DevelopmentEmployeeHistoryController.ts @@ -200,14 +200,15 @@ export class DevelopmentEmployeeHistoryController extends Controller { .leftJoinAndSelect("developmentHistory.development", "development") .leftJoinAndSelect("developmentHistory.employeePosLevel", "employeePosLevel") .leftJoinAndSelect("developmentHistory.employeePosType", "employeePosType") - .andWhere(year != 0 && year != null && year != undefined ? "development.year = :year" : "1=1", { year: year }) + .andWhere( + year != 0 && year != null && year != undefined ? "development.year = :year" : "1=1", + { year: year }, + ) .andWhere("developmentHistory.type = :type", { type: type }) .andWhere( new Brackets((qb) => { qb.where( - keyword != null && keyword != "" - ? "developmentHistory.prefix LIKE :keyword" - : "1=1", + keyword != null && keyword != "" ? "developmentHistory.prefix LIKE :keyword" : "1=1", { keyword: `%${keyword}%`, }, @@ -245,9 +246,7 @@ export class DevelopmentEmployeeHistoryController extends Controller { }, ) .orWhere( - keyword != null && keyword != "" - ? "development.projectName LIKE :keyword" - : "1=1", + keyword != null && keyword != "" ? "development.projectName LIKE :keyword" : "1=1", { keyword: `%${keyword}%`, }, @@ -274,11 +273,11 @@ export class DevelopmentEmployeeHistoryController extends Controller { .skip((page - 1) * pageSize) .take(pageSize) .getManyAndCount(); - - const formattedData = development.map(item => ({ + + const formattedData = development.map((item) => ({ id: item.id, citizenId: item.citizenId, - fullName: item.prefix+item.firstName+" "+item.lastName, + fullName: item.prefix + item.firstName + " " + item.lastName, position: item.position, posType: item.employeePosType ? item.employeePosType.posTypeName : null, posLevel: item.employeePosLevel ? item.employeePosLevel.posLevelName : null, @@ -299,7 +298,7 @@ export class DevelopmentEmployeeHistoryController extends Controller { async GetDevelopemtHistoryById(@Path() id: string) { const type = "EMPLOYEE"; const getDevelopment = await this.developmentHistoryRepository.findOne({ - relations: ["development","employeePosLevel","employeePosType"], + relations: ["development", "employeePosLevel", "employeePosType"], where: { id: id, type: type }, }); if (!getDevelopment) { @@ -314,21 +313,37 @@ export class DevelopmentEmployeeHistoryController extends Controller { citizenId: getDevelopment.citizenId ? getDevelopment.citizenId : null, position: getDevelopment.position ? getDevelopment.position : null, posLevelId: getDevelopment.employeePosLevelId ? getDevelopment.employeePosLevelId : null, - posLevelName: getDevelopment.employeePosLevel.posLevelName ? getDevelopment.employeePosLevel.posLevelName : null, + posLevelName: getDevelopment.employeePosLevel.posLevelName + ? getDevelopment.employeePosLevel.posLevelName + : null, posTypeId: getDevelopment.employeePosTypeId ? getDevelopment.employeePosTypeId : null, - posTypeName: getDevelopment.employeePosType.posTypeName ? getDevelopment.employeePosType.posTypeName : null, + posTypeName: getDevelopment.employeePosType.posTypeName + ? getDevelopment.employeePosType.posTypeName + : null, developmentId: getDevelopment.developmentId ? getDevelopment.developmentId : null, order: getDevelopment.order ? getDevelopment.order : null, dateOrder: getDevelopment.dateOrder ? getDevelopment.dateOrder : null, + dateHisStart: getDevelopment.dateStart ? getDevelopment.dateStart : null, + dateHisEnd: getDevelopment.dateEnd ? getDevelopment.dateEnd : null, year: getDevelopment.development.year ? getDevelopment.development.year : null, - projectName: getDevelopment.development.projectName ? getDevelopment.development.projectName : null, + projectName: getDevelopment.development.projectName + ? getDevelopment.development.projectName + : null, dateStart: getDevelopment.development.dateStart ? getDevelopment.development.dateStart : null, dateEnd: getDevelopment.development.dateEnd ? getDevelopment.development.dateEnd : null, totalDate: getDevelopment.development.totalDate ? getDevelopment.development.totalDate : null, - addressAcademic: getDevelopment.development.addressAcademic ? getDevelopment.development.addressAcademic : null, - topicAcademic: getDevelopment.development.topicAcademic ? getDevelopment.development.topicAcademic : null, - dateStudyStart: getDevelopment.development.dateStudyStart ? getDevelopment.development.dateStudyStart : null, - dateStudyEnd: getDevelopment.development.dateStudyEnd ? getDevelopment.development.dateStudyEnd : null, + addressAcademic: getDevelopment.development.addressAcademic + ? getDevelopment.development.addressAcademic + : null, + topicAcademic: getDevelopment.development.topicAcademic + ? getDevelopment.development.topicAcademic + : null, + dateStudyStart: getDevelopment.development.dateStudyStart + ? getDevelopment.development.dateStudyStart + : null, + dateStudyEnd: getDevelopment.development.dateStudyEnd + ? getDevelopment.development.dateStudyEnd + : null, org: null, }; diff --git a/src/controllers/DevelopmentHistoryController.ts b/src/controllers/DevelopmentHistoryController.ts index 787c300..9f1fd7a 100644 --- a/src/controllers/DevelopmentHistoryController.ts +++ b/src/controllers/DevelopmentHistoryController.ts @@ -314,6 +314,8 @@ export class DevelopmentOfficerHistoryController extends Controller { developmentId: getDevelopment.developmentId ? getDevelopment.developmentId : null, order: getDevelopment.order ? getDevelopment.order : null, dateOrder: getDevelopment.dateOrder ? getDevelopment.dateOrder : null, + dateHisStart: getDevelopment.dateStart ? getDevelopment.dateStart : null, + dateHisEnd: getDevelopment.dateEnd ? getDevelopment.dateEnd : null, year: getDevelopment.development.year ? getDevelopment.development.year : null, projectName: getDevelopment.development.projectName ? getDevelopment.development.projectName diff --git a/src/entities/DevelopmentHistory.ts b/src/entities/DevelopmentHistory.ts index c279e47..33f0131 100644 --- a/src/entities/DevelopmentHistory.ts +++ b/src/entities/DevelopmentHistory.ts @@ -179,6 +179,22 @@ export class DevelopmentHistory extends EntityBase { }) order: string; + @Column({ + nullable: true, + type: "datetime", + comment: "วันที่เริ่มต้น", + default: null, + }) + dateStart: Date; + + @Column({ + nullable: true, + type: "datetime", + comment: "วันที่สิ้นสุด", + default: null, + }) + dateEnd: Date; + @Column({ nullable: true, type: "datetime", @@ -218,6 +234,10 @@ export class CreateDevelopmentHistory { order: string | null; @Column() dateOrder: Date | null; + @Column() + dateStart: Date | null; + @Column() + dateEnd: Date | null; } export class UpdateDevelopmentHistory { @@ -245,4 +265,8 @@ export class UpdateDevelopmentHistory { order: string | null; @Column() dateOrder: Date | null; + @Column() + dateStart: Date | null; + @Column() + dateEnd: Date | null; } diff --git a/src/migration/1713340723367-update_table_devhis_add_dateStart.ts b/src/migration/1713340723367-update_table_devhis_add_dateStart.ts new file mode 100644 index 0000000..1b3d4c7 --- /dev/null +++ b/src/migration/1713340723367-update_table_devhis_add_dateStart.ts @@ -0,0 +1,16 @@ +import { MigrationInterface, QueryRunner } from "typeorm"; + +export class UpdateTableDevhisAddDateStart1713340723367 implements MigrationInterface { + name = 'UpdateTableDevhisAddDateStart1713340723367' + + public async up(queryRunner: QueryRunner): Promise { + await queryRunner.query(`ALTER TABLE \`developmentHistory\` ADD \`dateStart\` datetime NULL COMMENT 'วันที่เริ่มต้น'`); + await queryRunner.query(`ALTER TABLE \`developmentHistory\` ADD \`dateEnd\` datetime NULL COMMENT 'วันที่สิ้นสุด'`); + } + + public async down(queryRunner: QueryRunner): Promise { + await queryRunner.query(`ALTER TABLE \`developmentHistory\` DROP COLUMN \`dateEnd\``); + await queryRunner.query(`ALTER TABLE \`developmentHistory\` DROP COLUMN \`dateStart\``); + } + +}