1.5.2
- feat: order confirmation PDF generation with VAT support - feat: order confirmation modal with custom item editing - fix: attendance negative duration clamping and switchProject timing - fix: Quill editor locked to Tahoma 14px, PDF heading sizes - fix: invoice/offer PDF font consistency (Tahoma enforcement) - fix: invoice alert cron improvements - fix: NAS financials manager edge cases - refactor: numbering service with unique sequence constraints Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -99,14 +99,6 @@ export async function checkInvoiceAlerts(): Promise<void> {
|
||||
due_date: localDateCzStr(new Date(inv.due_date)),
|
||||
days_label: daysLabel,
|
||||
});
|
||||
|
||||
await prisma.invoice_alert_log.create({
|
||||
data: {
|
||||
invoice_type: "created",
|
||||
invoice_id: inv.id,
|
||||
alert_type: alertType,
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
// --- Received invoices (we owe supplier) ---
|
||||
@@ -155,14 +147,6 @@ export async function checkInvoiceAlerts(): Promise<void> {
|
||||
due_date: localDateCzStr(new Date(inv.due_date)),
|
||||
days_label: daysLabel,
|
||||
});
|
||||
|
||||
await prisma.invoice_alert_log.create({
|
||||
data: {
|
||||
invoice_type: "received",
|
||||
invoice_id: inv.id,
|
||||
alert_type: alertType,
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
if (alerts.length === 0) return;
|
||||
@@ -221,9 +205,26 @@ export async function checkInvoiceAlerts(): Promise<void> {
|
||||
const sent = await sendMail(alertEmail, subject, html);
|
||||
if (!sent) {
|
||||
console.error(`InvoiceAlerts: Failed to send alert to ${alertEmail}`);
|
||||
} else {
|
||||
console.log(
|
||||
`InvoiceAlerts: Sent ${alerts.length} alert(s) to ${alertEmail}`,
|
||||
);
|
||||
return;
|
||||
}
|
||||
|
||||
console.log(`InvoiceAlerts: Sent ${alerts.length} alert(s) to ${alertEmail}`);
|
||||
|
||||
// Mark alerts as sent only after successful delivery
|
||||
for (const a of alerts) {
|
||||
await prisma.invoice_alert_log.create({
|
||||
data: {
|
||||
invoice_type: a.type,
|
||||
invoice_id: a.id,
|
||||
alert_type:
|
||||
a.type === "created"
|
||||
? a.days_label.includes("dnes")
|
||||
? "due"
|
||||
: "3days"
|
||||
: a.days_label.includes("dnes")
|
||||
? "due"
|
||||
: "3days",
|
||||
},
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user