diff --git a/src/controllers/DevelopmentController.ts b/src/controllers/DevelopmentController.ts index 77986d2..0642d60 100644 --- a/src/controllers/DevelopmentController.ts +++ b/src/controllers/DevelopmentController.ts @@ -1551,7 +1551,7 @@ export class DevelopmentController extends Controller { if (!development) { throw new HttpError(HttpStatusCode.NOT_FOUND, "ไม่พบข้อมูลโครงการ/หลักสูตรการฝึกอบรมนี้"); } - Object.assign(development, { ...requestBody, developmentAddresss: [] }); + Object.assign(development, { ...requestBody}); development.lastUpdateUserId = request.user.sub; development.lastUpdateFullName = request.user.name; development.lastUpdatedAt = new Date(); @@ -1946,6 +1946,9 @@ export class DevelopmentController extends Controller { developmentProjectTechniqueActuals: true, developmentEvaluations: true, developmentAddresss: true, + developmentRisks: true, + developmentHistorys: true, + developmentOthers: true, }, }); if (!development) { @@ -1959,92 +1962,46 @@ export class DevelopmentController extends Controller { const plannedGoalPosition = await this.plannedGoalPositionRepository.find({ where: { plannedGoalId: In(development.developmentPlannedGoals.map((x) => x.id)) }, }); - // addLogSequence(request, { - // action: "remove", - // status: "success", - // description: "Remove PlannedGoalPosition.", - // }); await this.plannedGoalPositionRepository.remove(plannedGoalPosition, { data: request }); } - // addLogSequence(request, { - // action: "remove", - // status: "success", - // description: "Remove ActualPeople.", - // }); await this.actualPeopleRepository.remove(development.developmentActualPeoples, { data: request, }); - // addLogSequence(request, { - // action: "remove", - // status: "success", - // description: "Remove PlannedPeople.", - // }); await this.plannedPeopleRepository.remove(development.developmentPlannedPeoples, { data: request, }); - // addLogSequence(request, { - // action: "remove", - // status: "success", - // description: "Remove ActualGoal.", - // }); await this.actualGoalRepository.remove(development.developmentActualGoals, { data: request }); - // addLogSequence(request, { - // action: "remove", - // status: "success", - // description: "Remove PlannedGoal.", - // }); await this.plannedGoalRepository.remove(development.developmentPlannedGoals, { data: request }); - // addLogSequence(request, { - // action: "remove", - // status: "success", - // description: "Remove DevelopmentProjectType.", - // }); await this.developmentProjectTypeRepository.remove(development.developmentProjectTypes, { data: request, }); - // addLogSequence(request, { - // action: "remove", - // status: "success", - // description: "Remove DevelopmentProjectTechniquePlanned.", - // }); await this.developmentProjectTechniquePlannedRepository.remove( development.developmentProjectTechniquePlanneds, { data: request, }, ); - // addLogSequence(request, { - // action: "remove", - // status: "success", - // description: "Remove DevelopmentProjectTechniqueActuals.", - // }); await this.developmentProjectTechniqueActualRepository.remove( development.developmentProjectTechniqueActuals, { data: request, }, ); - // addLogSequence(request, { - // action: "remove", - // status: "success", - // description: "Remove DevelopmentEvaluation.", - // }); await this.developmentEvaluationRepository.remove(development.developmentEvaluations, { data: request, }); - // addLogSequence(request, { - // action: "remove", - // status: "success", - // description: "Remove DevelopmentAddresss.", - // }); await this.developmentAddresssRepository.remove(development.developmentAddresss, { data: request, }); - // addLogSequence(request, { - // action: "remove", - // status: "success", - // description: "Remove Development.", - // }); + await this.developmentRiskRepository.remove(development.developmentRisks, { + data: request, + }); + await this.developmentHistoryRepository.remove(development.developmentHistorys, { + data: request, + }); + await this.developmentOtherRepository.remove(development.developmentOthers, { + data: request, + }); await this.developmentRepository.remove(development, { data: request }); return new HttpSuccess(); } @@ -2786,7 +2743,7 @@ export class DevelopmentController extends Controller { techniqueActuals.length > 0 && dev20Lists.some((item) => techniqueActuals.includes(item)); isDevelopment10 = techniqueActuals.length > 0 && dev10Lists.some((item) => techniqueActuals.includes(item)); - + if (x.type == "OFFICER") { await new CallAPI() .PostData(request, "/org/profile/development", { diff --git a/src/controllers/DevelopmentEmployeeHistoryController.ts b/src/controllers/DevelopmentEmployeeHistoryController.ts index 2b8054f..007d978 100644 --- a/src/controllers/DevelopmentEmployeeHistoryController.ts +++ b/src/controllers/DevelopmentEmployeeHistoryController.ts @@ -276,6 +276,14 @@ export class DevelopmentEmployeeHistoryController extends Controller { keyword: `%${body.keyword}%`, }, ) + .orWhere( + body.keyword != null && body.keyword != "" + ? "CONCAT(employeePosType.posTypeShortName,' ',employeePosLevel.posLevelName) LIKE :keyword" + : "1=1", + { + keyword: `%${body.keyword}%`, + }, + ) .orWhere( body.keyword != null && body.keyword != "" ? "developmentHistory.position LIKE :keyword" @@ -403,6 +411,7 @@ export class DevelopmentEmployeeHistoryController extends Controller { dateStart: getDevelopment.development != null ? getDevelopment.development.dateStart : null, dateEnd: getDevelopment.development != null ? getDevelopment.development.dateEnd : null, totalDate: getDevelopment.development != null ? getDevelopment.development.totalDate : null, + trainingDays: getDevelopment.development != null ? getDevelopment.trainingDays : null, // addressAcademic: // getDevelopment.development != null ? getDevelopment.development.addressAcademic : null, // topicAcademic: diff --git a/src/controllers/DevelopmentHistoryController.ts b/src/controllers/DevelopmentHistoryController.ts index 5ab0f55..edb65eb 100644 --- a/src/controllers/DevelopmentHistoryController.ts +++ b/src/controllers/DevelopmentHistoryController.ts @@ -390,6 +390,7 @@ export class DevelopmentOfficerHistoryController extends Controller { dateStart: getDevelopment.development != null ? getDevelopment.development.dateStart : null, dateEnd: getDevelopment.development != null ? getDevelopment.development.dateEnd : null, totalDate: getDevelopment.development != null ? getDevelopment.development.totalDate : null, + trainingDays: getDevelopment.development != null ? getDevelopment.trainingDays : null, // addressAcademic: // getDevelopment.development != null ? getDevelopment.development.addressAcademic : null, // topicAcademic: diff --git a/src/controllers/PortfolioController.ts b/src/controllers/PortfolioController.ts index 294b7f6..eecf28a 100644 --- a/src/controllers/PortfolioController.ts +++ b/src/controllers/PortfolioController.ts @@ -103,6 +103,32 @@ export class PortfolioController extends Controller { return new HttpSuccess(_portfolio); } + /** + * API รายละเอียดรายการผลงาน ใช้แสดงในรายงาน ก.พ.7/ก.ก.1 + * + * @summary รายละเอียดรายการผลงาน ใช้แสดงในรายงาน ก.พ.7/ก.ก.1 + * + */ + @Get("kk1/{keycloak}") + async GetPortfolio(@Path() keycloak: string, @Request() request: RequestWithUser) { + const _portfolio = await this.portfolioRepository.find({ + where: { createdUserId: keycloak }, + select: [ + "name", + "createdAt" + ], + order: { createdAt: "DESC" }, + }); + const result = + _portfolio.map(x => ({ + name: x.name, + year: x.createdAt.getFullYear() > 2500 + ? x.createdAt.getFullYear() + : x.createdAt.getFullYear()+543 + })); + return new HttpSuccess(result); + } + /** * API สร้างรายการ body ผลงาน * diff --git a/src/entities/DevelopmentScholarship.ts b/src/entities/DevelopmentScholarship.ts index cd1c614..24745ae 100644 --- a/src/entities/DevelopmentScholarship.ts +++ b/src/entities/DevelopmentScholarship.ts @@ -606,7 +606,7 @@ export class CreateDevelopmentScholarship { posExecutive: string | null; posLevelId: string | null; posTypeId: string | null; - guarantorRootDnaId: string | null; + guarantorRootDnaId?: string | null; guarantorRootId: string | null; guarantorRoot: string | null; guarantorOrg: string | null;