เผยแพร่โครงสร้าง
This commit is contained in:
parent
fd18644ef8
commit
329f83a989
1 changed files with 37 additions and 32 deletions
|
|
@ -246,7 +246,7 @@ async function handler(msg: amqp.ConsumeMessage): Promise<boolean> {
|
|||
return null;
|
||||
}
|
||||
allRefIds.add(key);
|
||||
|
||||
|
||||
return {
|
||||
refId: x.refId,
|
||||
commandNo: command.commandNo,
|
||||
|
|
@ -264,7 +264,7 @@ async function handler(msg: amqp.ConsumeMessage): Promise<boolean> {
|
|||
};
|
||||
})
|
||||
.filter(Boolean),
|
||||
20
|
||||
20,
|
||||
);
|
||||
|
||||
for (const chunk of chunks) {
|
||||
|
|
@ -272,7 +272,7 @@ async function handler(msg: amqp.ConsumeMessage): Promise<boolean> {
|
|||
{ headers: { authorization: token } },
|
||||
path + "/excecute",
|
||||
{ refIds: chunk },
|
||||
false
|
||||
false,
|
||||
);
|
||||
}
|
||||
|
||||
|
|
@ -289,7 +289,6 @@ async function handler(msg: amqp.ConsumeMessage): Promise<boolean> {
|
|||
|
||||
console.log("[AMQ] Excecute Command Success");
|
||||
return !!result;
|
||||
|
||||
} catch (e) {
|
||||
console.error(e);
|
||||
if (user) {
|
||||
|
|
@ -555,8 +554,15 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
|
|||
const profile = await repoProfile.findOne({
|
||||
where: { id: item.next_holderId == null ? "" : item.next_holderId },
|
||||
});
|
||||
const position = await item.positions.find((x) => x.positionIsSelected == true);
|
||||
if (profile != null) {
|
||||
if (profile != null && item.positions.length > 0) {
|
||||
let position = await item.positions.find((x) => x.positionIsSelected == true);
|
||||
if (position == null) {
|
||||
position = await item.positions.find((x) => x.posLevelId == profile?.posLevelId);
|
||||
if (position == null) {
|
||||
position = await item.positions.sort((a, b) => a.orderNo - b.orderNo)[0];
|
||||
}
|
||||
}
|
||||
|
||||
profile.posLevelId = position?.posLevelId ?? _null;
|
||||
profile.posTypeId = position?.posTypeId ?? _null;
|
||||
profile.position = position?.positionName ?? _null;
|
||||
|
|
@ -631,29 +637,28 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
|
|||
// }));
|
||||
// await repoEmployeePosmaster.save(_orgemployeePosMaster);
|
||||
const validProfileIds = new Set(
|
||||
(await repoProfileEmployee.find({ select: ["id"] })).map(p => p.id)
|
||||
(await repoProfileEmployee.find({ select: ["id"] })).map((p) => p.id),
|
||||
);
|
||||
|
||||
|
||||
_orgemployeePosMaster = orgemployeePosMaster.map((x) => ({
|
||||
...x,
|
||||
current_holderId: x.current_holderId && validProfileIds.has(x.current_holderId)
|
||||
? x.current_holderId
|
||||
: null,
|
||||
current_holderId:
|
||||
x.current_holderId && validProfileIds.has(x.current_holderId) ? x.current_holderId : null,
|
||||
ancestorDNA:
|
||||
!x.ancestorDNA || x.ancestorDNA === "00000000-0000-0000-0000-000000000000"
|
||||
? x.id
|
||||
: x.ancestorDNA,
|
||||
}));
|
||||
await repoEmployeePosmaster
|
||||
.createQueryBuilder()
|
||||
.insert()
|
||||
.into(EmployeePosMaster)
|
||||
.values(_orgemployeePosMaster)
|
||||
.orUpdate({
|
||||
conflict_target: ['id'],
|
||||
overwrite: ['ancestorDNA'],
|
||||
})
|
||||
.execute();
|
||||
.createQueryBuilder()
|
||||
.insert()
|
||||
.into(EmployeePosMaster)
|
||||
.values(_orgemployeePosMaster)
|
||||
.orUpdate({
|
||||
conflict_target: ["id"],
|
||||
overwrite: ["ancestorDNA"],
|
||||
})
|
||||
.execute();
|
||||
|
||||
// }
|
||||
//หา dna posmaster ถ้าไม่มีให้เอาตัวเองเป็น dna
|
||||
|
|
@ -678,17 +683,17 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
|
|||
}));
|
||||
// await repoEmployeeTempPosmaster.save(_orgemployeeTempPosMaster);
|
||||
await repoEmployeeTempPosmaster
|
||||
.createQueryBuilder()
|
||||
.insert()
|
||||
.into(EmployeeTempPosMaster)
|
||||
.values(_orgemployeeTempPosMaster)
|
||||
.orUpdate({
|
||||
conflict_target: ['id'],
|
||||
overwrite: ['ancestorDNA'],
|
||||
})
|
||||
.execute();
|
||||
.createQueryBuilder()
|
||||
.insert()
|
||||
.into(EmployeeTempPosMaster)
|
||||
.values(_orgemployeeTempPosMaster)
|
||||
.orUpdate({
|
||||
conflict_target: ["id"],
|
||||
overwrite: ["ancestorDNA"],
|
||||
})
|
||||
.execute();
|
||||
// }
|
||||
|
||||
|
||||
//create org
|
||||
orgRoot.forEach(async (x: any) => {
|
||||
var dataId = x.id;
|
||||
|
|
@ -1495,7 +1500,7 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
|
|||
});
|
||||
});
|
||||
// }
|
||||
|
||||
|
||||
const employeePosMaster = await repoEmployeePosmaster.find({
|
||||
where: { orgRevisionId: orgRevisionDraft.id },
|
||||
relations: ["positions", "positions.posLevel", "positions.posType"],
|
||||
|
|
@ -2280,7 +2285,7 @@ async function handler_org_draft(msg: amqp.ConsumeMessage): Promise<boolean> {
|
|||
|
||||
console.log("[AMQ] Create Draft Success");
|
||||
if (user) {
|
||||
await sendWebSocket(
|
||||
await sendWebSocket(
|
||||
"send-create-draft-org",
|
||||
{
|
||||
success: true,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue