This commit is contained in:
AdisakKanthawilang 2025-08-08 10:59:27 +07:00
parent 32354f4258
commit 9fc6e5a419

View file

@ -1357,6 +1357,10 @@ export class ReportController extends Controller {
const userEvaluations_ = await Promise.all(
data.kpiUserEvaluations.length > 0
? data.kpiUserEvaluations.map(async (x: any, idx: number) => {
const target_ = await this.kpiUserDevelopmentRepository.findOne({
where: { kpiUserEvaluationId: x.id },
select: ["id","kpiUserEvaluationId","target","achievement0","achievement5","achievement10"],
});
/*รอ Fe เพิ่ม UI*/
// const target_ = await this.kpiUserDevelopmentRepository.findOne({
// where: { kpiUserEvaluationId: x.id },
@ -1380,9 +1384,17 @@ export class ReportController extends Controller {
posLevelName: x.posLevelName ? x.posLevelName : "-",
developName: x.topicEvaluator ? x.topicEvaluator : "-",
developEvaluator: x.developEvaluator ? x.developEvaluator : "-",
target: "-",
target: target_ ? target_.target: "-",
timeEvaluator: x.timeEvaluator ? Extension.ToThaiNumber(x.timeEvaluator) : "-",
developResults: "-",
developResults: target_
? [
target_.achievement10 ? `${target_.achievement10}(10)` : "",
target_.achievement5 ? `${target_.achievement5}(5)` : "",
target_.achievement0 ? `${target_.achievement0}(0)` : ""
]
.filter(Boolean)
.join("\n")
: "",
evaluationResults: x.evaluationResults
? Extension.EvaluationResult(x.evaluationResults)
: "-",
@ -1488,24 +1500,27 @@ export class ReportController extends Controller {
evaluationStatus: "KP7",
},
});
userDevelopmentLists = await this.kpiUserDevelopmentRepository.find({
where: {
kpiUserEvaluationId: In(profileEvaluationIds.map((x: any) => x.id)),
},
select: [
"id",
"name",
"target",
"summary",
"point",
"achievement0",
"achievement5",
"achievement10",
"isDevelopment10",
"isDevelopment20",
"isDevelopment70",
],
});
userDevelopmentLists = await this.kpiUserDevelopmentRepository
.createQueryBuilder("dev")
.leftJoinAndSelect("dev.kpiUserEvaluation", "eval")
.where("dev.kpiUserEvaluationId IN (:...ids)", { ids: profileEvaluationIds.map((x: any) => x.id) })
.select([
"dev.id",
"dev.name",
"dev.target",
"dev.summary",
"dev.point",
"dev.achievement0",
"dev.achievement5",
"dev.achievement10",
"dev.isDevelopment10",
"dev.isDevelopment20",
"dev.isDevelopment70",
"eval.developEvaluator",
"eval.timeEvaluator",
"eval.reasonEvaluator",
])
.getMany();
const dev10text = "การลงมือปฏิบัติ (โดยผู้บังคับบัญชามอบหมาย)";
const dev20text = "การเรียนรู้จากผู้อื่น (Coach/Mentor/Consulting)";
const dev70text = "การลงมือปฏิบัติ (โดยผู้บังคับบัญชามอบหมาย)";
@ -1514,18 +1529,41 @@ export class ReportController extends Controller {
formattedUserDevelopmentLists = userDevelopmentLists.map(
(development: any, index: number) => ({
no: Extension.ToThaiNumber((index + 1).toString()),
...development,
id: development.id,
name: development.name,
target: development.target,
summary: development.summary
? Extension.ToThaiNumber(development.summary.toString())
: null,
point: development.point
? Extension.ToThaiNumber(development.point.toString())
: null,
pointText: (development.point = 0
? development.achievement0
: (development.point == 5
? development.achievement5
: (development.point == 10 ? development.achievement10 : null))),
achievement0: development.achievement0,
achievement5: development.achievement5,
achievement10: development.achievement10,
developResults: development
? [
development.achievement10 ? `${development.achievement10}(10)` : "",
development.achievement5 ? `${development.achievement5}(5)` : "",
development.achievement0 ? `${development.achievement0}(0)` : ""
]
.filter(Boolean)
.join("\n")
: "",
isDevelopment10: development.isDevelopment10,
isDevelopment20: development.isDevelopment20,
isDevelopment70: development.isDevelopment70,
pointText:
development.point == 0
? development.achievement0
: development.point == 5
? development.achievement5
: development.point == 10
? development.achievement10
: null,
developEvaluator: development.kpiUserEvaluation?.developEvaluator ?? "-",
timeEvaluator: development.kpiUserEvaluation?.timeEvaluator ?? "-",
reasonEvaluator: development.kpiUserEvaluation?.reasonEvaluator ?? "-",
isDevelopmentText: [
development.isDevelopment10,
development.isDevelopment20,
@ -1534,7 +1572,7 @@ export class ReportController extends Controller {
.map((x: any, index) => (x ? combianText[index] : null))
.filter((x: any) => x !== null)
.join(" "),
}),
})
);
fullNameParts = [
@ -1630,11 +1668,12 @@ export class ReportController extends Controller {
evaluationResults: "-",
},
];
const date = new Date();
formattedData = {
root: data && data.rootName != null ? data.rootName : "-",
period: data?.durationKPI == "APR" ? "๑" : data?.durationKPI == "OCT" ? "๒" : "-",
year: data.year ? Extension.ToThaiNumber((data.year + 543).toString()) : "-",
date: Extension.ToThaiNumber(Extension.ToThaiFullDate2(date).toString()),
userEvaluations:
userEvaluations_.length > 0
? userEvaluations_