diff --git a/src/controllers/KpiPlanController.ts b/src/controllers/KpiPlanController.ts index fb5bfa2..e3ee479 100644 --- a/src/controllers/KpiPlanController.ts +++ b/src/controllers/KpiPlanController.ts @@ -593,4 +593,22 @@ export class kpiPlanController extends Controller { return new HttpSuccess(); } + + /** + * API ประวัดิตัวชี้วัดิตามแผน + * @param id Guid, *Id ประวัดิตัวชี้วัดตามแผน + */ + @Get("history/{id}") + async GetHistory(@Path() id: string) { + const kpiPlanHistory = await this.kpiPlanHistoryRepository.find({ + where: { kpiPlanId: id }, + order:{ + createdAt: "ASC" + } + }); + if (!kpiPlanHistory) { + throw new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลประวัดิตัวชี้วัดตามแผนนี้"); + } + return new HttpSuccess(kpiPlanHistory); + } } diff --git a/src/controllers/KpiRoleController.ts b/src/controllers/KpiRoleController.ts index 8fe2922..485ab91 100644 --- a/src/controllers/KpiRoleController.ts +++ b/src/controllers/KpiRoleController.ts @@ -551,4 +551,22 @@ export class kpiRoleController extends Controller { } return new HttpSuccess(); } + + /** + * API ประวัดิตัวชี้วัดตามตำแหน่ง + * @param id Guid, *Id ประวัดิตัวชี้วัดตามตำแหน่ง + */ + @Get("history/{id}") + async GetHistory(@Path() id: string) { + const kpiRoleHistory = await this.kpiRoleHistoryRepository.find({ + where: { kpiRoleId: id }, + order:{ + createdAt: "ASC" + } + }); + if (!kpiRoleHistory) { + throw new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลประวัดิตัวชี้วัดตามตำแหน่งนี้"); + } + return new HttpSuccess(kpiRoleHistory); + } } diff --git a/src/controllers/KpiUserDevelopmentController.ts b/src/controllers/KpiUserDevelopmentController.ts index 5bc4ea3..b5b0cbf 100644 --- a/src/controllers/KpiUserDevelopmentController.ts +++ b/src/controllers/KpiUserDevelopmentController.ts @@ -27,7 +27,7 @@ import { import { KpiUserEvaluation } from "../entities/kpiUserEvaluation"; import { Not } from "typeorm"; - @Route("api/v1/kpi/user/achievement/Development") + @Route("api/v1/kpi/user/achievement/evelopment") @Tags("KpiUserDevelopment") @Security("bearerAuth") @Response( @@ -149,103 +149,65 @@ import { return new HttpSuccess(); } - // /** - // * API รายละเอียดพัฒนาตนเอง - // * - // * @summary - รายละเอียดพัฒนาตนเอง # - // * - // * @param {string} id Id พัฒนาตนเอง - // */ - // @Get("{id}") - // async GetKpiUserDevelopmentDetail(@Path() id: string) { - // const getKpiUserDevelopment = await this.kpiUserDevelopmentRepository.findOne({ - // relations: ["kpiUserEvaluation"], - // where: { id: id }, - // }); - // if (!getKpiUserDevelopment) { - // throw new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลพัฒนาตนเองนี้"); - // } + /** + * API รายละเอียดพัฒนาตนเอง + * + * @summary - รายละเอียดพัฒนาตนเอง # + * + * @param {string} id Id พัฒนาตนเอง + */ + @Get("{id}") + async GetKpiUserDevelopmentDetail(@Path() id: string) { + const getKpiUserDevelopment = await this.kpiUserDevelopmentRepository.findOne({ + relations: ["kpiUserEvaluation"], + where: { id: id }, + }); + if (!getKpiUserDevelopment) { + throw new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลพัฒนาตนเองนี้"); + } - // const mapKpiUserDevelopment = { - // id: getKpiUserDevelopment.id, - // evaluationId: getKpiUserDevelopment.kpiUserEvaluation.id, - // including: getKpiUserDevelopment.including, - // includingName: getKpiUserDevelopment.includingName, - // target: getKpiUserDevelopment.target, - // weight: getKpiUserDevelopment.weight, - // unit: getKpiUserDevelopment.unit, - // meaning: getKpiUserDevelopment.meaning, - // formula: getKpiUserDevelopment.formula, - // point: getKpiUserDevelopment.point, - // achievement: - // getKpiUserDevelopment.point === 1 - // ? getKpiUserDevelopment.achievement1 - // : getKpiUserDevelopment.point === 2 - // ? getKpiUserDevelopment.achievement2 - // : getKpiUserDevelopment.point === 3 - // ? getKpiUserDevelopment.achievement3 - // : getKpiUserDevelopment.point === 4 - // ? getKpiUserDevelopment.achievement4 - // : getKpiUserDevelopment.point === 5 - // ? getKpiUserDevelopment.achievement5 - // : null, - // achievement1: getKpiUserDevelopment.achievement1, - // achievement2: getKpiUserDevelopment.achievement2, - // achievement3: getKpiUserDevelopment.achievement3, - // achievement4: getKpiUserDevelopment.achievement4, - // achievement5: getKpiUserDevelopment.achievement5, - // }; + const mapKpiUserDevelopment = { + id: getKpiUserDevelopment.id, + evaluationId: getKpiUserDevelopment.kpiUserEvaluation.id, + target: getKpiUserDevelopment.target, + summary: getKpiUserDevelopment.summary, + name: getKpiUserDevelopment.name, + achievement10: getKpiUserDevelopment.achievement10, + achievement5: getKpiUserDevelopment.achievement5, + achievement0: getKpiUserDevelopment.achievement0, + }; - // return new HttpSuccess(mapKpiUserDevelopment); - // } + return new HttpSuccess(mapKpiUserDevelopment); + } - // /** - // * API รายการพัฒนาตนเอง - // * - // * @summary - รายการพัฒนาตนเอง # - // * - // */ - // @Get() - // async GetKpiUserDevelopment(@Query("id") id: string) { - // const kpiUserDevelopment = await this.kpiUserDevelopmentRepository.find({ - // where: { - // kpiUserEvaluationId: id, - // }, - // relations: ["kpiUserEvaluation"], - // order: { createdAt: "ASC" }, - // }); + /** + * API รายการพัฒนาตนเอง + * + * @summary - รายการพัฒนาตนเอง # + * + */ + @Get() + async GetKpiUserDevelopment(@Query("id") id: string) { + const kpiUserDevelopment = await this.kpiUserDevelopmentRepository.find({ + where: { + kpiUserEvaluationId: id, + }, + relations: ["kpiUserEvaluation"], + order: { createdAt: "ASC" }, + }); - // const mapKpiUserDevelopment = kpiUserDevelopment.map((item) => ({ - // id: item.id, - // evaluationId: item.kpiUserEvaluation.id, - // including: item.including, - // includingName: item.includingName, - // target: item.target, - // weight: item.weight, - // unit: item.unit, - // meaning: item.meaning, - // formula: item.formula, - // point: item.point, - // achievement: - // item.point === 1 - // ? item.achievement1 - // : item.point === 2 - // ? item.achievement2 - // : item.point === 3 - // ? item.achievement3 - // : item.point === 4 - // ? item.achievement4 - // : item.point === 5 - // ? item.achievement5 - // : null, - // achievement1: item.achievement1, - // achievement2: item.achievement2, - // achievement3: item.achievement3, - // achievement4: item.achievement4, - // achievement5: item.achievement5, - // })); - // return new HttpSuccess(mapKpiUserDevelopment); - // } + const mapKpiUserDevelopment = kpiUserDevelopment.map((item) => ({ + id: item.id, + evaluationId: item.kpiUserEvaluation.id, + target: item.target, + summary: item.summary, + name: item.name, + achievement10: item.achievement10, + achievement5: item.achievement5, + achievement0: item.achievement0, + })); + return new HttpSuccess(mapKpiUserDevelopment); + } /** * API กรอกระดับคะแนนงานตามแผนปฏิบัติราชการประจำปี diff --git a/src/controllers/KpiUserRoleController.ts b/src/controllers/KpiUserRoleController.ts index c0cb331..e89b0d0 100644 --- a/src/controllers/KpiUserRoleController.ts +++ b/src/controllers/KpiUserRoleController.ts @@ -198,6 +198,14 @@ export class KpiUserRoleController extends Controller { unit: getKpiUserRole.unit, meaning: getKpiUserRole.meaning, formula: getKpiUserRole.formula, + achievement1: getKpiUserRole.achievement1, + achievement2: getKpiUserRole.achievement2, + achievement3: getKpiUserRole.achievement3, + achievement4: getKpiUserRole.achievement4, + achievement5: getKpiUserRole.achievement5, + documentInfoEvidence: getKpiUserRole.documentInfoEvidence, + endDate: getKpiUserRole.endDate, + startDate: getKpiUserRole.startDate, }; return new HttpSuccess(mapKpiUserRole); diff --git a/src/entities/kpiUserDevelopment.ts b/src/entities/kpiUserDevelopment.ts index 3650569..ba3480b 100644 --- a/src/entities/kpiUserDevelopment.ts +++ b/src/entities/kpiUserDevelopment.ts @@ -80,58 +80,46 @@ export class KpiUserDevelopment extends EntityBase { export class CreateKpiUserDevelopment { @Column() - including: string | null; + name: string | null; @Column() - includingName: string | null; + target: string | null; @Column() - achievement1: string | null; + summary?: number | null; @Column() - achievement2: string | null; + achievement10?: string | null; @Column() - achievement3: string | null; + achievement5?: string | null; @Column() - achievement4: string | null; + achievement0?: string | null; @Column() - achievement5: string | null; + isDevelopment70: boolean; @Column() - target: string; + isDevelopment20: boolean; @Column() - unit: number; - @Column() - weight: number; - @Column() - meaning: string; - @Column() - formula: string; + isDevelopment10: boolean; @Column("uuid") kpiUserEvaluationId: string; } export class UpdateKpiUserDevelopment { @Column() - including: string | null; + name: string | null; @Column() - includingName: string | null; + target: string | null; @Column() - achievement1: string | null; + summary?: number | null; @Column() - achievement2: string | null; + achievement10?: string | null; @Column() - achievement3: string | null; + achievement5?: string | null; @Column() - achievement4: string | null; + achievement0?: string | null; @Column() - achievement5: string | null; + isDevelopment70: boolean; @Column() - target: string; + isDevelopment20: boolean; @Column() - unit: number; - @Column() - weight: number; - @Column() - meaning: string; - @Column() - formula: string; + isDevelopment10: boolean; @Column("uuid") kpiUserEvaluationId: string; }