This commit is contained in:
DESKTOP-1R2VSQH\Lenovo ThinkPad E490 2024-08-22 14:23:50 +07:00
parent f9fce4ba25
commit 8e0de97b78
21 changed files with 637 additions and 210 deletions

View file

@ -28,6 +28,7 @@ import { Double } from "typeorm/browser";
import { RequestWithUser } from "../middlewares/user";
import permission from "../interfaces/permission";
import { request } from "axios";
import { addLogSequence, setLogDataDiff } from "../interfaces/utils";
@Route("api/v1/kpi/user/capacity")
@Tags("kpiUserCapacity")
@ -88,12 +89,16 @@ export class KpiUserCapacityController extends Controller {
"ไม่สามารถเพิ่มข้อมูลได้เนื่องจากรายการสมรรถนะซ้ำ",
);
}
const before = null;
const kpiUserCapacity = Object.assign(new KpiUserCapacity(), requestBody);
kpiUserCapacity.createdUserId = request.user.sub;
kpiUserCapacity.createdFullName = request.user.name;
kpiUserCapacity.lastUpdateUserId = request.user.sub;
kpiUserCapacity.lastUpdateFullName = request.user.name;
await this.kpiUserCapacityRepository.save(kpiUserCapacity);
await this.kpiUserCapacityRepository.save(kpiUserCapacity, { data: request });
setLogDataDiff(request, { before, after: kpiUserCapacity });
return new HttpSuccess(kpiUserCapacity.id);
}
@ -154,11 +159,14 @@ export class KpiUserCapacityController extends Controller {
"ไม่สามารถแก้ไขข้อมูลได้เนื่องจากรายการสมรรถนะซ้ำ",
);
}
const before = structuredClone(kpiUserCapacity);
const _kpiUserCapacity = Object.assign(new KpiUserCapacity(), requestBody);
kpiUserCapacity.lastUpdateUserId = request.user.sub;
kpiUserCapacity.lastUpdateFullName = request.user.name;
this.kpiUserCapacityRepository.merge(kpiUserCapacity, _kpiUserCapacity);
await this.kpiUserCapacityRepository.save(kpiUserCapacity);
await this.kpiUserCapacityRepository.save(kpiUserCapacity, { data: request });
setLogDataDiff(request, { before, after: kpiUserCapacity });
return new HttpSuccess(kpiUserCapacity.id);
}
@ -272,10 +280,13 @@ export class KpiUserCapacityController extends Controller {
`ไม่พบข้อมูลพฤติกรรมการปฎิบัติราชการ (สมรรถนะ): ${item.id}`,
);
}
const before = structuredClone(kpiUserCapacity);
this.kpiUserCapacityRepository.merge(kpiUserCapacity, item);
kpiUserCapacity.lastUpdateUserId = request.user.sub;
kpiUserCapacity.lastUpdateFullName = request.user.name;
await this.kpiUserCapacityRepository.save(kpiUserCapacity);
await this.kpiUserCapacityRepository.save(kpiUserCapacity, { data: request });
setLogDataDiff(request, { before, after: kpiUserCapacity });
}
return new HttpSuccess();
}