This commit is contained in:
AdisakKanthawilang 2025-06-20 15:51:36 +07:00
parent de92ad520c
commit 3403b2201e

View file

@ -397,7 +397,7 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
const orgRevisionPublish = await repoOrgRevision const orgRevisionPublish = await repoOrgRevision
.createQueryBuilder("orgRevision") .createQueryBuilder("orgRevision")
.where("orgRevision.orgRevisionIsDraft = false") .where("orgRevision.orgRevisionIsDraft = false")
.andWhere("orgRevision.orgRevisionIsCurrent = true") .andWhere("orgRevision.orgRevisionIsCurrent = true")
.getOne(); .getOne();
@ -406,12 +406,12 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
.where("orgRevision.orgRevisionIsDraft = true") .where("orgRevision.orgRevisionIsDraft = true")
.andWhere("orgRevision.orgRevisionIsCurrent = false") .andWhere("orgRevision.orgRevisionIsCurrent = false")
.getOne(); .getOne();
if (orgRevisionPublish) { if (orgRevisionPublish) { //เข้าเงื่อนไขจะเปลี่ยนสถานะ orgRevisionPublish เป็นไม่ใช่ current และไม่เป็น daft
orgRevisionPublish.orgRevisionIsDraft = false; orgRevisionPublish.orgRevisionIsDraft = false;
orgRevisionPublish.orgRevisionIsCurrent = false; orgRevisionPublish.orgRevisionIsCurrent = false;
await repoOrgRevision.save(orgRevisionPublish); await repoOrgRevision.save(orgRevisionPublish);
} }
if (orgRevisionDraft) { if (orgRevisionDraft) { //เข้าเงื่อนไขจะเปลี่ยนสถานะ orgRevisionDraft เป็นไม่ใช่ daft และเป็น current
orgRevisionDraft.orgRevisionIsCurrent = true; orgRevisionDraft.orgRevisionIsCurrent = true;
orgRevisionDraft.orgRevisionIsDraft = false; orgRevisionDraft.orgRevisionIsDraft = false;
await repoOrgRevision.save(orgRevisionDraft); await repoOrgRevision.save(orgRevisionDraft);
@ -458,7 +458,8 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
if (orgRevisionPublish != null && orgRevisionDraft != null) { if (orgRevisionPublish != null && orgRevisionDraft != null) {
//new main revision //new main revision
const before = null; const before = null;
//ทุก orgRoot และ orgChild ข้างล่างนี้จะเป็นตัวเก่าที่ไม่ได้เป็น current revision
//cone tree //cone tree
// if ( // if (
// orgRevisionPublish.typeDraft.toUpperCase() == "ORG" || // orgRevisionPublish.typeDraft.toUpperCase() == "ORG" ||
@ -471,7 +472,7 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
const orgRoot = await orgRootRepository.find({ const orgRoot = await orgRootRepository.find({
where: { orgRevisionId: orgRevisionPublish.id }, where: { orgRevisionId: orgRevisionPublish.id },
}); });
const orgChild1 = await child1Repository.find({ const orgChild1 = await child1Repository.find({
where: { orgRevisionId: orgRevisionPublish.id }, where: { orgRevisionId: orgRevisionPublish.id },
}); });
@ -509,6 +510,7 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
: x.ancestorDNA, : x.ancestorDNA,
})); }));
await repoEmployeePosmaster.save(_orgemployeePosMaster); await repoEmployeePosmaster.save(_orgemployeePosMaster);
// } // }
//หา dna posmaster ถ้าไม่มีให้เอาตัวเองเป็น dna //หา dna posmaster ถ้าไม่มีให้เอาตัวเองเป็น dna
const orgemployeeTempPosMaster = await repoEmployeeTempPosmaster.find({ const orgemployeeTempPosMaster = await repoEmployeeTempPosmaster.find({
@ -532,14 +534,30 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
})); }));
await repoEmployeeTempPosmaster.save(_orgemployeeTempPosMaster); await repoEmployeeTempPosmaster.save(_orgemployeeTempPosMaster);
// } // }
//create org //create org
orgRoot.forEach(async (x: any) => { orgRoot.forEach(async (x: any) => {
var dataId = x.id; var dataId = x.id;
const orgRootCurrent = await orgRootRepository.find({
where: { orgRevisionId: orgRevisionDraft.id },
});
const matchedOrgRoot = orgRootCurrent.find((i: OrgRoot) => {
if (
x.ancestorDNA === x.id || // ถ้า ancestorDNA ถูกตั้งเป็น id ตัวเอง
x.ancestorDNA === null ||
x.ancestorDNA === "00000000-0000-0000-0000-000000000000"
) {
return i.ancestorDNA === null || i.ancestorDNA === "00000000-0000-0000-0000-000000000000";
}
return i.ancestorDNA === x.ancestorDNA;
});
// if ( // if (
// requestBody.typeDraft.toUpperCase() == "ORG_POSITION" || // requestBody.typeDraft.toUpperCase() == "ORG_POSITION" ||
// requestBody.typeDraft.toUpperCase() == "ORG_POSITION_PERSON" || // requestBody.typeDraft.toUpperCase() == "ORG_POSITION_PERSON" ||
// requestBody.typeDraft.toUpperCase() == "ORG_POSITION_ROLE" || // requestBody.typeDraft.toUpperCase() == "ORG_POSITION_ROLE" ||
// requestBody.typeDraft.toUpperCase() == "ORG_POSITION_PERSON_ROLE" // requestBody.typeDraft.toUpperCase() == "ORG_POSITION_PERSON_ROLE"
// ) { // ) {
//create employeePosmaster //create employeePosmaster
@ -569,7 +587,7 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
// } // }
// employeePosMaster.current_holderId = null; // employeePosMaster.current_holderId = null;
employeePosMaster.orgRevisionId = orgRevisionDraft.id; employeePosMaster.orgRevisionId = orgRevisionDraft.id;
employeePosMaster.orgRootId = dataId; employeePosMaster.orgRootId = matchedOrgRoot?.id ?? null
employeePosMaster.createdUserId = ""; employeePosMaster.createdUserId = "";
employeePosMaster.createdFullName = "System Administrator"; employeePosMaster.createdFullName = "System Administrator";
employeePosMaster.createdAt = new Date(); employeePosMaster.createdAt = new Date();
@ -629,7 +647,7 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
// } // }
// employeeTempPosMaster.current_holderId = null; // employeeTempPosMaster.current_holderId = null;
employeeTempPosMaster.orgRevisionId = orgRevisionDraft.id; employeeTempPosMaster.orgRevisionId = orgRevisionDraft.id;
employeeTempPosMaster.orgRootId = dataId; employeeTempPosMaster.orgRootId = matchedOrgRoot?.id ?? null;
employeeTempPosMaster.createdUserId = ""; employeeTempPosMaster.createdUserId = "";
employeeTempPosMaster.createdFullName = "System Administrator"; employeeTempPosMaster.createdFullName = "System Administrator";
employeeTempPosMaster.createdAt = new Date(); employeeTempPosMaster.createdAt = new Date();
@ -669,6 +687,21 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
.filter((x: OrgChild1) => x.orgRootId == dataId) .filter((x: OrgChild1) => x.orgRootId == dataId)
.forEach(async (x: any) => { .forEach(async (x: any) => {
var data1Id = x.id; var data1Id = x.id;
const orgChild1Current = await child1Repository.find({
where: { orgRevisionId: orgRevisionDraft.id },
});
const matchedOrgChild1 = orgChild1Current.find((i: OrgChild1) => {
if (
x.ancestorDNA === x.id || // ถ้า ancestorDNA ถูกตั้งเป็น id ตัวเอง
x.ancestorDNA === null ||
x.ancestorDNA === "00000000-0000-0000-0000-000000000000"
) {
return i.ancestorDNA === null || i.ancestorDNA === "00000000-0000-0000-0000-000000000000";
}
return i.ancestorDNA === x.ancestorDNA;
});
// ("[in case Child1] ancestorDNA", `${x.orgChild1Id == matchedOrgChild1?.id}`);
// if ( // if (
// requestBody.typeDraft.toUpperCase() == "ORG_POSITION" || // requestBody.typeDraft.toUpperCase() == "ORG_POSITION" ||
// requestBody.typeDraft.toUpperCase() == "ORG_POSITION_PERSON" || // requestBody.typeDraft.toUpperCase() == "ORG_POSITION_PERSON" ||
@ -681,6 +714,7 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
.filter((x: EmployeePosMaster) => x.orgChild1Id == data1Id && x.orgChild2Id == null) .filter((x: EmployeePosMaster) => x.orgChild1Id == data1Id && x.orgChild2Id == null)
.map(async (item: any) => { .map(async (item: any) => {
delete item.id; delete item.id;
// console.log("[in case Child1] orgChild1Id == data1Id");
const employeePosMaster = Object.assign(new EmployeePosMaster(), item); const employeePosMaster = Object.assign(new EmployeePosMaster(), item);
employeePosMaster.positions = []; employeePosMaster.positions = [];
// if ( // if (
@ -702,8 +736,8 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
// } // }
// employeePosMaster.current_holderId = null; // employeePosMaster.current_holderId = null;
employeePosMaster.orgRevisionId = orgRevisionDraft.id; employeePosMaster.orgRevisionId = orgRevisionDraft.id;
employeePosMaster.orgRootId = dataId; employeePosMaster.orgRootId = matchedOrgRoot?.id ?? null;
employeePosMaster.orgChild1Id = data1Id; employeePosMaster.orgChild1Id = matchedOrgChild1?.id ?? null;
employeePosMaster.createdUserId = ""; employeePosMaster.createdUserId = "";
employeePosMaster.createdFullName = "System Administrator"; employeePosMaster.createdFullName = "System Administrator";
employeePosMaster.createdAt = new Date(); employeePosMaster.createdAt = new Date();
@ -745,7 +779,7 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
.map(async (item: any) => { .map(async (item: any) => {
delete item.id; delete item.id;
const employeeTempPosMaster = Object.assign(new EmployeeTempPosMaster(), item); const employeeTempPosMaster = Object.assign(new EmployeeTempPosMaster(), item);
employeeTempPosMaster.positions = []; employeeTempPosMaster.positions = [];
// if ( // if (
// requestBody.typeDraft.toUpperCase() == "ORG_POSITION_PERSON" || // requestBody.typeDraft.toUpperCase() == "ORG_POSITION_PERSON" ||
// requestBody.typeDraft.toUpperCase() == "ORG_POSITION_PERSON_ROLE" // requestBody.typeDraft.toUpperCase() == "ORG_POSITION_PERSON_ROLE"
@ -765,8 +799,8 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
// } // }
// employeeTempPosMaster.current_holderId = null; // employeeTempPosMaster.current_holderId = null;
employeeTempPosMaster.orgRevisionId = orgRevisionDraft.id; employeeTempPosMaster.orgRevisionId = orgRevisionDraft.id;
employeeTempPosMaster.orgRootId = dataId; employeeTempPosMaster.orgRootId = matchedOrgRoot?.id ?? null;
employeeTempPosMaster.orgChild1Id = data1Id; employeeTempPosMaster.orgChild1Id = matchedOrgChild1?.id ?? null;
employeeTempPosMaster.createdUserId = ""; employeeTempPosMaster.createdUserId = "";
employeeTempPosMaster.createdFullName = "System Administrator"; employeeTempPosMaster.createdFullName = "System Administrator";
employeeTempPosMaster.createdAt = new Date(); employeeTempPosMaster.createdAt = new Date();
@ -806,6 +840,21 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
.filter((x: OrgChild2) => x.orgChild1Id == data1Id) .filter((x: OrgChild2) => x.orgChild1Id == data1Id)
.forEach(async (x: any) => { .forEach(async (x: any) => {
var data2Id = x.id; var data2Id = x.id;
const orgChild2Current = await child2Repository.find({
where: { orgRevisionId: orgRevisionDraft.id },
});
const matchedOrgChild2 = orgChild2Current.find((i: OrgChild2) => {
if (
x.ancestorDNA === x.id || // ถ้า ancestorDNA ถูกตั้งเป็น id ตัวเอง
x.ancestorDNA === null ||
x.ancestorDNA === "00000000-0000-0000-0000-000000000000"
) {
return i.ancestorDNA === null || i.ancestorDNA === "00000000-0000-0000-0000-000000000000";
}
return i.ancestorDNA === x.ancestorDNA;
});
// console.log("[in case Child2] ancestorDNA", `${x.orgChild2Id == matchedOrgChild2?.id}`);
// if ( // if (
// requestBody.typeDraft.toUpperCase() == "ORG_POSITION" || // requestBody.typeDraft.toUpperCase() == "ORG_POSITION" ||
// requestBody.typeDraft.toUpperCase() == "ORG_POSITION_PERSON" || // requestBody.typeDraft.toUpperCase() == "ORG_POSITION_PERSON" ||
@ -820,6 +869,7 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
) )
.map(async (item: any) => { .map(async (item: any) => {
delete item.id; delete item.id;
// console.log("[in case Child2] orgChild2Id == data2Id");
const employeePosMaster = Object.assign(new EmployeePosMaster(), item); const employeePosMaster = Object.assign(new EmployeePosMaster(), item);
employeePosMaster.positions = []; employeePosMaster.positions = [];
// if ( // if (
@ -841,9 +891,9 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
// } // }
// employeePosMaster.current_holderId = null; // employeePosMaster.current_holderId = null;
employeePosMaster.orgRevisionId = orgRevisionDraft.id; employeePosMaster.orgRevisionId = orgRevisionDraft.id;
employeePosMaster.orgRootId = dataId; employeePosMaster.orgRootId = matchedOrgRoot?.id ?? null;
employeePosMaster.orgChild1Id = data1Id; employeePosMaster.orgChild1Id = matchedOrgChild1?.id ?? null;
employeePosMaster.orgChild2Id = data2Id; employeePosMaster.orgChild2Id = matchedOrgChild2?.id ?? null;
employeePosMaster.createdUserId = ""; employeePosMaster.createdUserId = "";
employeePosMaster.createdFullName = "System Administrator"; employeePosMaster.createdFullName = "System Administrator";
employeePosMaster.createdAt = new Date(); employeePosMaster.createdAt = new Date();
@ -951,6 +1001,21 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
.filter((x: OrgChild3) => x.orgChild2Id == data2Id) .filter((x: OrgChild3) => x.orgChild2Id == data2Id)
.forEach(async (x: any) => { .forEach(async (x: any) => {
var data3Id = x.id; var data3Id = x.id;
const orgChild3Current = await child3Repository.find({
where: { orgRevisionId: orgRevisionDraft.id },
});
const matchedOrgChild3 = orgChild3Current.find((i: OrgChild3) => {
if (
x.ancestorDNA === x.id || // ถ้า ancestorDNA ถูกตั้งเป็น id ตัวเอง
x.ancestorDNA === null ||
x.ancestorDNA === "00000000-0000-0000-0000-000000000000"
) {
return i.ancestorDNA === null || i.ancestorDNA === "00000000-0000-0000-0000-000000000000";
}
return i.ancestorDNA === x.ancestorDNA;
});
// console.log("[in case Child3] ancestorDNA", `${x.orgChild3Id == matchedOrgChild3?.id}`);
// if ( // if (
// requestBody.typeDraft.toUpperCase() == "ORG_POSITION" || // requestBody.typeDraft.toUpperCase() == "ORG_POSITION" ||
// requestBody.typeDraft.toUpperCase() == "ORG_POSITION_PERSON" || // requestBody.typeDraft.toUpperCase() == "ORG_POSITION_PERSON" ||
@ -966,6 +1031,7 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
) )
.map(async (item: any) => { .map(async (item: any) => {
delete item.id; delete item.id;
// console.log("[in case Child3] orgChild3Id == data3Id");
const employeePosMaster = Object.assign(new EmployeePosMaster(), item); const employeePosMaster = Object.assign(new EmployeePosMaster(), item);
employeePosMaster.positions = []; employeePosMaster.positions = [];
// if ( // if (
@ -987,10 +1053,10 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
// } // }
// employeePosMaster.current_holderId = null; // employeePosMaster.current_holderId = null;
employeePosMaster.orgRevisionId = orgRevisionDraft.id; employeePosMaster.orgRevisionId = orgRevisionDraft.id;
employeePosMaster.orgRootId = dataId; employeePosMaster.orgRootId = matchedOrgRoot?.id ?? null;
employeePosMaster.orgChild1Id = data1Id; employeePosMaster.orgChild1Id = matchedOrgChild1?.id ?? null;
employeePosMaster.orgChild2Id = data2Id; employeePosMaster.orgChild2Id = matchedOrgChild2?.id ?? null;
employeePosMaster.orgChild3Id = data3Id; employeePosMaster.orgChild3Id = matchedOrgChild3?.id ?? null;
employeePosMaster.createdUserId = ""; employeePosMaster.createdUserId = "";
employeePosMaster.createdFullName = "System Administrator"; employeePosMaster.createdFullName = "System Administrator";
employeePosMaster.createdAt = new Date(); employeePosMaster.createdAt = new Date();
@ -1056,10 +1122,10 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
// } // }
// employeeTempPosMaster.current_holderId = null; // employeeTempPosMaster.current_holderId = null;
employeeTempPosMaster.orgRevisionId = orgRevisionDraft.id; employeeTempPosMaster.orgRevisionId = orgRevisionDraft.id;
employeeTempPosMaster.orgRootId = dataId; employeeTempPosMaster.orgRootId = matchedOrgRoot?.id ?? null;
employeeTempPosMaster.orgChild1Id = data1Id; employeeTempPosMaster.orgChild1Id = matchedOrgChild1?.id ?? null;
employeeTempPosMaster.orgChild2Id = data2Id; employeeTempPosMaster.orgChild2Id = matchedOrgChild2?.id ?? null;
employeeTempPosMaster.orgChild3Id = data3Id; employeeTempPosMaster.orgChild3Id = matchedOrgChild3?.id ?? null;
employeeTempPosMaster.createdUserId = ""; employeeTempPosMaster.createdUserId = "";
employeeTempPosMaster.createdFullName = "System Administrator"; employeeTempPosMaster.createdFullName = "System Administrator";
employeeTempPosMaster.createdAt = new Date(); employeeTempPosMaster.createdAt = new Date();
@ -1099,6 +1165,21 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
.filter((x: OrgChild4) => x.orgChild3Id == data3Id) .filter((x: OrgChild4) => x.orgChild3Id == data3Id)
.forEach(async (x: any) => { .forEach(async (x: any) => {
var data4Id = x.id; var data4Id = x.id;
const orgChild4Current = await child4Repository.find({
where: { orgRevisionId: orgRevisionDraft.id },
});
const matchedOrgChild4 = orgChild4Current.find((i: OrgChild4) => {
if (
x.ancestorDNA === x.id || // ถ้า ancestorDNA ถูกตั้งเป็น id ตัวเอง
x.ancestorDNA === null ||
x.ancestorDNA === "00000000-0000-0000-0000-000000000000"
) {
return i.ancestorDNA === null || i.ancestorDNA === "00000000-0000-0000-0000-000000000000";
}
return i.ancestorDNA === x.ancestorDNA;
});
// console.log("[in case Child4] ancestorDNA", `${x.orgChild4Id == matchedOrgChild4?.id}`);
// if ( // if (
// requestBody.typeDraft.toUpperCase() == "ORG_POSITION" || // requestBody.typeDraft.toUpperCase() == "ORG_POSITION" ||
// requestBody.typeDraft.toUpperCase() == "ORG_POSITION_PERSON" || // requestBody.typeDraft.toUpperCase() == "ORG_POSITION_PERSON" ||
@ -1111,6 +1192,7 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
.filter((x: EmployeePosMaster) => x.orgChild4Id == data4Id) .filter((x: EmployeePosMaster) => x.orgChild4Id == data4Id)
.map(async (item: any) => { .map(async (item: any) => {
delete item.id; delete item.id;
// console.log("[in case Child4] orgChild4Id == data4Id");
const employeePosMaster = Object.assign( const employeePosMaster = Object.assign(
new EmployeePosMaster(), new EmployeePosMaster(),
item, item,
@ -1135,11 +1217,11 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
// } // }
// employeePosMaster.current_holderId = null; // employeePosMaster.current_holderId = null;
employeePosMaster.orgRevisionId = orgRevisionDraft.id; employeePosMaster.orgRevisionId = orgRevisionDraft.id;
employeePosMaster.orgRootId = dataId; employeePosMaster.orgRootId = matchedOrgRoot?.id ?? null;
employeePosMaster.orgChild1Id = data1Id; employeePosMaster.orgChild1Id = matchedOrgChild1?.id ?? null;
employeePosMaster.orgChild2Id = data2Id; employeePosMaster.orgChild2Id = matchedOrgChild2?.id ?? null;
employeePosMaster.orgChild3Id = data3Id; employeePosMaster.orgChild3Id = matchedOrgChild3?.id ?? null;
employeePosMaster.orgChild4Id = data4Id; employeePosMaster.orgChild4Id = matchedOrgChild4?.id ?? null;
employeePosMaster.createdUserId = ""; employeePosMaster.createdUserId = "";
employeePosMaster.createdFullName = "System Administrator"; employeePosMaster.createdFullName = "System Administrator";
employeePosMaster.createdAt = new Date(); employeePosMaster.createdAt = new Date();
@ -1202,11 +1284,11 @@ async function handler_org(msg: amqp.ConsumeMessage): Promise<boolean> {
// } // }
// employeeTempPosMaster.current_holderId = null; // employeeTempPosMaster.current_holderId = null;
employeeTempPosMaster.orgRevisionId = orgRevisionDraft.id; employeeTempPosMaster.orgRevisionId = orgRevisionDraft.id;
employeeTempPosMaster.orgRootId = dataId; employeeTempPosMaster.orgRootId = matchedOrgRoot?.id ?? null;
employeeTempPosMaster.orgChild1Id = data1Id; employeeTempPosMaster.orgChild1Id = matchedOrgChild1?.id ?? null;
employeeTempPosMaster.orgChild2Id = data2Id; employeeTempPosMaster.orgChild2Id = matchedOrgChild2?.id ?? null;
employeeTempPosMaster.orgChild3Id = data3Id; employeeTempPosMaster.orgChild3Id = matchedOrgChild3?.id ?? null;
employeeTempPosMaster.orgChild4Id = data4Id; employeeTempPosMaster.orgChild4Id = matchedOrgChild4?.id ?? null;
employeeTempPosMaster.createdUserId = ""; employeeTempPosMaster.createdUserId = "";
employeeTempPosMaster.createdFullName = "System Administrator"; employeeTempPosMaster.createdFullName = "System Administrator";
employeeTempPosMaster.createdAt = new Date(); employeeTempPosMaster.createdAt = new Date();
@ -1436,8 +1518,8 @@ async function handler_org_draft(msg: amqp.ConsumeMessage): Promise<boolean> {
// Create org // Create org
for await (const x0 of _orgRoot) { for await (const x0 of _orgRoot) {
var dataId = x0.id; var dataId = x0.id;
console.log(`ch0 ${x0.orgRootOrder}`); // console.log(`ch0 ${x0.orgRootOrder}`);
console.log(dataId); // console.log(dataId);
delete x0.id; delete x0.id;
const data = Object.assign(new OrgRoot(), x0); const data = Object.assign(new OrgRoot(), x0);
data.orgRevisionId = revision.id; data.orgRevisionId = revision.id;
@ -1534,8 +1616,8 @@ async function handler_org_draft(msg: amqp.ConsumeMessage): Promise<boolean> {
// Create orgChild1 // Create orgChild1
for await (const x1 of _orgChild1.filter((x: OrgChild1) => x.orgRootId == dataId)) { for await (const x1 of _orgChild1.filter((x: OrgChild1) => x.orgRootId == dataId)) {
var data1Id = x1.id; var data1Id = x1.id;
console.log(`ch1 ${x1.orgChild1Order}`); // console.log(`ch1 ${x1.orgChild1Order}`);
console.log(data1Id); // console.log(data1Id);
delete x1.id; delete x1.id;
const data1 = Object.assign(new OrgChild1(), x1); const data1 = Object.assign(new OrgChild1(), x1);
data1.orgRootId = data.id; data1.orgRootId = data.id;
@ -1627,8 +1709,8 @@ async function handler_org_draft(msg: amqp.ConsumeMessage): Promise<boolean> {
} }
for await (const x2 of _orgChild2.filter((x: OrgChild2) => x.orgChild1Id == data1Id)) { for await (const x2 of _orgChild2.filter((x: OrgChild2) => x.orgChild1Id == data1Id)) {
var data2Id = x2.id; var data2Id = x2.id;
console.log(`ch2 ${x2.orgChild2Order}`); // console.log(`ch2 ${x2.orgChild2Order}`);
console.log(data2Id); // console.log(data2Id);
delete x2.id; delete x2.id;
const data2 = Object.assign(new OrgChild2(), x2); const data2 = Object.assign(new OrgChild2(), x2);
data2.orgChild1Id = data1.id; data2.orgChild1Id = data1.id;
@ -1722,8 +1804,8 @@ async function handler_org_draft(msg: amqp.ConsumeMessage): Promise<boolean> {
// Create org // Create org
for await (const x3 of _orgChild3.filter((x: OrgChild3) => x.orgChild2Id == data2Id)) { for await (const x3 of _orgChild3.filter((x: OrgChild3) => x.orgChild2Id == data2Id)) {
var data3Id = x3.id; var data3Id = x3.id;
console.log(`ch3 ${x3.orgChild3Order}`); // console.log(`ch3 ${x3.orgChild3Order}`);
console.log(data3Id); // console.log(data3Id);
delete x3.id; delete x3.id;
const data3 = Object.assign(new OrgChild3(), x3); const data3 = Object.assign(new OrgChild3(), x3);
data3.orgChild2Id = data2.id; data3.orgChild2Id = data2.id;
@ -1820,8 +1902,8 @@ async function handler_org_draft(msg: amqp.ConsumeMessage): Promise<boolean> {
(x: OrgChild4) => x.orgChild3Id == data3Id, (x: OrgChild4) => x.orgChild3Id == data3Id,
)) { )) {
var data4Id = x4.id; var data4Id = x4.id;
console.log(`ch4 ${x4.orgChild4Order}`); // console.log(`ch4 ${x4.orgChild4Order}`);
console.log(data4Id); // console.log(data4Id);
delete x4.id; delete x4.id;
const data4 = Object.assign(new OrgChild4(), x4); const data4 = Object.assign(new OrgChild4(), x4);
data4.orgChild3Id = data3.id; data4.orgChild3Id = data3.id;
@ -1921,8 +2003,9 @@ async function handler_org_draft(msg: amqp.ConsumeMessage): Promise<boolean> {
} }
} }
} }
//ลบ daft เก่าที่ค้างแล้วยังไม่ได้เผยแพร่
const _orgRevisions = await orgRevisionRepository.find({ const _orgRevisions = await orgRevisionRepository.find({
where: [{ orgRevisionIsDraft: true, id: Not(revision.id) }], where: [{ orgRevisionIsDraft: true, id: Not(revision.id) }],
}); });
const _roots = await orgRootRepository.find({ const _roots = await orgRootRepository.find({
where: [{ orgRevisionId: In(_orgRevisions.map((x) => x.id)) }], where: [{ orgRevisionId: In(_orgRevisions.map((x) => x.id)) }],