Merge branch 'develop' into adiDev

This commit is contained in:
AdisakKanthawilang 2024-10-03 15:14:47 +07:00
commit a16cc5e438
8 changed files with 220 additions and 46 deletions

View file

@ -2189,9 +2189,15 @@ export class DevelopmentController extends Controller {
reasonActual70: getDevelopment.reasonActual70,
reasonActual20: getDevelopment.reasonActual20,
reasonActual10: getDevelopment.reasonActual10,
isReasonActual70: getDevelopment.isReasonActual70,
isReasonActual20: getDevelopment.isReasonActual20,
isReasonActual10: getDevelopment.isReasonActual10,
reasonPlanned70: getDevelopment.reasonPlanned70,
reasonPlanned20: getDevelopment.reasonPlanned20,
reasonPlanned10: getDevelopment.reasonPlanned10,
isReasonPlanned70: getDevelopment.isReasonPlanned70,
isReasonPlanned20: getDevelopment.isReasonPlanned20,
isReasonPlanned10: getDevelopment.isReasonPlanned10,
developmentProjectTechniqueActuals: getDevelopment.developmentProjectTechniqueActuals
.map((x) => x.name)
.sort(),
@ -2244,6 +2250,9 @@ export class DevelopmentController extends Controller {
reasonActual70: getDevelopment.reasonActual70,
reasonActual20: getDevelopment.reasonActual20,
reasonActual10: getDevelopment.reasonActual10,
isReasonActual70: getDevelopment.isReasonActual70,
isReasonActual20: getDevelopment.isReasonActual20,
isReasonActual10: getDevelopment.isReasonActual10,
developmentProjectTechniqueActuals: getDevelopment.developmentProjectTechniqueActuals
.map((x) => x.name)
.sort(),
@ -2344,6 +2353,7 @@ export class DevelopmentController extends Controller {
relations: ["posLevel", "posType", "employeePosLevel", "employeePosType"],
order: {
isDone: "ASC",
isDoneIDP: "ASC",
citizenId: "ASC",
},
});
@ -2380,6 +2390,7 @@ export class DevelopmentController extends Controller {
dateStart: item.dateStart,
dateEnd: item.dateEnd,
isDone: item.isDone,
isDoneIDP: item.isDoneIDP,
isProfile: item.isProfile,
}));
return new HttpSuccess(_getDevelopment);
@ -2461,6 +2472,96 @@ export class DevelopmentController extends Controller {
return new HttpSuccess(getDevelopment);
}
/**
* API / tab6 IDP
*
* @summary DEV_00 - /tab6 IDP #
*
* @param {string} id Id
*/
@Get("tab6/done-idp/{id}")
async GetDevelopemtTab6IDPDoneById(@Path() id: string, @Request() request: RequestWithUser) {
const getDevelopment = await this.developmentHistoryRepository.find({
where: { developmentId: id, isDoneIDP: false },
relations: ["development", "development.developmentProjectTechniqueActuals"],
});
await Promise.all(
getDevelopment.map(async (x) => {
const _data = Object.assign(new DevelopmentHistory(), x);
if (x.type == "OFFICER") {
await new CallAPI()
.PostData(request, "/org/profile/development", {
type: "DEVELOP",
profileId: x.profileId,
name: x.development.projectName,
achievement10: null,
achievement5: null,
achievement0: null,
kpiDevelopmentId: x.development.id,
reasonDevelopment70: x.development.reasonActual70,
reasonDevelopment20: x.development.reasonActual20,
reasonDevelopment10: x.development.reasonActual10,
isDevelopment70: x.development.isReasonActual70,
isDevelopment20: x.development.isReasonActual20,
isDevelopment10: x.development.isReasonActual10,
developmentTarget: null,
developmentResults: null,
developmentReport: null,
developmentProjects: x.development.developmentProjectTechniqueActuals.map(
(x) => x.name,
),
})
.then((x) => {
_data.isDoneIDP = true;
})
.catch((x) => {
_data.isDoneIDP = false;
});
} else if (x.type == "EMPLOYEE") {
await new CallAPI()
.PostData(request, "/org/profile-employee/development", {
type: "DEVELOP",
profileEmployeeId: x.profileId,
name: x.development.projectName,
achievement10: null,
achievement5: null,
achievement0: null,
kpiDevelopmentId: x.development.id,
reasonDevelopment70: x.development.reasonActual70,
reasonDevelopment20: x.development.reasonActual20,
reasonDevelopment10: x.development.reasonActual10,
isDevelopment70: false,
isDevelopment20: false,
isDevelopment10: false,
developmentTarget: null,
developmentResults: null,
developmentReport: null,
developmentProjects: x.development.developmentProjectTechniqueActuals.map(
(x) => x.name,
),
})
.then((x) => {
_data.isDoneIDP = true;
})
.catch((x) => {
_data.isDoneIDP = false;
});
}
_data.lastUpdateUserId = request.user.sub;
_data.lastUpdateFullName = request.user.name;
_data.lastUpdatedAt = new Date();
// addLogSequence(request, {
// action: "database",
// status: "success",
// description: "Store DevelopmentHistory.",
// });
await this.developmentHistoryRepository.save(_data, { data: request });
}),
);
return new HttpSuccess(getDevelopment);
}
/**
* API list
*
@ -2634,7 +2735,10 @@ export class DevelopmentController extends Controller {
});
} else if (item["ประเภท"] == "ลูกจ้างประจำ") {
await new CallAPI()
.GetData(request, `/org/unauthorize/employee-prem/citizen/${item["รหัสประจำตัวประชาชน"]}`)
.GetData(
request,
`/org/unauthorize/employee-prem/citizen/${item["รหัสประจำตัวประชาชน"]}`,
)
.then(async (x: any) => {
let development = Object.assign(new DevelopmentHistory(), x);
development.dateStart =