- Shipped
- 11 noiembrie 2026 la 10:41 UTC
- Author
- Kamo
- Commit
- b05a5db
RecordInvoiceController este ușa filei Factură pentru orice înregistrare - listă, Creați factură, citiți, PDF, Înregistrați plata, Anulează factura, livrarea, trimiterea, legătura - cu doar drepturile, ID-ul, apelul de creare și verificarea dreptului de proprietate rămase ServiceJobInvoiceController (aceleași rute, aceleași drepturi) devine unul; OrderInvoiceController sub **************** este celălalt (Vizualizare / Creare și editare comenzi). Void Invoice (POST .../{invoice}/void, dreptul de gestionare al înregistrării, un motiv necesar): InvoicingService refuză o factură Factura cu plăți; la succes fiecare legătură cu clientul este ștampilată aici, așa cum a făcut deja voidul releului. E-mail de primire: odată ce o factură este plătită, trimiteți () e-mailuri commerce.invoice_receipt (suma plătită, data plătită, niciodată 'suma 'datorită') în loc de a refuza, cu PDF-ul și un link proaspăt; rândul de link înregistrează email_kind INVOICE sau RECEPT și Trimis Nota membrului este acum scăpată HTML în ambele e-mailuri (renderul nu scapă nimic). Înregistrarea plății pe factura unei comenzi este refuzată (409, "use Take Payment") și OrderInvoiceSettlement cere InvoicingService să deconteze factura după Take Payment și să o anuleze după Cancel (în **************** best-effort) și când se deschide fila Factură a comenzii pentru o comandă plătită sau anulată.
