fix: rétablir la suppression de facture en recette
This commit is contained in:
26
server/db.ts
26
server/db.ts
@@ -291,12 +291,26 @@ export async function deleteInvoice(id: number) {
|
||||
// Enregistrer dans la blacklist avant suppression
|
||||
const invoice = await db.select().from(invoices).where(eq(invoices.id, id)).limit(1);
|
||||
if (invoice[0] && invoice[0].invoiceNumber) {
|
||||
await db.insert(deletedInvoices).values({
|
||||
userId: invoice[0].userId,
|
||||
invoiceNumber: invoice[0].invoiceNumber,
|
||||
totalAmount: invoice[0].totalAmount ?? undefined,
|
||||
supplierName: invoice[0].supplierName ?? undefined,
|
||||
}).onDuplicateKeyUpdate({ set: { deletedAt: new Date() } });
|
||||
const blacklistEntry = await db.select({ id: deletedInvoices.id })
|
||||
.from(deletedInvoices)
|
||||
.where(and(
|
||||
eq(deletedInvoices.userId, invoice[0].userId),
|
||||
eq(deletedInvoices.invoiceNumber, invoice[0].invoiceNumber),
|
||||
))
|
||||
.limit(1);
|
||||
|
||||
if (blacklistEntry[0]) {
|
||||
await db.update(deletedInvoices)
|
||||
.set({ deletedAt: new Date() })
|
||||
.where(eq(deletedInvoices.id, blacklistEntry[0].id));
|
||||
} else {
|
||||
await db.insert(deletedInvoices).values({
|
||||
userId: invoice[0].userId,
|
||||
invoiceNumber: invoice[0].invoiceNumber,
|
||||
totalAmount: invoice[0].totalAmount ?? undefined,
|
||||
supplierName: invoice[0].supplierName ?? undefined,
|
||||
});
|
||||
}
|
||||
}
|
||||
await db.delete(invoices).where(eq(invoices.id, id));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user