Merge branch 'develop' into adiDev

This commit is contained in:
AdisakKanthawilang 2025-03-19 10:53:00 +07:00
commit 319d5ea683
7 changed files with 39 additions and 21 deletions

View file

@ -700,8 +700,8 @@ export class EmployeePositionController extends Controller {
// posMaster.isStaff = requestBody.isStaff == null?_null:requestBody.isStaff; // posMaster.isStaff = requestBody.isStaff == null?_null:requestBody.isStaff;
// posMaster.positionSign = requestBody.positionSign == null ? _null : requestBody.positionSign; // posMaster.positionSign = requestBody.positionSign == null ? _null : requestBody.positionSign;
// posMaster.isOfficer = requestBody.isOfficer; // posMaster.isOfficer = requestBody.isOfficer;
posMaster.posMasterNoPrefix = requestBody.posMasterNoPrefix; posMaster.posMasterNoPrefix = requestBody.posMasterNoPrefix ?? _null;
posMaster.posMasterNoSuffix = requestBody.posMasterNoSuffix; posMaster.posMasterNoSuffix = requestBody.posMasterNoSuffix ?? _null;
posMaster.reason = requestBody.reason == null ? "" : requestBody.reason; posMaster.reason = requestBody.reason == null ? "" : requestBody.reason;
posMaster.orgRootId = null; posMaster.orgRootId = null;
posMaster.orgChild1Id = null; posMaster.orgChild1Id = null;
@ -1233,6 +1233,7 @@ export class EmployeePositionController extends Controller {
return { return {
id: posMaster.id, id: posMaster.id,
current_holderId: posMaster.current_holderId,
orgRootId: posMaster.orgRootId, orgRootId: posMaster.orgRootId,
orgChild1Id: posMaster.orgChild1Id, orgChild1Id: posMaster.orgChild1Id,
orgChild2Id: posMaster.orgChild2Id, orgChild2Id: posMaster.orgChild2Id,

View file

@ -997,6 +997,7 @@ export class EmployeeTempPositionController extends Controller {
return { return {
id: posMaster.id, id: posMaster.id,
current_holderId: posMaster.current_holderId,
orgRootId: posMaster.orgRootId, orgRootId: posMaster.orgRootId,
orgChild1Id: posMaster.orgChild1Id, orgChild1Id: posMaster.orgChild1Id,
orgChild2Id: posMaster.orgChild2Id, orgChild2Id: posMaster.orgChild2Id,

View file

@ -1250,8 +1250,8 @@ export class PositionController extends Controller {
? _null ? _null
: requestBody.positionSign; : requestBody.positionSign;
posMaster.posMasterNo = requestBody.posMasterNo; posMaster.posMasterNo = requestBody.posMasterNo;
posMaster.posMasterNoPrefix = requestBody.posMasterNoPrefix; posMaster.posMasterNoPrefix = requestBody.posMasterNoPrefix ?? _null;
posMaster.posMasterNoSuffix = requestBody.posMasterNoSuffix; posMaster.posMasterNoSuffix = requestBody.posMasterNoSuffix ?? _null;
posMaster.reason = requestBody.reason == null ? "" : requestBody.reason; posMaster.reason = requestBody.reason == null ? "" : requestBody.reason;
let orgRoot: any = null; let orgRoot: any = null;
@ -1913,6 +1913,7 @@ export class PositionController extends Controller {
return { return {
id: posMaster.id, id: posMaster.id,
current_holderId: posMaster.current_holderId,
isDirector: posMaster.isDirector, isDirector: posMaster.isDirector,
orgRootId: posMaster.orgRootId, orgRootId: posMaster.orgRootId,
orgChild1Id: posMaster.orgChild1Id, orgChild1Id: posMaster.orgChild1Id,
@ -2342,6 +2343,7 @@ export class PositionController extends Controller {
return { return {
id: posMaster.id, id: posMaster.id,
current_holderId: posMaster.current_holderId,
isDirector: posMaster.isDirector, isDirector: posMaster.isDirector,
orgRootId: posMaster.orgRootId, orgRootId: posMaster.orgRootId,
orgChild1Id: posMaster.orgChild1Id, orgChild1Id: posMaster.orgChild1Id,

View file

@ -269,17 +269,18 @@ export class ProfileController extends Controller {
: null, : null,
position: Extension.ToThaiNumber( position: Extension.ToThaiNumber(
Extension.ToThaiNumber( Extension.ToThaiNumber(
`${item.positionName != null ? item.positionName : "-"} ${item.positionType == null ? (item.positionCee??"") : (item.positionType == "อำนวยการ" || item.positionType == "บริหาร" ? item.positionType : "") + item.positionLevel}`, `${item.positionName != null ? item.positionName : "-"} ${item.positionType == null ? item.positionCee ?? "" : (item.positionType == "อำนวยการ" || item.positionType == "บริหาร" ? item.positionType : "") + item.positionLevel}`,
), ),
), ),
posNo: item.posNo != null ? Extension.ToThaiNumber(item.posNo) : "", posNo: item.posNo != null ? Extension.ToThaiNumber(item.posNo) : "",
orgRoot: item.orgRoot != null ? Extension.ToThaiNumber( item.orgRoot) : "", orgRoot: item.orgRoot != null ? Extension.ToThaiNumber(item.orgRoot) : "",
orgChild1: item.orgChild1 != null ? Extension.ToThaiNumber( item.orgChild1) : "", orgChild1: item.orgChild1 != null ? Extension.ToThaiNumber(item.orgChild1) : "",
orgChild2: item.orgChild2 != null ? Extension.ToThaiNumber( item.orgChild2) : "", orgChild2: item.orgChild2 != null ? Extension.ToThaiNumber(item.orgChild2) : "",
orgChild3: item.orgChild3 != null ? Extension.ToThaiNumber( item.orgChild3) : "", orgChild3: item.orgChild3 != null ? Extension.ToThaiNumber(item.orgChild3) : "",
orgChild4: item.orgChild4 != null ? Extension.ToThaiNumber( item.orgChild4) : "", orgChild4: item.orgChild4 != null ? Extension.ToThaiNumber(item.orgChild4) : "",
positionCee: item.positionCee != null ? Extension.ToThaiNumber( item.positionCee) : "", positionCee: item.positionCee != null ? Extension.ToThaiNumber(item.positionCee) : "",
positionExecutive: item.positionExecutive != null ? Extension.ToThaiNumber( item.positionExecutive) : "", positionExecutive:
item.positionExecutive != null ? Extension.ToThaiNumber(item.positionExecutive) : "",
})) }))
: [ : [
{ {
@ -356,7 +357,7 @@ export class ProfileController extends Controller {
salary_raw.length > 0 && salary_raw[0].positionName != null salary_raw.length > 0 && salary_raw[0].positionName != null
? Extension.ToThaiNumber( ? Extension.ToThaiNumber(
Extension.ToThaiNumber( Extension.ToThaiNumber(
`${salary_raw[0].positionName != null ? salary_raw[0].positionName : "-"} ${salary_raw[0].positionType == null ? (salary_raw[0].positionCee??"") : (salary_raw[0].positionType == "อำนวยการ" || salary_raw[0].positionType == "บริหาร" ? salary_raw[0].positionType : "") + salary_raw[0].positionLevel}`, `${salary_raw[0].positionName != null ? salary_raw[0].positionName : "-"} ${salary_raw[0].positionType == null ? salary_raw[0].positionCee ?? "" : (salary_raw[0].positionType == "อำนวยการ" || salary_raw[0].positionType == "บริหาร" ? salary_raw[0].positionType : "") + salary_raw[0].positionLevel}`,
), ),
) )
: "", : "",
@ -7434,6 +7435,12 @@ export class ProfileController extends Controller {
null null
? null ? null
: profile.current_holders.find((x) => x.orgRevisionId == orgRevisionPublish.id)?.orgChild4; : profile.current_holders.find((x) => x.orgRevisionId == orgRevisionPublish.id)?.orgChild4;
const position = await this.positionRepository.findOne({
relations: ["posExecutive"],
where: {
posMasterId: posMaster?.id,
},
});
const _profile: any = { const _profile: any = {
profileId: profile.id, profileId: profile.id,
prefix: profile.prefix, prefix: profile.prefix,
@ -7451,6 +7458,10 @@ export class ProfileController extends Controller {
posTypeName: profile.posType == null ? null : profile.posType.posTypeName, posTypeName: profile.posType == null ? null : profile.posType.posTypeName,
posTypeRank: profile.posType == null ? null : profile.posType.posTypeRank, posTypeRank: profile.posType == null ? null : profile.posType.posTypeRank,
posTypeId: profile.posType == null ? null : profile.posType.id, posTypeId: profile.posType == null ? null : profile.posType.id,
posExecutiveName:
position == null || position.posExecutive == null
? null
: position.posExecutive.posExecutiveName,
orgRevisionId: root == null ? null : root.orgRevisionId, orgRevisionId: root == null ? null : root.orgRevisionId,
rootId: root == null ? null : root.id, rootId: root == null ? null : root.id,
rootDnaId: root == null ? null : root.ancestorDNA, rootDnaId: root == null ? null : root.ancestorDNA,

View file

@ -235,13 +235,13 @@ export class EmployeePosMaster extends EntityBase {
export class CreateEmployeePosMaster { export class CreateEmployeePosMaster {
@Column() @Column()
posMasterNoPrefix: string; posMasterNoPrefix: string | null;
@Column() @Column()
posMasterNo: number; posMasterNo: number;
@Column() @Column()
posMasterNoSuffix: string; posMasterNoSuffix: string | null;
@Column("uuid") @Column("uuid")
positions: CreateEmployeePosDict[]; positions: CreateEmployeePosDict[];

View file

@ -267,13 +267,13 @@ export class PosMaster extends EntityBase {
export class CreatePosMaster { export class CreatePosMaster {
@Column() @Column()
posMasterNoPrefix: string; posMasterNoPrefix: string | null;
@Column() @Column()
posMasterNo: number; posMasterNo: number;
@Column() @Column()
posMasterNoSuffix: string; posMasterNoSuffix: string | null;
@Column("uuid") @Column("uuid")
positions: CreatePosDict[]; positions: CreatePosDict[];

View file

@ -1274,13 +1274,13 @@ async function handler_org_draft(msg: amqp.ConsumeMessage): Promise<boolean> {
await posMasterRepository.save(posMaster); await posMasterRepository.save(posMaster);
// Copy assignments // Copy assignments
item.posMasterAssigns = item.posMasterAssigns.map( posMaster.posMasterAssigns = item.posMasterAssigns.map(
({ id, ...rest }: PosMasterAssign) => ({ ({ id, ...rest }: PosMasterAssign) => ({
...rest, ...rest,
posMasterId: posMaster.id, posMasterId: posMaster.id,
}), }),
); );
posMaster.posMasterAssigns = item.posMasterAssigns; await posMasterRepository.save(posMaster);
// Create positions // Create positions
for await (const pos of item.positions) { for await (const pos of item.positions) {
@ -1365,13 +1365,13 @@ async function handler_org_draft(msg: amqp.ConsumeMessage): Promise<boolean> {
await posMasterRepository.save(posMaster); await posMasterRepository.save(posMaster);
// Copy assignments // Copy assignments
item.posMasterAssigns = item.posMasterAssigns.map( posMaster.posMasterAssigns = item.posMasterAssigns.map(
({ id, ...rest }: PosMasterAssign) => ({ ({ id, ...rest }: PosMasterAssign) => ({
...rest, ...rest,
posMasterId: posMaster.id, posMasterId: posMaster.id,
}), }),
); );
posMaster.posMasterAssigns = item.posMasterAssigns; await posMasterRepository.save(posMaster);
// Create positions // Create positions
for await (const pos of item.positions) { for await (const pos of item.positions) {
@ -1464,6 +1464,7 @@ async function handler_org_draft(msg: amqp.ConsumeMessage): Promise<boolean> {
posMasterId: posMaster.id, posMasterId: posMaster.id,
}), }),
); );
await posMasterRepository.save(posMaster);
// Create positions // Create positions
for await (const pos of item.positions) { for await (const pos of item.positions) {
@ -1558,6 +1559,7 @@ async function handler_org_draft(msg: amqp.ConsumeMessage): Promise<boolean> {
posMasterId: posMaster.id, posMasterId: posMaster.id,
}), }),
); );
await posMasterRepository.save(posMaster);
// Create positions // Create positions
for await (const pos of item.positions) { for await (const pos of item.positions) {
@ -1655,6 +1657,7 @@ async function handler_org_draft(msg: amqp.ConsumeMessage): Promise<boolean> {
posMasterId: posMaster.id, posMasterId: posMaster.id,
}), }),
); );
await posMasterRepository.save(posMaster);
// Create positions // Create positions
for await (const pos of item.positions) { for await (const pos of item.positions) {