fix: transaction close before action
This commit is contained in:
parent
aa622afc9f
commit
2caf197542
1 changed files with 29 additions and 27 deletions
|
|
@ -178,37 +178,39 @@ export async function initEmploymentOffice() {
|
||||||
await tx.employmentOffice.deleteMany({
|
await tx.employmentOffice.deleteMany({
|
||||||
where: { provinceId: province.id, district: { none: {} } },
|
where: { provinceId: province.id, district: { none: {} } },
|
||||||
});
|
});
|
||||||
return Object.entries(special[province.id]).map(([key, val]) => {
|
return await Promise.all(
|
||||||
const id = province.id + "-" + key.padStart(2, "0");
|
Object.entries(special[province.id]).map(async ([key, val]) => {
|
||||||
return tx.employmentOffice.upsert({
|
const id = province.id + "-" + key.padStart(2, "0");
|
||||||
where: { id },
|
return tx.employmentOffice.upsert({
|
||||||
create: {
|
where: { id },
|
||||||
id,
|
create: {
|
||||||
name: nameSpecial(province.name, +key),
|
id,
|
||||||
nameEN: nameSpecialEN(province.nameEN, +key),
|
name: nameSpecial(province.name, +key),
|
||||||
provinceId: province.id,
|
nameEN: nameSpecialEN(province.nameEN, +key),
|
||||||
district: {
|
provinceId: province.id,
|
||||||
createMany: {
|
district: {
|
||||||
data: val.map((districtId) => ({ districtId })),
|
createMany: {
|
||||||
skipDuplicates: true,
|
data: val.map((districtId) => ({ districtId })),
|
||||||
|
skipDuplicates: true,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
update: {
|
||||||
update: {
|
id,
|
||||||
id,
|
name: nameSpecial(province.name, +key),
|
||||||
name: nameSpecial(province.name, +key),
|
nameEN: nameSpecialEN(province.nameEN, +key),
|
||||||
nameEN: nameSpecialEN(province.nameEN, +key),
|
provinceId: province.id,
|
||||||
provinceId: province.id,
|
district: {
|
||||||
district: {
|
deleteMany: { districtId: { notIn: val } },
|
||||||
deleteMany: { districtId: { notIn: val } },
|
createMany: {
|
||||||
createMany: {
|
data: val.map((districtId) => ({ districtId })),
|
||||||
data: val.map((districtId) => ({ districtId })),
|
skipDuplicates: true,
|
||||||
skipDuplicates: true,
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
});
|
||||||
});
|
}),
|
||||||
});
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
return tx.employmentOffice.upsert({
|
return tx.employmentOffice.upsert({
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue