no message

This commit is contained in:
kittapath 2025-01-24 17:28:30 +07:00
parent 47a9d74a19
commit 388d6488f8

View file

@ -70,6 +70,7 @@ import { ProfileFamilyCoupleHistory } from "../entities/ProfileFamilyCoupleHisto
import { viewDirector } from "../entities/view/viewDirector"; import { viewDirector } from "../entities/view/viewDirector";
import { viewDirectorActing } from "../entities/view/viewDirectorActing"; import { viewDirectorActing } from "../entities/view/viewDirectorActing";
import CallAPI from "../interfaces/call-api"; import CallAPI from "../interfaces/call-api";
import { OrgRoot } from "../entities/OrgRoot";
@Route("api/v1/org/profile") @Route("api/v1/org/profile")
@Tags("Profile") @Tags("Profile")
@Security("bearerAuth") @Security("bearerAuth")
@ -80,6 +81,7 @@ import CallAPI from "../interfaces/call-api";
@SuccessResponse(HttpStatus.OK, "สำเร็จ") @SuccessResponse(HttpStatus.OK, "สำเร็จ")
export class ProfileController extends Controller { export class ProfileController extends Controller {
private orgRevisionRepo = AppDataSource.getRepository(OrgRevision); private orgRevisionRepo = AppDataSource.getRepository(OrgRevision);
private orgRootRepo = AppDataSource.getRepository(OrgRoot);
private posMasterRepo = AppDataSource.getRepository(PosMaster); private posMasterRepo = AppDataSource.getRepository(PosMaster);
private profileRepo = AppDataSource.getRepository(Profile); private profileRepo = AppDataSource.getRepository(Profile);
private profileEmpRepo = AppDataSource.getRepository(ProfileEmployee); private profileEmpRepo = AppDataSource.getRepository(ProfileEmployee);
@ -4241,16 +4243,26 @@ export class ProfileController extends Controller {
orgRevision: { orgRevisionIsDraft: false, orgRevisionIsCurrent: true }, orgRevision: { orgRevisionIsDraft: false, orgRevisionIsCurrent: true },
}, },
}); });
let revisionId = "";
if (nodeId == null) { if (nodeId == null) {
const findRevision = await this.orgRevisionRepo.findOne({
where: { orgRevisionIsCurrent: true },
});
if (!findRevision) {
throw new HttpError(HttpStatus.NOT_FOUND, "not found. OrgRevision");
}
revisionId = findRevision.id;
if (posMaster != null) nodeId = posMaster.orgRootId ?? ""; if (posMaster != null) nodeId = posMaster.orgRootId ?? "";
} else {
const findRoot = await this.orgRootRepo.findOne({
where: { id: nodeId },
});
if (!findRoot) {
throw new HttpError(HttpStatus.NOT_FOUND, "ไม่พบสำนักงานนี้ในระบบ");
}
revisionId = findRoot.orgRevisionId;
} }
let nodeCondition = "current_holders.orgRootId = :nodeId"; let nodeCondition = "current_holders.orgRootId = :nodeId";
const findRevision = await this.orgRevisionRepo.findOne({
where: { orgRevisionIsCurrent: true },
});
if (!findRevision) {
throw new HttpError(HttpStatus.NOT_FOUND, "not found. OrgRevision");
}
const [record, total] = await this.profileRepo const [record, total] = await this.profileRepo
.createQueryBuilder("profile") .createQueryBuilder("profile")
.leftJoinAndSelect("profile.posLevel", "posLevel") .leftJoinAndSelect("profile.posLevel", "posLevel")
@ -4264,7 +4276,7 @@ export class ProfileController extends Controller {
.leftJoinAndSelect("current_holders.orgChild2", "orgChild2") .leftJoinAndSelect("current_holders.orgChild2", "orgChild2")
.leftJoinAndSelect("current_holders.orgChild3", "orgChild3") .leftJoinAndSelect("current_holders.orgChild3", "orgChild3")
.leftJoinAndSelect("current_holders.orgChild4", "orgChild4") .leftJoinAndSelect("current_holders.orgChild4", "orgChild4")
.where("current_holders.orgRevisionId = :orgRevisionId", { orgRevisionId: findRevision.id }) .where("current_holders.orgRevisionId = :orgRevisionId", { orgRevisionId: revisionId })
.andWhere( .andWhere(
posType != undefined && posType != null && posType != "" posType != undefined && posType != null && posType != ""
? "posType.posTypeName LIKE :keyword1" ? "posType.posTypeName LIKE :keyword1"
@ -4305,7 +4317,7 @@ export class ProfileController extends Controller {
nodeId: nodeId, nodeId: nodeId,
}) })
// .andWhere(`current_holders.orgRevisionId LIKE :orgRevisionId`, { // .andWhere(`current_holders.orgRevisionId LIKE :orgRevisionId`, {
// orgRevisionId: findRevision.id, // orgRevisionId: revisionId,
// }) // })
.orderBy("current_holders.posMasterNo", "ASC") .orderBy("current_holders.posMasterNo", "ASC")
.skip((page - 1) * pageSize) .skip((page - 1) * pageSize)
@ -4316,80 +4328,77 @@ export class ProfileController extends Controller {
record.map((_data) => { record.map((_data) => {
const posExecutive = const posExecutive =
_data.current_holders.length == 0 || _data.current_holders.length == 0 ||
_data.current_holders.find((x) => x.orgRevisionId == findRevision.id) == null || _data.current_holders.find((x) => x.orgRevisionId == revisionId) == null ||
_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.positions.length == _data.current_holders.find((x) => x.orgRevisionId == revisionId)?.positions.length == 0 ||
0 ||
_data.current_holders _data.current_holders
.find((x) => x.orgRevisionId == findRevision.id) .find((x) => x.orgRevisionId == revisionId)
?.positions.find((x: any) => x.positionIsSelected == true) == null || ?.positions.find((x: any) => x.positionIsSelected == true) == null ||
_data.current_holders _data.current_holders
.find((x) => x.orgRevisionId == findRevision.id) .find((x) => x.orgRevisionId == revisionId)
?.positions.find((x: any) => x.positionIsSelected == true)?.posExecutive == null ?.positions.find((x: any) => x.positionIsSelected == true)?.posExecutive == null
? null ? null
: _data.current_holders : _data.current_holders
.find((x) => x.orgRevisionId == findRevision.id) .find((x) => x.orgRevisionId == revisionId)
?.positions.find((x: any) => x.positionIsSelected == true)?.posExecutive ?.positions.find((x: any) => x.positionIsSelected == true)?.posExecutive
?.posExecutiveName; ?.posExecutiveName;
const shortName = const shortName =
_data.current_holders.length == 0 _data.current_holders.length == 0
? null ? null
: _data.current_holders.find((x) => x.orgRevisionId == findRevision.id) != null && : _data.current_holders.find((x) => x.orgRevisionId == revisionId) != null &&
_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.orgChild4 != _data.current_holders.find((x) => x.orgRevisionId == revisionId)?.orgChild4 != null
null ? `${_data.current_holders.find((x) => x.orgRevisionId == revisionId)?.orgChild4.orgChild4ShortName}${_data.current_holders.find((x) => x.orgRevisionId == revisionId)?.posMasterNo}`
? `${_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.orgChild4.orgChild4ShortName}${_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.posMasterNo}` : _data.current_holders.find((x) => x.orgRevisionId == revisionId) != null &&
: _data.current_holders.find((x) => x.orgRevisionId == findRevision.id) != null && _data.current_holders.find((x) => x.orgRevisionId == revisionId)?.orgChild3 !=
_data.current_holders.find((x) => x.orgRevisionId == findRevision.id) null
?.orgChild3 != null ? `${_data.current_holders.find((x) => x.orgRevisionId == revisionId)?.orgChild3.orgChild3ShortName}${_data.current_holders.find((x) => x.orgRevisionId == revisionId)?.posMasterNo}`
? `${_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.orgChild3.orgChild3ShortName}${_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.posMasterNo}` : _data.current_holders.find((x) => x.orgRevisionId == revisionId) != null &&
: _data.current_holders.find((x) => x.orgRevisionId == findRevision.id) != null && _data.current_holders.find((x) => x.orgRevisionId == revisionId)?.orgChild2 !=
_data.current_holders.find((x) => x.orgRevisionId == findRevision.id) null
?.orgChild2 != null ? `${_data.current_holders.find((x) => x.orgRevisionId == revisionId)?.orgChild2.orgChild2ShortName}${_data.current_holders.find((x) => x.orgRevisionId == revisionId)?.posMasterNo}`
? `${_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.orgChild2.orgChild2ShortName}${_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.posMasterNo}` : _data.current_holders.find((x) => x.orgRevisionId == revisionId) != null &&
: _data.current_holders.find((x) => x.orgRevisionId == findRevision.id) != null && _data.current_holders.find((x) => x.orgRevisionId == revisionId)?.orgChild1 !=
_data.current_holders.find((x) => x.orgRevisionId == findRevision.id) null
?.orgChild1 != null ? `${_data.current_holders.find((x) => x.orgRevisionId == revisionId)?.orgChild1.orgChild1ShortName}${_data.current_holders.find((x) => x.orgRevisionId == revisionId)?.posMasterNo}`
? `${_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.orgChild1.orgChild1ShortName}${_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.posMasterNo}` : _data.current_holders.find((x) => x.orgRevisionId == revisionId) != null &&
: _data.current_holders.find((x) => x.orgRevisionId == findRevision.id) != _data.current_holders.find((x) => x.orgRevisionId == revisionId)?.orgRoot !=
null && null
_data.current_holders.find((x) => x.orgRevisionId == findRevision.id) ? `${_data.current_holders.find((x) => x.orgRevisionId == revisionId)?.orgRoot.orgRootShortName}${_data.current_holders.find((x) => x.orgRevisionId == revisionId)?.posMasterNo}`
?.orgRoot != null
? `${_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.orgRoot.orgRootShortName}${_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.posMasterNo}`
: null; : null;
const root = const root =
_data.current_holders.length == 0 || _data.current_holders.length == 0 ||
(_data.current_holders.find((x) => x.orgRevisionId == findRevision.id) != null && (_data.current_holders.find((x) => x.orgRevisionId == revisionId) != null &&
_data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.orgRoot == null) _data.current_holders.find((x) => x.orgRevisionId == revisionId)?.orgRoot == null)
? null ? null
: _data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.orgRoot; : _data.current_holders.find((x) => x.orgRevisionId == revisionId)?.orgRoot;
const child1 = const child1 =
_data.current_holders == null || _data.current_holders == null ||
_data.current_holders.length == 0 || _data.current_holders.length == 0 ||
_data.current_holders.find((x) => x.orgRevisionId == findRevision.id) == null _data.current_holders.find((x) => x.orgRevisionId == revisionId) == null
? null ? null
: _data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.orgChild1; : _data.current_holders.find((x) => x.orgRevisionId == revisionId)?.orgChild1;
const child2 = const child2 =
_data.current_holders == null || _data.current_holders == null ||
_data.current_holders.length == 0 || _data.current_holders.length == 0 ||
_data.current_holders.find((x) => x.orgRevisionId == findRevision.id) == null _data.current_holders.find((x) => x.orgRevisionId == revisionId) == null
? null ? null
: _data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.orgChild2; : _data.current_holders.find((x) => x.orgRevisionId == revisionId)?.orgChild2;
const child3 = const child3 =
_data.current_holders == null || _data.current_holders == null ||
_data.current_holders.length == 0 || _data.current_holders.length == 0 ||
_data.current_holders.find((x) => x.orgRevisionId == findRevision.id) == null _data.current_holders.find((x) => x.orgRevisionId == revisionId) == null
? null ? null
: _data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.orgChild3; : _data.current_holders.find((x) => x.orgRevisionId == revisionId)?.orgChild3;
const child4 = const child4 =
_data.current_holders == null || _data.current_holders == null ||
_data.current_holders.length == 0 || _data.current_holders.length == 0 ||
_data.current_holders.find((x) => x.orgRevisionId == findRevision.id) == null _data.current_holders.find((x) => x.orgRevisionId == revisionId) == null
? null ? null
: _data.current_holders.find((x) => x.orgRevisionId == findRevision.id)?.orgChild4; : _data.current_holders.find((x) => x.orgRevisionId == revisionId)?.orgChild4;
let _child1 = child1 == null ? "" : `${child1.orgChild1Name}/`; let _child1 = child1 == null ? "" : `${child1.orgChild1Name}/`;
let _child2 = child2 == null ? "" : `${child2.orgChild2Name}/`; let _child2 = child2 == null ? "" : `${child2.orgChild2Name}/`;