Merge branch 'nice' into develop
# Conflicts: # src/controllers/KpiUserCapacityController.ts # src/controllers/KpiUserEvaluationController.ts
This commit is contained in:
commit
dfd9ebb3c1
21 changed files with 526 additions and 236 deletions
|
|
@ -30,6 +30,7 @@ import { KpiUserCapacity } from "../entities/kpiUserCapacity";
|
|||
import { KpiUserSpecial } from "../entities/kpiUserSpecial";
|
||||
import { RequestWithUser } from "../middlewares/user";
|
||||
import permission from "../interfaces/permission";
|
||||
import { addLogSequence, setLogDataDiff } from "../interfaces/utils";
|
||||
|
||||
@Route("api/v1/kpi/period")
|
||||
@Tags("kpiPeriod")
|
||||
|
|
@ -70,13 +71,16 @@ export class kpiPeriodController extends Controller {
|
|||
if (chkkpiPeriod) {
|
||||
throw new HttpError(HttpStatusCode.NOT_FOUND, "รอบการประเมินผลนี้มีอยู่ในระบบแล้ว");
|
||||
}
|
||||
const before = null;
|
||||
const kpiPeriod = Object.assign(new KpiPeriod(), requestBody);
|
||||
kpiPeriod.durationKPI = requestBody.durationKPI.trim().toUpperCase();
|
||||
kpiPeriod.createdUserId = request.user.sub;
|
||||
kpiPeriod.createdFullName = request.user.name;
|
||||
kpiPeriod.lastUpdateUserId = request.user.sub;
|
||||
kpiPeriod.lastUpdateFullName = request.user.name;
|
||||
await this.kpiPeriodRepository.save(kpiPeriod);
|
||||
await this.kpiPeriodRepository.save(kpiPeriod, { data: request });
|
||||
setLogDataDiff(request, { before, after: kpiPeriod });
|
||||
|
||||
return new HttpSuccess(kpiPeriod.id);
|
||||
}
|
||||
|
||||
|
|
@ -112,6 +116,7 @@ export class kpiPeriodController extends Controller {
|
|||
if (chkkpiPeriod) {
|
||||
throw new HttpError(HttpStatusCode.NOT_FOUND, "รอบการประเมินผลนี้มีอยู่ในระบบแล้ว");
|
||||
}
|
||||
const before = structuredClone(kpiPeriod);
|
||||
|
||||
requestBody.durationKPI = requestBody.durationKPI.trim().toUpperCase();
|
||||
this.kpiPeriodRepository.merge(kpiPeriod, requestBody);
|
||||
|
|
@ -119,7 +124,9 @@ export class kpiPeriodController extends Controller {
|
|||
kpiPeriod.createdFullName = request.user.name;
|
||||
kpiPeriod.lastUpdateUserId = request.user.sub;
|
||||
kpiPeriod.lastUpdateFullName = request.user.name;
|
||||
await this.kpiPeriodRepository.save(kpiPeriod);
|
||||
await this.kpiPeriodRepository.save(kpiPeriod, { data: request });
|
||||
setLogDataDiff(request, { before, after: kpiPeriod });
|
||||
|
||||
return new HttpSuccess(id);
|
||||
}
|
||||
|
||||
|
|
@ -133,7 +140,7 @@ export class kpiPeriodController extends Controller {
|
|||
startDate: "datetime", //วันเริ่มต้น
|
||||
endDate: "datetime", //วันสิ้นสุด
|
||||
})
|
||||
async CloseKpiPeriodById(@Path() id: string) {
|
||||
async CloseKpiPeriodById(@Path() id: string, @Request() request: RequestWithUser) {
|
||||
const kpiPeriod = await this.kpiPeriodRepository.findOne({
|
||||
where: { id: id },
|
||||
});
|
||||
|
|
@ -143,8 +150,12 @@ export class kpiPeriodController extends Controller {
|
|||
"ไม่พบข้อมูลรอบการประเมินผลการปฏิบัติหน้าที่ราชการนี้",
|
||||
);
|
||||
}
|
||||
const before = structuredClone(kpiPeriod);
|
||||
|
||||
kpiPeriod.isActive = false;
|
||||
await this.kpiPeriodRepository.save(kpiPeriod);
|
||||
await this.kpiPeriodRepository.save(kpiPeriod, { data: request });
|
||||
setLogDataDiff(request, { before, after: kpiPeriod });
|
||||
|
||||
return new HttpSuccess(kpiPeriod);
|
||||
}
|
||||
|
||||
|
|
@ -158,7 +169,7 @@ export class kpiPeriodController extends Controller {
|
|||
startDate: "datetime", //วันเริ่มต้น
|
||||
endDate: "datetime", //วันสิ้นสุด
|
||||
})
|
||||
async OpenKpiPeriodById(@Path() id: string) {
|
||||
async OpenKpiPeriodById(@Path() id: string, @Request() request: RequestWithUser) {
|
||||
const kpiPeriod = await this.kpiPeriodRepository.findOne({
|
||||
where: { id: id },
|
||||
});
|
||||
|
|
@ -168,8 +179,12 @@ export class kpiPeriodController extends Controller {
|
|||
"ไม่พบข้อมูลรอบการประเมินผลการปฏิบัติหน้าที่ราชการนี้",
|
||||
);
|
||||
}
|
||||
const before = structuredClone(kpiPeriod);
|
||||
|
||||
kpiPeriod.isActive = true;
|
||||
await this.kpiPeriodRepository.save(kpiPeriod);
|
||||
await this.kpiPeriodRepository.save(kpiPeriod, { data: request });
|
||||
setLogDataDiff(request, { before, after: kpiPeriod });
|
||||
|
||||
return new HttpSuccess(kpiPeriod);
|
||||
}
|
||||
|
||||
|
|
@ -303,18 +318,18 @@ export class kpiPeriodController extends Controller {
|
|||
where: { kpiUserEvaluationId: In(kpiPlan.map((x) => x.id)) },
|
||||
});
|
||||
|
||||
await this.kpiUserRoleRepository.remove(kpiUserRole);
|
||||
await this.kpiUserPlannedRepository.remove(kpiUserPlanned);
|
||||
await this.kpiUserRoleRepository.remove(kpiUserRole, { data: request });
|
||||
await this.kpiUserPlannedRepository.remove(kpiUserPlanned, { data: request });
|
||||
|
||||
await this.kpiUserRoleRepository.remove(_kpiUserRole);
|
||||
await this.kpiUserPlannedRepository.remove(_kpiUserPlanned);
|
||||
await this.kpiUserCapacityRepository.remove(_kpiUserCapacity);
|
||||
await this.kpiUserSpecialRepository.remove(_kpiUserSpecial);
|
||||
await this.kpiUserRoleRepository.remove(_kpiUserRole, { data: request });
|
||||
await this.kpiUserPlannedRepository.remove(_kpiUserPlanned, { data: request });
|
||||
await this.kpiUserCapacityRepository.remove(_kpiUserCapacity, { data: request });
|
||||
await this.kpiUserSpecialRepository.remove(_kpiUserSpecial, { data: request });
|
||||
|
||||
await this.kpiRoleRepository.remove(kpiRole);
|
||||
await this.kpiPlanRepository.remove(kpiPlan);
|
||||
await this.kpiUserEvaluationRepository.remove(kpiUserEvaluation);
|
||||
await this.kpiPeriodRepository.remove(kpiPeriod);
|
||||
await this.kpiRoleRepository.remove(kpiRole, { data: request });
|
||||
await this.kpiPlanRepository.remove(kpiPlan, { data: request });
|
||||
await this.kpiUserEvaluationRepository.remove(kpiUserEvaluation, { data: request });
|
||||
await this.kpiPeriodRepository.remove(kpiPeriod, { data: request });
|
||||
return new HttpSuccess();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue