diff --git a/src/controllers/ReportController.ts b/src/controllers/ReportController.ts index 9f0875c..91108a4 100644 --- a/src/controllers/ReportController.ts +++ b/src/controllers/ReportController.ts @@ -84,7 +84,7 @@ export class ReportController extends Controller { }); period2 = _period2 ? `${durationKpi_OCT} รอบที่ ๒ ตั้งแต่ ${Extension.ToThaiFullDate2(_period2?.startDate)} ถึง ${Extension.ToThaiFullDate2(_period2?.endDate)}` - : `${durationKpi_OCT} รอบที่ ๒ ตั้งแต่ ๑ เมษายน ${Extension.ToThaiYear(data.year)} ถึง ๓๑ กันยายน ${Extension.ToThaiYear(data.year)}`; + : `${durationKpi_OCT} รอบที่ ๒ ตั้งแต่ ๑ เมษายน ${Extension.ToThaiYear(data.year)} ถึง ๓๐ กันยายน ${Extension.ToThaiYear(data.year)}`; } else if (data.durationKPI == "OCT") { period2 = `${durationKpi_OCT} รอบที่ ๒ ตั้งแต่ ${Extension.ToThaiFullDate2(data.startDate)} ถึง ${Extension.ToThaiFullDate2(data.endDate)}`; @@ -1455,7 +1455,7 @@ export class ReportController extends Controller { }); period2 = _period2 ? `${durationKpi_OCT} รอบที่ ๒ ตั้งแต่ ${Extension.ToThaiFullDate2(_period2?.startDate)} ถึง ${Extension.ToThaiFullDate2(_period2?.endDate)}` - : `${durationKpi_OCT} รอบที่ ๒ ตั้งแต่ ๑ เมษายน ${Extension.ToThaiYear(period_.year)} ถึง ๓๑ กันยายน ${Extension.ToThaiYear(period_.year)}`; + : `${durationKpi_OCT} รอบที่ ๒ ตั้งแต่ ๑ เมษายน ${Extension.ToThaiYear(period_.year)} ถึง ๓๐ กันยายน ${Extension.ToThaiYear(period_.year)}`; } else if (period_?.durationKPI === "OCT") { period2 = `${durationKpi_OCT} รอบที่ ๒ ตั้งแต่ ${Extension.ToThaiFullDate2(period_.startDate)} ถึง ${Extension.ToThaiFullDate2(period_.endDate)}`; @@ -1810,7 +1810,7 @@ export class ReportController extends Controller { const isGroup2: boolean = ["ทั่วไป", "วิชาการ"].includes(kpiUserEvaluation.posTypeName); const Plan = await this.kpiPlanRepository.find(); const Role = await this.kpiRoleRepository.find(); - const Capacitys = await this.kpiCapacityRepository.find({ + const Capacitys = await this.kpiCapacityRepository.find({ where: { type: In(["HEAD", "EXECUTIVE", "GROUP"]) } @@ -1830,7 +1830,7 @@ export class ReportController extends Controller { }); period2 = _period2 ? `${durationKpi_OCT} รอบที่ ๒ ตั้งแต่ ${Extension.ToThaiFullDate2(_period2?.startDate)} ถึง ${Extension.ToThaiFullDate2(_period2?.endDate)}` - : `${durationKpi_OCT} รอบที่ ๒ ตั้งแต่ ๑ เมษายน ${Extension.ToThaiYear(kpiUserEvaluation.kpiPeriod.year)} ถึง ๓๑ กันยายน ${Extension.ToThaiYear(kpiUserEvaluation.kpiPeriod.year)}`; + : `${durationKpi_OCT} รอบที่ ๒ ตั้งแต่ ๑ เมษายน ${Extension.ToThaiYear(kpiUserEvaluation.kpiPeriod.year)} ถึง ๓๐ กันยายน ${Extension.ToThaiYear(kpiUserEvaluation.kpiPeriod.year)}`; } else if (kpiUserEvaluation.kpiPeriod.durationKPI === "OCT") { period2 = `${durationKpi_OCT} รอบที่ ๒ ตั้งแต่ ${Extension.ToThaiFullDate2(kpiUserEvaluation.kpiPeriod.startDate)} ถึง ${Extension.ToThaiFullDate2(kpiUserEvaluation.kpiPeriod.endDate)}`; @@ -1863,39 +1863,47 @@ export class ReportController extends Controller { posTypeNameEvaluator: kpiUserEvaluation.posTypeNameEvaluator, posLevelNameEvaluator: kpiUserEvaluation.posLevelNameEvaluator, orgEvaluator: kpiUserEvaluation.orgEvaluator, - fullnameCommander: - `${kpiUserEvaluation.prefixCommander}${kpiUserEvaluation.firstNameCommander} ${kpiUserEvaluation.lastNameCommander}`, - positionCommander: kpiUserEvaluation.positionCommander ? kpiUserEvaluation.positionCommander : "-", - fullnameCommanderHigh: - `${kpiUserEvaluation.prefixCommanderHigh}${kpiUserEvaluation.firstNameCommanderHigh} ${kpiUserEvaluation.lastNameCommanderHigh}`, - positionCommanderHigh: kpiUserEvaluation.positionCommanderHigh ? kpiUserEvaluation.positionCommanderHigh : "-", + fullnameCommander: kpiUserEvaluation.prefixCommander != null && kpiUserEvaluation.firstNameCommander != null + && kpiUserEvaluation.lastNameCommander != null + ? `${kpiUserEvaluation.prefixCommander}${kpiUserEvaluation.firstNameCommander} ${kpiUserEvaluation.lastNameCommander}` + : ` `, + positionCommander: kpiUserEvaluation.positionCommander + ? kpiUserEvaluation.positionCommander + : ` `, + fullnameCommanderHigh: kpiUserEvaluation.prefixCommanderHigh != null && kpiUserEvaluation.firstNameCommanderHigh != null + && kpiUserEvaluation.lastNameCommanderHigh != null + ? `${kpiUserEvaluation.prefixCommanderHigh}${kpiUserEvaluation.firstNameCommanderHigh} ${kpiUserEvaluation.lastNameCommanderHigh}` + : ` `, + positionCommanderHigh: kpiUserEvaluation.positionCommanderHigh + ? kpiUserEvaluation.positionCommanderHigh + : ` `, planneds: kpiUserEvaluation.kpiUserPlanneds.length != 0 ? kpiUserEvaluation.kpiUserPlanneds .map( x => ({ name: Plan.find(y => y.id === x.kpiPlanId)?.includingName || "-", target: x.target ? Extension.ToThaiNumber(x.target.toLocaleString()) : "-", - point1: x.point == 1 ? "✔" : "-", - point2: x.point == 2 ? "✔" : "-", - point3: x.point == 3 ? "✔" : "-", - point4: x.point == 4 ? "✔" : "-", - point5: x.point == 5 ? "✔" : "-", + point1: x.point == 1 ? "🗹" : "☐", + point2: x.point == 2 ? "🗹" : "☐", + point3: x.point == 3 ? "🗹" : "☐", + point4: x.point == 4 ? "🗹" : "☐", + point5: x.point == 5 ? "🗹" : "☐", weight: x.weight ? Extension.ToThaiNumber(x.weight.toLocaleString()) : "-", - achievement: Extension.ToThaiNumber(`ระดับ ${x.point}`), + achievement: x.point ? Extension.ToThaiNumber(`ระดับ ${x.point}`) : "-", summary: x.summary ? Extension.ToThaiNumber(x.summary.toLocaleString()) : "-", }) ) : [{ - name: "-", - target: "-", - point1: "-", - point2: "-", - point3: "-", - point4: "-", - point5: "-", - weight: "-", - achievement: "-", - summary: "-", + name: "-", + target: "-", + point1: "☐", + point2: "☐", + point3: "☐", + point4: "☐", + point5: "☐", + weight: "-", + achievement: "-", + summary: "-", }], roles: kpiUserEvaluation.kpiUserRoles.length != 0 ? kpiUserEvaluation.kpiUserRoles @@ -1903,27 +1911,27 @@ export class ReportController extends Controller { x => ({ name: Role.find(y => y.id === x.kpiRoleId)?.includingName || "-", target: x.target ? Extension.ToThaiNumber(x.target.toLocaleString()) : "-", - point1: x.point == 1 ? "✔" : "-", - point2: x.point == 2 ? "✔" : "-", - point3: x.point == 3 ? "✔" : "-", - point4: x.point == 4 ? "✔" : "-", - point5: x.point == 5 ? "✔" : "-", + point1: x.point == 1 ? "🗹" : "☐", + point2: x.point == 2 ? "🗹" : "☐", + point3: x.point == 3 ? "🗹" : "☐", + point4: x.point == 4 ? "🗹" : "☐", + point5: x.point == 5 ? "🗹" : "☐", weight: x.weight ? Extension.ToThaiNumber(x.weight.toLocaleString()) : "-", - achievement: Extension.ToThaiNumber(`ระดับ ${x.point}`), + achievement: x.point ? Extension.ToThaiNumber(`ระดับ ${x.point}`) : "-", summary: x.summary ? Extension.ToThaiNumber(x.summary.toLocaleString()) : "-", }) ) : [{ - name: "-", - target: "-", - point1: "-", - point2: "-", - point3: "-", - point4: "-", - point5: "-", - weight: "-", - achievement: "-", - summary: "-", + name: "-", + target: "-", + point1: "☐", + point2: "☐", + point3: "☐", + point4: "☐", + point5: "☐", + weight: "-", + achievement: "-", + summary: "-", }], specials: kpiUserEvaluation.kpiUserSpecials.length != 0 ? kpiUserEvaluation.kpiUserSpecials @@ -1931,28 +1939,28 @@ export class ReportController extends Controller { x => ({ name: x.includingName ?? "-", target: x.target ? Extension.ToThaiNumber(x.target.toLocaleString()) : "-", - point1: x.point == 1 ? "✔" : "-", - point2: x.point == 2 ? "✔" : "-", - point3: x.point == 3 ? "✔" : "-", - point4: x.point == 4 ? "✔" : "-", - point5: x.point == 5 ? "✔" : "-", + point1: x.point == 1 ? "🗹" : "☐", + point2: x.point == 2 ? "🗹" : "☐", + point3: x.point == 3 ? "🗹" : "☐", + point4: x.point == 4 ? "🗹" : "☐", + point5: x.point == 5 ? "🗹" : "☐", weight: x.weight ? Extension.ToThaiNumber(x.weight.toLocaleString()) : "-", - achievement: Extension.ToThaiNumber(`ระดับ ${x.point}`), + achievement: x.point ? Extension.ToThaiNumber(`ระดับ ${x.point}`) : "-", summary: x.summary ? Extension.ToThaiNumber(x.summary.toLocaleString()) : "-", }) ) - : [{ - name: "-", - target: "-", - point1: "-", - point2: "-", - point3: "-", - point4: "-", - point5: "-", - weight: "-", - achievement: "-", - summary: "-", - }], + : [{ + name: "-", + target: "-", + point1: "☐", + point2: "☐", + point3: "☐", + point4: "☐", + point5: "☐", + weight: "-", + achievement: "-", + summary: "-", + }], develops: kpiUserEvaluation.kpiUserDevelopments.length != 0 ? kpiUserEvaluation.kpiUserDevelopments .map( @@ -1965,66 +1973,64 @@ export class ReportController extends Controller { isDevelopment70: x.isDevelopment70 == true ? `🗹 ๗๐ การลงมือปฏิบัติ(โดยผู้บังคับบัญชามอบหมาย)` : `☐ ๗๐ การลงมือปฏิบัติ(โดยผู้บังคับบัญชามอบหมาย)`, isDevelopment20: x.isDevelopment20 == true ? `🗹 ๒๐ การเรียนรู้จากผู้อื่น Coach/Mentor/Consulting` : `☐ ๒๐ การเรียนรู้จากผู้อื่น Coach/Mentor/Consulting`, isDevelopment10: x.isDevelopment10 == true ? `🗹 ๑๐ การฝึกอบรมอื่น ๆ` : `☐ ๑๐ การฝึกอบรมอื่น ๆ`, - point: x.point ? Extension.ToThaiNumber(x.point.toLocaleString()) : "-", + point: x.point ? Extension.ToThaiNumber(x.point.toLocaleString()) : "-", summary: x.summary ? Extension.ToThaiNumber(x.summary.toLocaleString()) : "-", }) ) - : [{ - name: "-", - target: "-", - achievement10: "-", - // achievement5: "-", - // achievement0: "-", - isDevelopment70: "-", - // isDevelopment20: "-", - // isDevelopment10: "-", - point: "-", - summary: "-", - }], + : [{ + name: "-", + target: "-", + achievement10: "-", + isDevelopment70: "-", + point: "-", + summary: "-", + }], headCaps: kpiUserEvaluation.kpiUserCapacitys.length != 0 - //&& Capacitys.filter(cap => cap.type === "HEAD" && cap.id == kpiUserEvaluation.kpiUserCapacitys[0].kpiCapacityId).length != 0 + && kpiUserEvaluation.kpiUserCapacitys.filter(x => Capacitys.some(y => y.id === x.kpiCapacityId && y.type === "HEAD")).length != 0 ? kpiUserEvaluation.kpiUserCapacitys .filter( x => Capacitys.some(y => y.id === x.kpiCapacityId && y.type === "HEAD") - ).map( + ) + .map( x => ({ - name: `- ${Capacitys.find(y => y.id === x.kpiCapacityId)?.name}`, + name: `- ${Capacitys.find(y => y.id === x.kpiCapacityId)?.name ?? ""}`, level: x.level ? Extension.ToThaiNumber(x.level.toLocaleString()) : "-", weight: x.weight ? Extension.ToThaiNumber(x.weight.toLocaleString()) : "-", - point1: x.point == 1 ? "✔" : "-", - point2: x.point == 2 ? "✔" : "-", - point3: x.point == 3 ? "✔" : "-", - point4: x.point == 4 ? "✔" : "-", - point5: x.point == 5 ? "✔" : "-", + point1: x.point == 1 ? "🗹" : "☐", + point2: x.point == 2 ? "🗹" : "☐", + point3: x.point == 3 ? "🗹" : "☐", + point4: x.point == 4 ? "🗹" : "☐", + point5: x.point == 5 ? "🗹" : "☐", summary: x.summary ? Extension.ToThaiNumber(x.summary.toLocaleString()) : "-", }) ) - : [{ - name: "-", - level: "-", - weight: "-", - point1: "-", - point2: "-", - point3: "-", - point4: "-", - point5: "-", - summary: "-", - }], + : [{ + name: "-", + level: "-", + weight: "-", + point1: "☐", + point2: "☐", + point3: "☐", + point4: "☐", + point5: "☐", + summary: "-", + }], executiveCaps: kpiUserEvaluation.kpiUserCapacitys.length != 0 - //&& Capacitys.filter(cap => cap.type === "EXECUTIVE" && cap.id == kpiUserEvaluation.kpiUserCapacitys[0].kpiCapacityId).length != 0 + && kpiUserEvaluation.kpiUserCapacitys.filter(x => Capacitys.some(y => y.id === x.kpiCapacityId && y.type === "EXECUTIVE")).length != 0 ? kpiUserEvaluation.kpiUserCapacitys .filter( x => Capacitys.some(y => y.id === x.kpiCapacityId && y.type === "EXECUTIVE") - ).map( + ) + .map( x => ({ - name: `- ${Capacitys.find(y => y.id === x.kpiCapacityId)?.name}`, + name: `- ${Capacitys.find(y => y.id === x.kpiCapacityId)?.name ?? ""}`, level: x.level ? Extension.ToThaiNumber(x.level.toLocaleString()) : "-", weight: x.weight ? Extension.ToThaiNumber(x.weight.toLocaleString()) : "-", - point1: x.point == 1 ? "✔" : "-", - point2: x.point == 2 ? "✔" : "-", - point3: x.point == 3 ? "✔" : "-", - point4: x.point == 4 ? "✔" : "-", - point5: x.point == 5 ? "✔" : "-", + point1: x.point == 1 ? "🗹" : "☐", + point2: x.point == 2 ? "🗹" : "☐", + point3: x.point == 3 ? "🗹" : "☐", + point4: x.point == 4 ? "🗹" : "☐", + point5: x.point == 5 ? "🗹" : "☐", summary: x.summary ? Extension.ToThaiNumber(x.summary.toLocaleString()) : "-", }) ) @@ -2032,28 +2038,29 @@ export class ReportController extends Controller { name: "-", level: "-", weight: "-", - point1: "-", - point2: "-", - point3: "-", - point4: "-", - point5: "-", + point1: "☐", + point2: "☐", + point3: "☐", + point4: "☐", + point5: "☐", summary: "-", }], groupCaps: kpiUserEvaluation.kpiUserCapacitys.length != 0 - //&& Capacitys.filter(cap => cap.type === "GROUP" && cap.id == kpiUserEvaluation.kpiUserCapacitys[0].kpiCapacityId).length != 0 + && kpiUserEvaluation.kpiUserCapacitys.filter(x => Capacitys.some(y => y.id === x.kpiCapacityId && y.type === "GROUP")).length != 0 ? kpiUserEvaluation.kpiUserCapacitys .filter( x => Capacitys.some(y => y.id === x.kpiCapacityId && y.type === "GROUP") - ).map( + ) + .map( x => ({ - name: `- ${Capacitys.find(y => y.id === x.kpiCapacityId)?.name}`, + name: `- ${Capacitys.find(y => y.id === x.kpiCapacityId)?.name ?? ""}`, level: x.level ? Extension.ToThaiNumber(x.level.toLocaleString()) : "-", weight: x.weight ? Extension.ToThaiNumber(x.weight.toLocaleString()) : "-", - point1: x.point == 1 ? "✔" : "-", - point2: x.point == 2 ? "✔" : "-", - point3: x.point == 3 ? "✔" : "-", - point4: x.point == 4 ? "✔" : "-", - point5: x.point == 5 ? "✔" : "-", + point1: x.point == 1 ? "🗹" : "☐", + point2: x.point == 2 ? "🗹" : "☐", + point3: x.point == 3 ? "🗹" : "☐", + point4: x.point == 4 ? "🗹" : "☐", + point5: x.point == 5 ? "🗹" : "☐", summary: x.summary ? Extension.ToThaiNumber(x.summary.toLocaleString()) : "-", }) ) @@ -2061,13 +2068,41 @@ export class ReportController extends Controller { name: "-", level: "-", weight: "-", - point1: "-", - point2: "-", - point3: "-", - point4: "-", - point5: "-", + point1: "☐", + point2: "☐", + point3: "☐", + point4: "☐", + point5: "☐", summary: "-", }], + //group1 only + summaryPlanneds: Extension.ToThaiNumber(kpiUserEvaluation.kpiUserPlanneds.reduce((sum, r) => sum + r.summary, 0).toLocaleString()), + totalPlan: kpiUserEvaluation.kpiUserPlanneds.reduce((sum, p) => sum + p.summary, 0) > 60 + ? Extension.ToThaiNumber((60).toLocaleString()) + : Extension.ToThaiNumber(kpiUserEvaluation.kpiUserPlanneds.reduce((sum, p) => sum + p.summary, 0).toLocaleString()), + totalSpec: kpiUserEvaluation.kpiUserSpecials.reduce((sum, p) => sum + p.summary, 0) > 20 + ? Extension.ToThaiNumber((20).toLocaleString()) + : Extension.ToThaiNumber(kpiUserEvaluation.kpiUserSpecials.reduce((sum, p) => sum + p.summary, 0).toLocaleString()), + // + summaryPoint1: + Extension.ToThaiNumber((kpiUserEvaluation.kpiUserPlanneds.reduce((sum, p) => sum + p.summary, 0) + +kpiUserEvaluation.kpiUserRoles.reduce((sum, r) => sum + r.summary, 0) + +kpiUserEvaluation.kpiUserSpecials.reduce((sum, s) => sum + s.summary, 0)).toLocaleString()), + totalPoint1: kpiUserEvaluation.totalPoint1 + ? Extension.ToThaiNumber(kpiUserEvaluation.totalPoint1.toLocaleString()) + : "-", + totalPoint2_1: kpiUserEvaluation.totalPoint2_1 + ? Extension.ToThaiNumber(kpiUserEvaluation.totalPoint2_1.toLocaleString()) + : "-", + totalPoint2_2: kpiUserEvaluation.totalPoint2_2 + ? Extension.ToThaiNumber(kpiUserEvaluation.totalPoint2_2.toLocaleString()) + : "-", + totalPoint2: kpiUserEvaluation.totalPoint2_1 && kpiUserEvaluation.totalPoint2_2 + ? Extension.ToThaiNumber((kpiUserEvaluation.totalPoint2_1 + kpiUserEvaluation.totalPoint2_2).toLocaleString()) + : "-", + summaryPoint: kpiUserEvaluation.summaryPoint + ? Extension.ToThaiNumber(kpiUserEvaluation.summaryPoint.toLocaleString()) + : "-", }; return new HttpSuccess({