diff --git a/src/controllers/ReportController.ts b/src/controllers/ReportController.ts index 94ac4362..996f60a5 100644 --- a/src/controllers/ReportController.ts +++ b/src/controllers/ReportController.ts @@ -761,7 +761,17 @@ export class ReportController extends Controller { .sort((a, b) => a.posMasterOrder - b.posMasterOrder) .map(async (posMaster) => { if (posMaster.orgChild1Id == null) { - const positionName = [...new Set(posMaster.positions.map((x) => x.positionName))]; + const positionName = [ + ...new Set( + posMaster.positions + .sort((a:any, b:any) => a.orderNo - b.orderNo) + .map((x) => + x.positionArea + ? `${x.positionName} (${x.positionArea})` + : x.positionName + ) + ), + ]; const posType = [ ...new Set( posMaster.positions @@ -780,7 +790,11 @@ export class ReportController extends Controller { ...new Set( posMaster.positions .filter((x: any) => x.posExecutive != null) - .map((x) => x.posExecutive.posExecutiveName), + .map((x: any) => + x.positionExecutiveField + ? `${x.posExecutive.posExecutiveName} (${x.positionExecutiveField})` + : x.posExecutive.posExecutiveName + ) ), ]; @@ -867,7 +881,17 @@ export class ReportController extends Controller { .sort((a, b) => a.posMasterOrder - b.posMasterOrder) .map(async (posMaster) => { if (posMaster.orgChild2Id == null) { - const positionName = [...new Set(posMaster.positions.map((x) => x.positionName))]; + const positionName = [ + ...new Set( + posMaster.positions + .sort((a:any, b:any) => a.orderNo - b.orderNo) + .map((x) => + x.positionArea + ? `${x.positionName} (${x.positionArea})` + : x.positionName + ) + ), + ]; const posType = [ ...new Set( posMaster.positions @@ -886,7 +910,11 @@ export class ReportController extends Controller { ...new Set( posMaster.positions .filter((x: any) => x.posExecutive != null) - .map((x) => x.posExecutive.posExecutiveName), + .map((x: any) => + x.positionExecutiveField + ? `${x.posExecutive.posExecutiveName} (${x.positionExecutiveField})` + : x.posExecutive.posExecutiveName + ) ), ]; @@ -975,7 +1003,17 @@ export class ReportController extends Controller { .sort((a, b) => a.posMasterOrder - b.posMasterOrder) .map(async (posMaster) => { if (posMaster.orgChild3Id == null) { - const positionName = [...new Set(posMaster.positions.map((x) => x.positionName))]; + const positionName = [ + ...new Set( + posMaster.positions + .sort((a:any, b:any) => a.orderNo - b.orderNo) + .map((x) => + x.positionArea + ? `${x.positionName} (${x.positionArea})` + : x.positionName + ) + ), + ]; const posType = [ ...new Set( posMaster.positions @@ -990,13 +1028,17 @@ export class ReportController extends Controller { .map((x) => x.posLevel.posLevelName), ), ]; - const posExecutive = [ - ...new Set( - posMaster.positions - .filter((x: any) => x.posExecutive != null) - .map((x) => x.posExecutive.posExecutiveName), - ), - ]; + const posExecutive = [ + ...new Set( + posMaster.positions + .filter((x: any) => x.posExecutive != null) + .map((x: any) => + x.positionExecutiveField + ? `${x.posExecutive.posExecutiveName} (${x.positionExecutiveField})` + : x.posExecutive.posExecutiveName + ) + ), + ]; let node = { orgTreeName: orgChild2.orgChild2Name, @@ -1081,7 +1123,15 @@ export class ReportController extends Controller { .map(async (posMaster) => { if (posMaster.orgChild4Id == null) { const positionName = [ - ...new Set(posMaster.positions.map((x) => x.positionName)), + ...new Set( + posMaster.positions + .sort((a:any, b:any) => a.orderNo - b.orderNo) + .map((x) => + x.positionArea + ? `${x.positionName} (${x.positionArea})` + : x.positionName + ) + ), ]; const posType = [ ...new Set( @@ -1101,7 +1151,11 @@ export class ReportController extends Controller { ...new Set( posMaster.positions .filter((x: any) => x.posExecutive != null) - .map((x) => x.posExecutive.posExecutiveName), + .map((x: any) => + x.positionExecutiveField + ? `${x.posExecutive.posExecutiveName} (${x.positionExecutiveField})` + : x.posExecutive.posExecutiveName + ) ), ]; @@ -1187,7 +1241,15 @@ export class ReportController extends Controller { .sort((a, b) => a.posMasterOrder - b.posMasterOrder) .map(async (posMaster) => { const positionName = [ - ...new Set(posMaster.positions.map((x) => x.positionName)), + ...new Set( + posMaster.positions + .sort((a:any, b:any) => a.orderNo - b.orderNo) + .map((x) => + x.positionArea + ? `${x.positionName} (${x.positionArea})` + : x.positionName + ) + ), ]; const posType = [ ...new Set( @@ -1207,7 +1269,11 @@ export class ReportController extends Controller { ...new Set( posMaster.positions .filter((x: any) => x.posExecutive != null) - .map((x) => x.posExecutive.posExecutiveName), + .map((x: any) => + x.positionExecutiveField + ? `${x.posExecutive.posExecutiveName} (${x.positionExecutiveField})` + : x.posExecutive.posExecutiveName + ) ), ];