diff --git a/src/controllers/ImportDataController.ts b/src/controllers/ImportDataController.ts index 0e4ada5c..de280f18 100644 --- a/src/controllers/ImportDataController.ts +++ b/src/controllers/ImportDataController.ts @@ -122,7 +122,7 @@ export class ImportDataController extends Controller { // } const existingProfile = await this.profileRepo.findOne({ - where: { citizenId: item.ID }, + where: { citizenId: item.id.toString() }, }); if (existingProfile) { profile.id = existingProfile.id; @@ -152,7 +152,7 @@ export class ImportDataController extends Controller { } let dateRetire = new Date(item.BORN); - profile.citizenId = item.ID == "" ? "" : item.ID; + profile.citizenId = item.id.toString() == "" ? "" : item.id.toString(); profile.rank = item.RANK_NAME == "" || item.RANK_NAME == "นาย" || @@ -1817,7 +1817,7 @@ export class ImportDataController extends Controller { rowCount++; const existingProfile = await this.profileRepo.findOne({ - where: { citizenId: item.ID }, + where: { citizenId: item.id.toString() }, }); if (existingProfile == null) { continue; diff --git a/src/controllers/OrganizationUnauthorizeController.ts b/src/controllers/OrganizationUnauthorizeController.ts index 0f9506b7..5ae837c2 100644 --- a/src/controllers/OrganizationUnauthorizeController.ts +++ b/src/controllers/OrganizationUnauthorizeController.ts @@ -16,6 +16,7 @@ import { ProfileAssessment } from "../entities/ProfileAssessment"; import { log } from "console"; import { format } from "path"; import { viewProfileEvaluation } from "../entities/view/viewProfileEvaluation"; +import { viewProfileEmployeeEvaluation } from "../entities/view/viewProfileEmployeeEvaluation"; @Route("api/v1/org/unauthorize") @Tags("OrganizationUnauthorize") @@ -30,6 +31,7 @@ export class OrganizationUnauthorizeController extends Controller { private profileEmpRepo = AppDataSource.getRepository(ProfileEmployee); private profileAssessmentRepo = AppDataSource.getRepository(ProfileAssessment); private viewProfileEvaluationRepo = AppDataSource.getRepository(viewProfileEvaluation); + private viewProfileEmployeeEvaluationRepo = AppDataSource.getRepository(viewProfileEmployeeEvaluation); /** * API รายชื่อราชการที่เลื่อนเงินเดือน (unauthorize) @@ -1200,24 +1202,23 @@ export class OrganizationUnauthorizeController extends Controller { // default: // throw new HttpError(HttpStatus.NOT_FOUND, "ไม่พบข้อมูล"); // } - - const lists = await this.viewProfileEvaluationRepo.find({ + let lists = null; + lists = await this.viewProfileEvaluationRepo.find({ // where:{ // ...condition // } }) - // if(conType == "EMPLOYEE"){ - // const lists = await this.viewProfileEmployeeEvaluationRepo.find({ - // }) - // } + if(conType == "EMPLOYEE"){ + lists = await this.viewProfileEmployeeEvaluationRepo.find({}) + } const groupData: any = {}; const year = new Date().getFullYear(); const years = [year, year - 1, year - 2, year - 3, year - 4]; lists.forEach((item: any) => { - if (!groupData[item.profileId]) { - groupData[item.profileId] = { - profileId: item.profileId, + if (!groupData[conType == "EMPLOYEE"?item.profileEmployeeId:item.profileId]) { + groupData[conType == "EMPLOYEE"?item.profileEmployeeId:item.profileId] = { + profileId: conType == "EMPLOYEE"?item.profileEmployeeId:item.profileId, yearAPR1: "-", periodAPR1: "-", resultAPR1: "-", yearOCT1: "-", periodOCT1: "-", resultOCT1: "-", yearAPR2: "-", periodAPR2: "-", resultAPR2: "-", @@ -1230,7 +1231,6 @@ export class OrganizationUnauthorizeController extends Controller { yearOCT5: "-", periodOCT5: "-", resultOCT5: "-" }; } - const yearIndex = years.indexOf(parseInt(item.year)); if (yearIndex !== -1) { const yearSuffix = yearIndex + 1; @@ -1238,40 +1238,39 @@ export class OrganizationUnauthorizeController extends Controller { const periodKey = `period${item.period}${yearSuffix}`; const resultKey = `result${item.period}${yearSuffix}`; - groupData[item.profileId][yearKey] = item.year; - groupData[item.profileId][periodKey] = item.period; - groupData[item.profileId][resultKey] = item.result; + groupData[conType == "EMPLOYEE"?item.profileEmployeeId:item.profileId][yearKey] = item.year; + groupData[conType == "EMPLOYEE"?item.profileEmployeeId:item.profileId][periodKey] = item.period; + groupData[conType == "EMPLOYEE"?item.profileEmployeeId:item.profileId][resultKey] = item.result; } }); - - const formattedResults = Object.values(groupData).map((item: any) => ({ - profileId: item.profileId, - yearAPR1: item.yearAPR1, - periodAPR1: item.periodAPR1, - resultAPR1: item.resultAPR1, - yearOCT1: item.yearOCT1, - periodOCT1: item.periodOCT1, - resultOCT1: item.resultOCT1, - yearAPR2: item.yearAPR2, - periodAPR2: item.periodAPR2, - resultAPR2: item.resultAPR2, - yearOCT2: item.yearOCT2, - periodOCT2: item.periodOCT2, - resultOCT2: item.resultOCT2, - yearAPR3: item.yearAPR3, - periodAPR3: item.periodAPR3, - resultAPR3: item.resultAPR3, - yearOCT3: item.yearOCT3, - periodOCT3: item.periodOCT3, - resultOCT3: item.resultOCT3, - yearAPR4: item.yearAPR4, - periodAPR4: item.periodAPR4, - resultAPR4: item.resultAPR4, - yearOCT4: item.yearOCT4, - periodOCT4: item.periodOCT4, - resultOCT4: item.resultOCT4, + const formattedResults = Object.values(groupData).map((x: any) => ({ + profileId: x.profileId, + yearAPR1: x.yearAPR1, + periodAPR1: x.periodAPR1, + resultAPR1: x.resultAPR1, + yearOCT1: x.yearOCT1, + periodOCT1: x.periodOCT1, + resultOCT1: x.resultOCT1, + yearAPR2: x.yearAPR2, + periodAPR2: x.periodAPR2, + resultAPR2: x.resultAPR2, + yearOCT2: x.yearOCT2, + periodOCT2: x.periodOCT2, + resultOCT2: x.resultOCT2, + yearAPR3: x.yearAPR3, + periodAPR3: x.periodAPR3, + resultAPR3: x.resultAPR3, + yearOCT3: x.yearOCT3, + periodOCT3: x.periodOCT3, + resultOCT3: x.resultOCT3, + yearAPR4: x.yearAPR4, + periodAPR4: x.periodAPR4, + resultAPR4: x.resultAPR4, + yearOCT4: x.yearOCT4, + periodOCT4: x.periodOCT4, + resultOCT4: x.resultOCT4, })); - + return new HttpSuccess(formattedResults); }