Fix partially paid status appearing after invoice update

This commit is contained in:
Darko Gjorgjijoski
2024-08-04 19:45:08 +02:00
parent c799149d2d
commit 468aec6bc1

View File

@@ -407,13 +407,13 @@ class Invoice extends Model implements HasMedia
$data['base_due_amount'] = $data['due_amount'] * $data['exchange_rate'];
$data['customer_sequence_number'] = $serial->nextCustomerSequenceNumber;
$this->update($data);
$statusData = $this->getInvoiceStatusByAmount($data['due_amount']);
if (! empty($statusData)) {
$data = array_merge($data, $statusData);
$this->update($statusData);
}
$this->update($data);
$company_currency = CompanySetting::getSetting('currency', $request->header('company'));
if ((string) $data['currency_id'] !== $company_currency) {
@@ -711,6 +711,10 @@ class Invoice extends Model implements HasMedia
return [];
}
\Log::error(print_r($amount, true));
\Log::error(print_r($this->due_amount, true));
\Log::error($this->total);
if ($amount == 0) {
$data = [
'status' => Invoice::STATUS_COMPLETED,