refactor(sales): rewrite legacy-era regions of the credit-note, item and balance services and the provider in place

This commit is contained in:
Darko Gjorgjijoski
2026-08-21 01:38:55 +02:00
parent 56d12c204d
commit ba09d78f9c
4 changed files with 60 additions and 32 deletions
@@ -30,8 +30,12 @@ class InvoiceBalanceService
$invoice->base_due_amount = (int) round($due * $invoice->exchange_rate);
if ($due === 0) {
$invoice->status = Invoice::STATUS_COMPLETED;
$invoice->paid_status = Invoice::STATUS_PAID;
// Nothing left outstanding, so the document closes out on both
// axes at once.
$invoice->forceFill([
'status' => Invoice::STATUS_COMPLETED,
'paid_status' => Invoice::STATUS_PAID,
]);
$invoice->overdue = false;
} else {
$invoice->status = $invoice->getPreviousStatus();