test(2) #2160
This commit is contained in:
parent
3d34a4c5ef
commit
9aea3cc88c
3 changed files with 69 additions and 67 deletions
|
|
@ -10828,15 +10828,18 @@ export class ProfileController extends Controller {
|
||||||
queryLike = "profile.citizenId LIKE :keyword";
|
queryLike = "profile.citizenId LIKE :keyword";
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case "fullname":
|
||||||
case "fullName":
|
case "fullName":
|
||||||
queryLike =
|
queryLike =
|
||||||
"CONCAT(profile.prefix, profile.firstName, ' ', profile.lastName) LIKE :keyword";
|
"CONCAT(profile.prefix, profile.firstName, ' ', profile.lastName) LIKE :keyword";
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case "firstname":
|
||||||
case "firstName":
|
case "firstName":
|
||||||
queryLike = "profile.firstName LIKE :keyword";
|
queryLike = "profile.firstName LIKE :keyword";
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case "lastname":
|
||||||
case "lastName":
|
case "lastName":
|
||||||
queryLike = "profile.lastName LIKE :keyword";
|
queryLike = "profile.lastName LIKE :keyword";
|
||||||
break;
|
break;
|
||||||
|
|
|
||||||
|
|
@ -5741,16 +5741,19 @@ export class ProfileEmployeeController extends Controller {
|
||||||
case "citizenId":
|
case "citizenId":
|
||||||
queryLike = "profile.citizenId LIKE :keyword";
|
queryLike = "profile.citizenId LIKE :keyword";
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case "fullname":
|
||||||
case "fullName":
|
case "fullName":
|
||||||
queryLike =
|
queryLike =
|
||||||
"CONCAT(profile.prefix, profile.firstName, ' ', profile.lastName) LIKE :keyword";
|
"CONCAT(profile.prefix, profile.firstName, ' ', profile.lastName) LIKE :keyword";
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case "firstname":
|
||||||
case "firstName":
|
case "firstName":
|
||||||
queryLike = "profile.firstName LIKE :keyword";
|
queryLike = "profile.firstName LIKE :keyword";
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case "lastname":
|
||||||
case "lastName":
|
case "lastName":
|
||||||
queryLike = "profile.lastName LIKE :keyword";
|
queryLike = "profile.lastName LIKE :keyword";
|
||||||
break;
|
break;
|
||||||
|
|
|
||||||
|
|
@ -560,74 +560,70 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
|
||||||
"positions.posExecutive",
|
"positions.posExecutive",
|
||||||
],
|
],
|
||||||
});
|
});
|
||||||
// // xxx
|
// ดึง posMasterAssign ของ revision เดิม xxx
|
||||||
// // ดึง assignment ของ revision เดิม
|
const oldposMasterAssigns = await posMasterAssignRepository.find({
|
||||||
// const oldAssigns = await posMasterAssignRepository.find({
|
relations: ["posMaster"],
|
||||||
// relations: ["posMaster"],
|
where: {
|
||||||
// where: {
|
posMaster: {
|
||||||
// posMaster: {
|
orgRevisionId: orgRevisionPublish?.id,
|
||||||
// orgRevisionId: orgRevisionPublish?.id,
|
},
|
||||||
// },
|
},
|
||||||
// },
|
});
|
||||||
// });
|
// สร้าง Map: ancestorDNA → posMasterAssign[]
|
||||||
// // สร้าง Map: ancestorDNA → assignments[]
|
const assignMap = new Map<string, PosMasterAssign[]>();
|
||||||
// const assignMap = new Map<string, PosMasterAssign[]>();
|
for (const posmasterAssign of oldposMasterAssigns) {
|
||||||
// for (const a of oldAssigns) {
|
const dna = posmasterAssign.posMaster.ancestorDNA;
|
||||||
// const dna = a.posMaster.ancestorDNA;
|
if (!assignMap.has(dna)) {
|
||||||
// if (!assignMap.has(dna)) {
|
assignMap.set(dna, []);
|
||||||
// assignMap.set(dna, []);
|
}
|
||||||
// }
|
assignMap.get(dna)!.push(posmasterAssign);
|
||||||
// assignMap.get(dna)!.push(a);
|
}
|
||||||
// }
|
// ดึง permissionProfiles ของ revision เดิม
|
||||||
// const permissionProfiles = await permissionProfilesRepository.find({
|
const oldPermissionProfiles = await permissionProfilesRepository.find({
|
||||||
// relations: ["orgRootTree"],
|
relations: ["orgRootTree"],
|
||||||
// where: {
|
where: {
|
||||||
// orgRootTree: {
|
orgRootTree: {
|
||||||
// orgRevisionId: orgRevisionPublish?.id,
|
orgRevisionId: orgRevisionPublish?.id,
|
||||||
// }
|
}
|
||||||
// }
|
}
|
||||||
// });
|
});
|
||||||
// const permissionMap = new Map<string, PermissionProfile[]>();
|
// สร้าง Map: ancestorDNA → permissionProfiles[]
|
||||||
// for (const p of permissionProfiles) {
|
const permissionMap = new Map<string, PermissionProfile[]>();
|
||||||
// const dna = p.orgRootTree.ancestorDNA;
|
for (const permissionProfile of oldPermissionProfiles) {
|
||||||
// if (!permissionMap.has(dna)) {
|
const dna = permissionProfile.orgRootTree.ancestorDNA;
|
||||||
// permissionMap.set(dna, []);
|
if (!permissionMap.has(dna)) {
|
||||||
// }
|
permissionMap.set(dna, []);
|
||||||
// permissionMap.get(dna)!.push(p);
|
}
|
||||||
// }
|
permissionMap.get(dna)!.push(permissionProfile);
|
||||||
// const newRoots = await orgRootRepository.find({
|
}
|
||||||
// where: { orgRevisionId: orgRevisionDraft?.id },
|
const newRoots = await orgRootRepository.find({
|
||||||
// });
|
where: { orgRevisionId: orgRevisionDraft?.id },
|
||||||
// const newRootMap = new Map(
|
});
|
||||||
// newRoots.map(r => [r.ancestorDNA, r.id])
|
const newRootMap = new Map(
|
||||||
// );
|
newRoots.map(r => [r.ancestorDNA, r.id])
|
||||||
|
);
|
||||||
const _null: any = null;
|
const _null: any = null;
|
||||||
for (const item of posMaster) {
|
for (const item of posMaster) {
|
||||||
// /* ===============================
|
|
||||||
// * Clone posMasterAssign & permissionProfiles xxx
|
// Clone posMasterAssign xxx
|
||||||
// * =============================== */
|
const assigns = assignMap.get(item.ancestorDNA);
|
||||||
// const assigns = assignMap.get(item.ancestorDNA);
|
if (assigns && assigns.length > 0) {
|
||||||
|
const newAssigns = assigns.map(({ id, ...fields }) => ({
|
||||||
// if (assigns && assigns.length > 0) {
|
...fields, // copy ทุก field ยกเว้น id
|
||||||
// const newAssigns = assigns.map(({ id, ...rest }) => ({
|
posMasterId: item.id, // ผูกกับ posMasterId ใหม่
|
||||||
// ...rest, // copy ทุก field ยกเว้น id
|
}));
|
||||||
// posMasterId: item.id, // ผูกกับ posMaster ใหม่
|
await posMasterAssignRepository.save(newAssigns);
|
||||||
// }));
|
}
|
||||||
|
// Clone permissionProfiles
|
||||||
// await posMasterAssignRepository.save(newAssigns);
|
const perms = permissionMap.get(item.orgRoot.ancestorDNA);
|
||||||
// }
|
const newRootId = newRootMap.get(item.orgRoot.ancestorDNA);
|
||||||
|
if (perms && perms.length > 0 && newRootId) {
|
||||||
// const perms = permissionMap.get(item.ancestorDNA);
|
const newPerms = perms.map(({ id, ...fields }) => ({
|
||||||
// const newRootId = newRootMap.get(item.ancestorDNA);
|
...fields,
|
||||||
|
orgRootId: newRootId,
|
||||||
// if (perms && perms.length > 0 && newRootId) {
|
}));
|
||||||
// const newPerms = perms.map(({ id, orgRootTree, ...rest }) => ({
|
await permissionProfilesRepository.save(newPerms);
|
||||||
// ...rest, // profileId, isEdit, isCheck
|
}
|
||||||
// orgRootId: newRootId,
|
|
||||||
// }));
|
|
||||||
|
|
||||||
// await permissionProfilesRepository.save(newPerms);
|
|
||||||
// }
|
|
||||||
|
|
||||||
if (item.next_holderId != null) {
|
if (item.next_holderId != null) {
|
||||||
const profile = await repoProfile.findOne({
|
const profile = await repoProfile.findOne({
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue