This commit is contained in:
AdisakKanthawilang 2024-07-12 10:19:49 +07:00
parent f2a181e7ad
commit 772a0b3a93

View file

@ -459,7 +459,6 @@ export class ReportController extends Controller {
if (requestBody.type == "KPI4") { if (requestBody.type == "KPI4") {
templateName = "KPI4"; templateName = "KPI4";
reportName = "KPI4"; reportName = "KPI4";
//use_filter
const yearNow = new Date().getFullYear(); const yearNow = new Date().getFullYear();
if (requestBody.profileId) { if (requestBody.profileId) {
//ชั่วคราว //ชั่วคราว
@ -481,6 +480,8 @@ export class ReportController extends Controller {
// .getRawMany(); // .getRawMany();
// const profileEvaluationCombianIds = profileEvaluationNowYearIds.concat(profileEvaluationNextYearIds); // const profileEvaluationCombianIds = profileEvaluationNowYearIds.concat(profileEvaluationNextYearIds);
if (profileEvaluationNowYearIds.length > 0) {
//ชั่วคราว
const profileEvaluations = await this.kpiUserEvaluationRepository.find({ const profileEvaluations = await this.kpiUserEvaluationRepository.find({
relations: ["kpiPeriod"], relations: ["kpiPeriod"],
where: { id: In(profileEvaluationNowYearIds.map((evaluation) => evaluation.id)) }, where: { id: In(profileEvaluationNowYearIds.map((evaluation) => evaluation.id)) },
@ -495,7 +496,7 @@ export class ReportController extends Controller {
acc[key] = { acc[key] = {
fullName: evaluation.prefix + evaluation.firstName + " " + evaluation.lastName, fullName: evaluation.prefix + evaluation.firstName + " " + evaluation.lastName,
profileId: profileId, profileId: profileId,
year: Extension.ToThaiNumber(Extension.ToThaiYear(year).toString()), // Set year once here year: year?Extension.ToThaiNumber(Extension.ToThaiYear(year).toString()):null,
evaluations: [], evaluations: [],
}; };
} }
@ -567,10 +568,10 @@ export class ReportController extends Controller {
}; };
} }
} }
}
if (requestBody.type == "KPI5") { if (requestBody.type == "KPI5") {
templateName = "KPI5"; templateName = "KPI5";
reportName = "KPI5"; reportName = "KPI5";
//use_filter
interface KPIData { interface KPIData {
fullName: string | null; fullName: string | null;
position: string | null; position: string | null;
@ -636,7 +637,7 @@ export class ReportController extends Controller {
.groupBy("kpiUserEvaluation.kpiPeriodId") .groupBy("kpiUserEvaluation.kpiPeriodId")
.select("MIN(kpiUserEvaluation.id) as id") .select("MIN(kpiUserEvaluation.id) as id")
.getRawMany(); .getRawMany();
if (profileEvaluationIds.length > 0) {
const profileEvaluation = await this.kpiUserEvaluationRepository.find({ const profileEvaluation = await this.kpiUserEvaluationRepository.find({
relations: ["kpiPeriod"], relations: ["kpiPeriod"],
where: { id: In(profileEvaluationIds.map((evaluation) => evaluation.id)) }, where: { id: In(profileEvaluationIds.map((evaluation) => evaluation.id)) },
@ -659,83 +660,84 @@ export class ReportController extends Controller {
} }
if (x.kpiPeriod.year === yearNow - 4 && x.kpiPeriod.durationKPI === "APR") { if (x.kpiPeriod.year === yearNow - 4 && x.kpiPeriod.durationKPI === "APR") {
acc.summaryPointAPR1 = Extension.ToThaiNumber(x.summaryPoint.toString()) ?? null; acc.summaryPointAPR1 = x.summaryPoint
acc.textPointAPR1 = Extension.textPoint(x.summaryPoint) ?? null; ?Extension.ToThaiNumber(x.summaryPoint.toString()): null;
acc.textPointAPR1 = x.summaryPoint?Extension.textPoint(x.summaryPoint):null;
acc.periodAPR1 = x.kpiPeriod.durationKPI; acc.periodAPR1 = x.kpiPeriod.durationKPI;
acc.yearAPR1 = acc.yearAPR1 =
Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()) ?? null; x.kpiPeriod.year?Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()):null;
} }
if (x.kpiPeriod.year === yearNow - 4 && x.kpiPeriod.durationKPI === "OCT") { if (x.kpiPeriod.year === yearNow - 4 && x.kpiPeriod.durationKPI === "OCT") {
acc.summaryPointOCT1 = Extension.ToThaiNumber(x.summaryPoint.toString()) ?? null; acc.summaryPointOCT1 = x.summaryPoint?Extension.ToThaiNumber(x.summaryPoint.toString()):null;
acc.textPointOCT1 = Extension.textPoint(x.summaryPoint) ?? null; acc.textPointOCT1 = x.summaryPoint?Extension.textPoint(x.summaryPoint):null;
acc.periodOCT1 = x.kpiPeriod.durationKPI; acc.periodOCT1 = x.kpiPeriod.durationKPI;
acc.yearOCT1 = acc.yearOCT1 =
Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()) ?? null; x.kpiPeriod.year?Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()):null;
} }
if (x.kpiPeriod.year === yearNow - 3 && x.kpiPeriod.durationKPI === "APR") { if (x.kpiPeriod.year === yearNow - 3 && x.kpiPeriod.durationKPI === "APR") {
acc.summaryPointAPR2 = Extension.ToThaiNumber(x.summaryPoint.toString()) ?? null; acc.summaryPointAPR2 = x.summaryPoint?Extension.ToThaiNumber(x.summaryPoint.toString()):null;
acc.textPointAPR2 = Extension.textPoint(x.summaryPoint) ?? null; acc.textPointAPR2 = x.summaryPoint?Extension.textPoint(x.summaryPoint):null;
acc.periodAPR2 = x.kpiPeriod.durationKPI; acc.periodAPR2 = x.kpiPeriod.durationKPI;
acc.yearAPR2 = acc.yearAPR2 =
Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()) ?? null; x.kpiPeriod.year?Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()):null;
} }
if (x.kpiPeriod.year === yearNow - 3 && x.kpiPeriod.durationKPI === "OCT") { if (x.kpiPeriod.year === yearNow - 3 && x.kpiPeriod.durationKPI === "OCT") {
acc.summaryPointOCT2 = Extension.ToThaiNumber(x.summaryPoint.toString()) ?? null; acc.summaryPointOCT2 = x.summaryPoint?Extension.ToThaiNumber(x.summaryPoint.toString()):null;
acc.textPointOCT2 = Extension.textPoint(x.summaryPoint) ?? null; acc.textPointOCT2 = x.summaryPoint?Extension.textPoint(x.summaryPoint):null;
acc.periodOCT2 = x.kpiPeriod.durationKPI; acc.periodOCT2 = x.kpiPeriod.durationKPI;
acc.yearOCT2 = acc.yearOCT2 =
Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()) ?? null; x.kpiPeriod.year?Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()):null;
} }
if (x.kpiPeriod.year === yearNow - 2 && x.kpiPeriod.durationKPI === "APR") { if (x.kpiPeriod.year === yearNow - 2 && x.kpiPeriod.durationKPI === "APR") {
acc.summaryPointAPR3 = Extension.ToThaiNumber(x.summaryPoint.toString()) ?? null; acc.summaryPointAPR3 = x.summaryPoint?Extension.ToThaiNumber(x.summaryPoint.toString()):null;
acc.textPointAPR3 = Extension.textPoint(x.summaryPoint) ?? null; acc.textPointAPR3 = x.summaryPoint?Extension.textPoint(x.summaryPoint):null;
acc.periodAPR3 = x.kpiPeriod.durationKPI; acc.periodAPR3 = x.kpiPeriod.durationKPI;
acc.yearAPR3 = acc.yearAPR3 =
Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()) ?? null; x.kpiPeriod.year?Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()):null;
} }
if (x.kpiPeriod.year === yearNow - 2 && x.kpiPeriod.durationKPI === "OCT") { if (x.kpiPeriod.year === yearNow - 2 && x.kpiPeriod.durationKPI === "OCT") {
acc.summaryPointOCT3 = Extension.ToThaiNumber(x.summaryPoint.toString()) ?? null; acc.summaryPointOCT3 = x.summaryPoint?Extension.ToThaiNumber(x.summaryPoint.toString()):null;
acc.textPointOCT3 = Extension.textPoint(x.summaryPoint) ?? null; acc.textPointOCT3 = x.summaryPoint?Extension.textPoint(x.summaryPoint):null;
acc.periodOCT3 = x.kpiPeriod.durationKPI; acc.periodOCT3 = x.kpiPeriod.durationKPI;
acc.yearOCT3 = acc.yearOCT3 =
Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()) ?? null; x.kpiPeriod.year?Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()):null;
} }
if (x.kpiPeriod.year === yearNow - 1 && x.kpiPeriod.durationKPI === "APR") { if (x.kpiPeriod.year === yearNow - 1 && x.kpiPeriod.durationKPI === "APR") {
acc.summaryPointAPR4 = Extension.ToThaiNumber(x.summaryPoint.toString()) ?? null; acc.summaryPointAPR4 = x.summaryPoint?Extension.ToThaiNumber(x.summaryPoint.toString()):null;
acc.textPointAPR4 = Extension.textPoint(x.summaryPoint) ?? null; acc.textPointAPR4 = x.summaryPoint?Extension.textPoint(x.summaryPoint):null;
acc.periodAPR4 = x.kpiPeriod.durationKPI; acc.periodAPR4 = x.kpiPeriod.durationKPI;
acc.yearAPR4 = acc.yearAPR4 =
Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()) ?? null; x.kpiPeriod.year?Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()):null;
} }
if (x.kpiPeriod.year === yearNow - 1 && x.kpiPeriod.durationKPI === "OCT") { if (x.kpiPeriod.year === yearNow - 1 && x.kpiPeriod.durationKPI === "OCT") {
acc.summaryPointOCT4 = Extension.ToThaiNumber(x.summaryPoint.toString()) ?? null; acc.summaryPointOCT4 = x.summaryPoint?Extension.ToThaiNumber(x.summaryPoint.toString()):null;
acc.textPointOCT4 = Extension.textPoint(x.summaryPoint) ?? null; acc.textPointOCT4 = x.summaryPoint?Extension.textPoint(x.summaryPoint):null;
acc.periodOCT4 = x.kpiPeriod.durationKPI; acc.periodOCT4 = x.kpiPeriod.durationKPI;
acc.yearOCT4 = acc.yearOCT4 =
Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()) ?? null; x.kpiPeriod.year?Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()):null;
} }
if (x.kpiPeriod.year === yearNow && x.kpiPeriod.durationKPI === "APR") { if (x.kpiPeriod.year === yearNow && x.kpiPeriod.durationKPI === "APR") {
acc.summaryPointAPR5 = Extension.ToThaiNumber(x.summaryPoint.toString()) ?? null; acc.summaryPointAPR5 = x.summaryPoint?Extension.ToThaiNumber(x.summaryPoint.toString()):null;
acc.textPointAPR5 = Extension.textPoint(x.summaryPoint) ?? null; acc.textPointAPR5 = x.summaryPoint?Extension.textPoint(x.summaryPoint):null;
acc.periodAPR5 = x.kpiPeriod.durationKPI; acc.periodAPR5 = x.kpiPeriod.durationKPI;
acc.yearAPR5 = acc.yearAPR5 =
Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()) ?? null; x.kpiPeriod.year?Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()):null;
} }
if (x.kpiPeriod.year === yearNow && x.kpiPeriod.durationKPI === "OCT") { if (x.kpiPeriod.year === yearNow && x.kpiPeriod.durationKPI === "OCT") {
acc.summaryPointOCT5 = Extension.ToThaiNumber(x.summaryPoint.toString()) ?? null; acc.summaryPointOCT5 = x.summaryPoint?Extension.ToThaiNumber(x.summaryPoint.toString()):null;
acc.textPointOCT5 = Extension.textPoint(x.summaryPoint) ?? null; acc.textPointOCT5 = x.summaryPoint?Extension.textPoint(x.summaryPoint):null;
acc.periodOCT5 = x.kpiPeriod.durationKPI; acc.periodOCT5 = x.kpiPeriod.durationKPI;
acc.yearOCT5 = acc.yearOCT5 =
Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()) ?? null; x.kpiPeriod.year?Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()):null;
} }
return acc; return acc;
@ -796,6 +798,7 @@ export class ReportController extends Controller {
formattedData = combinedData; formattedData = combinedData;
} }
} }
}
if (requestBody.type == "KPI6") { if (requestBody.type == "KPI6") {
templateName = "KPI6"; templateName = "KPI6";
reportName = "KPI6"; reportName = "KPI6";
@ -847,7 +850,7 @@ export class ReportController extends Controller {
.groupBy("kpiUserEvaluation.kpiPeriodId") .groupBy("kpiUserEvaluation.kpiPeriodId")
.select("MIN(kpiUserEvaluation.id) as id") .select("MIN(kpiUserEvaluation.id) as id")
.getRawMany(); .getRawMany();
if (profileEvaluationIds.length > 0) {
const profileEvaluation = await this.kpiUserEvaluationRepository.find({ const profileEvaluation = await this.kpiUserEvaluationRepository.find({
relations: ["kpiPeriod"], relations: ["kpiPeriod"],
where: { id: In(profileEvaluationIds.map((evaluation) => evaluation.id)) }, where: { id: In(profileEvaluationIds.map((evaluation) => evaluation.id)) },
@ -870,51 +873,51 @@ export class ReportController extends Controller {
} }
if (x.kpiPeriod.year === yearNow - 2 && x.kpiPeriod.durationKPI === "APR") { if (x.kpiPeriod.year === yearNow - 2 && x.kpiPeriod.durationKPI === "APR") {
acc.summaryPointAPR1 = Extension.ToThaiNumber(x.summaryPoint.toString()) ?? null; acc.summaryPointAPR1 = x.summaryPoint?Extension.ToThaiNumber(x.summaryPoint.toString()):null;
acc.textPointAPR1 = Extension.textPoint(x.summaryPoint) ?? null; acc.textPointAPR1 = x.summaryPoint?Extension.textPoint(x.summaryPoint):null;
acc.periodAPR1 = x.kpiPeriod.durationKPI; acc.periodAPR1 = x.kpiPeriod.durationKPI;
acc.yearAPR1 = acc.yearAPR1 =
Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()) ?? null; x.kpiPeriod.year?Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()):null;
} }
if (x.kpiPeriod.year === yearNow - 2 && x.kpiPeriod.durationKPI === "OCT") { if (x.kpiPeriod.year === yearNow - 2 && x.kpiPeriod.durationKPI === "OCT") {
acc.summaryPointOCT1 = Extension.ToThaiNumber(x.summaryPoint.toString()) ?? null; acc.summaryPointOCT1 = x.summaryPoint?Extension.ToThaiNumber(x.summaryPoint.toString()):null;
acc.textPointOCT1 = Extension.textPoint(x.summaryPoint) ?? null; acc.textPointOCT1 = x.summaryPoint?Extension.textPoint(x.summaryPoint) : null;
acc.periodOCT1 = x.kpiPeriod.durationKPI; acc.periodOCT1 = x.kpiPeriod.durationKPI;
acc.yearOCT1 = acc.yearOCT1 =
Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()) ?? null; x.kpiPeriod.year?Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()):null;
} }
if (x.kpiPeriod.year === yearNow - 1 && x.kpiPeriod.durationKPI === "APR") { if (x.kpiPeriod.year === yearNow - 1 && x.kpiPeriod.durationKPI === "APR") {
acc.summaryPointAPR2 = Extension.ToThaiNumber(x.summaryPoint.toString()) ?? null; acc.summaryPointAPR2 = x.summaryPoint?Extension.ToThaiNumber(x.summaryPoint.toString()):null;
acc.textPointAPR2 = Extension.textPoint(x.summaryPoint) ?? null; acc.textPointAPR2 = x.summaryPoint?Extension.textPoint(x.summaryPoint):null;
acc.periodAPR2 = x.kpiPeriod.durationKPI; acc.periodAPR2 = x.kpiPeriod.durationKPI;
acc.yearAPR2 = acc.yearAPR2 =
Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()) ?? null; x.kpiPeriod.year?Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()):null;
} }
if (x.kpiPeriod.year === yearNow - 1 && x.kpiPeriod.durationKPI === "OCT") { if (x.kpiPeriod.year === yearNow - 1 && x.kpiPeriod.durationKPI === "OCT") {
acc.summaryPointOCT2 = Extension.ToThaiNumber(x.summaryPoint.toString()) ?? null; acc.summaryPointOCT2 = x.summaryPoint?Extension.ToThaiNumber(x.summaryPoint.toString()):null;
acc.textPointOCT2 = Extension.textPoint(x.summaryPoint) ?? null; acc.textPointOCT2 = x.summaryPoint?Extension.textPoint(x.summaryPoint):null;
acc.periodOCT2 = x.kpiPeriod.durationKPI; acc.periodOCT2 = x.kpiPeriod.durationKPI;
acc.yearOCT2 = acc.yearOCT2 =
Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()) ?? null; x.kpiPeriod.year?Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()):null;
} }
if (x.kpiPeriod.year === yearNow && x.kpiPeriod.durationKPI === "APR") { if (x.kpiPeriod.year === yearNow && x.kpiPeriod.durationKPI === "APR") {
acc.summaryPointAPR3 = Extension.ToThaiNumber(x.summaryPoint.toString()) ?? null; acc.summaryPointAPR3 = x.summaryPoint?Extension.ToThaiNumber(x.summaryPoint.toString()):null;
acc.textPointAPR3 = Extension.textPoint(x.summaryPoint) ?? null; acc.textPointAPR3 = x.summaryPoint?Extension.textPoint(x.summaryPoint):null;
acc.periodAPR3 = x.kpiPeriod.durationKPI; acc.periodAPR3 = x.kpiPeriod.durationKPI;
acc.yearAPR3 = acc.yearAPR3 =
Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()) ?? null; x.kpiPeriod.year?Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()):null;
} }
if (x.kpiPeriod.year === yearNow && x.kpiPeriod.durationKPI === "OCT") { if (x.kpiPeriod.year === yearNow && x.kpiPeriod.durationKPI === "OCT") {
acc.summaryPointOCT3 = Extension.ToThaiNumber(x.summaryPoint.toString()) ?? null; acc.summaryPointOCT3 = x.summaryPoint?Extension.ToThaiNumber(x.summaryPoint.toString()):null;
acc.textPointOCT3 = Extension.textPoint(x.summaryPoint) ?? null; acc.textPointOCT3 = x.summaryPoint?Extension.textPoint(x.summaryPoint):null;
acc.periodOCT3 = x.kpiPeriod.durationKPI; acc.periodOCT3 = x.kpiPeriod.durationKPI;
acc.yearOCT3 = acc.yearOCT3 =
Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()) ?? null; x.kpiPeriod.year?Extension.ToThaiNumber(Extension.ToThaiYear(x.kpiPeriod.year).toString()):null;
} }
return acc; return acc;
@ -957,6 +960,7 @@ export class ReportController extends Controller {
formattedData = combinedData; formattedData = combinedData;
} }
} }
}
if (requestBody.type == "KPI7") { if (requestBody.type == "KPI7") {
templateName = "KPI7"; templateName = "KPI7";
reportName = "KPI7"; reportName = "KPI7";