ผูก log โครงสร้างขรก

This commit is contained in:
AdisakKanthawilang 2024-10-04 11:07:46 +07:00
parent 79989664d5
commit b3ecbf5496
7 changed files with 76 additions and 43 deletions

View file

@ -30,6 +30,7 @@ import { EmployeePosMaster } from "../entities/EmployeePosMaster";
import { EmployeePosition } from "../entities/EmployeePosition";
import permission from "../interfaces/permission";
import { RequestWithUser } from "../middlewares/user";
import { setLogDataDiff } from "../interfaces/utils";
@Route("api/v1/org/root")
@Tags("OrgRoot")
@ -148,6 +149,7 @@ export class OrgRootController extends Controller {
},
order: { orgRootOrder: "DESC" },
});
const before = null;
orgRoot.createdUserId = request.user.sub;
orgRoot.createdFullName = request.user.name;
orgRoot.lastUpdateUserId = request.user.sub;
@ -155,7 +157,8 @@ export class OrgRootController extends Controller {
orgRoot.createdAt = new Date();
orgRoot.lastUpdatedAt = new Date();
orgRoot.orgRootOrder = order == null || order.orgRootOrder == null ? 1 : order.orgRootOrder + 1;
await this.orgRootRepository.save(orgRoot);
await this.orgRootRepository.save(orgRoot, { data: request });
setLogDataDiff(request, { before, after: orgRoot });
return new HttpSuccess();
}
@ -254,12 +257,13 @@ export class OrgRootController extends Controller {
// if(chkShortChild1 != null){
// throw new HttpError(HttpStatusCode.NOT_FOUND, "อักษรย่อนี้ซ้ำกับอักษรย่อส่วนราชการ");
// }
const before = structuredClone(orgRoot);
orgRoot.lastUpdateUserId = request.user.sub;
orgRoot.lastUpdateFullName = request.user.name;
orgRoot.lastUpdatedAt = new Date();
this.orgRootRepository.merge(orgRoot, requestBody);
await this.orgRootRepository.save(orgRoot);
await this.orgRootRepository.save(orgRoot, { data: request });
setLogDataDiff(request, {before, after: orgRoot});
if (orgRoot.orgRootRankSub == "DISTRICT" || orgRoot.orgRootRankSub == "OFFICE") {
const up_Child1 = await this.child1Repository.find({
@ -370,11 +374,11 @@ export class OrgRootController extends Controller {
const empPositions = await this.empPositionRepository.find({
where: [{ posMasterId: In(empPosMasters.map((x) => x.id)) }],
});
await this.empPositionRepository.remove(empPositions);
await this.empPosMasterRepository.remove(empPosMasters);
await this.positionRepository.remove(positions);
await this.posMasterRepository.remove(posMasters);
await this.empPositionRepository.remove(empPositions, { data: request });
await this.empPosMasterRepository.remove(empPosMasters, { data: request });
await this.positionRepository.remove(positions, { data: request });
await this.posMasterRepository.remove(posMasters, { data: request });
await this.child4Repository.delete({ orgRootId: id });
await this.child3Repository.delete({ orgRootId: id });
await this.child2Repository.delete({ orgRootId: id });