mirror of
https://github.com/invoiceninja/invoiceninja.git
synced 2025-07-09 03:14:30 -04:00
Updates for status calculations for recurring invoices.
This commit is contained in:
parent
b66c1ae0b6
commit
4cc65fcb40
@ -387,7 +387,6 @@ class RecurringInvoiceController extends BaseController
|
||||
|
||||
$recurring_invoice->service()
|
||||
->triggeredActions($request)
|
||||
// ->deletePdf()
|
||||
->save();
|
||||
|
||||
event(new RecurringInvoiceWasUpdated($recurring_invoice, $recurring_invoice->company, Ninja::eventVars(auth()->user() ? auth()->user()->id : null)));
|
||||
|
@ -343,6 +343,21 @@ class RecurringInvoice extends BaseModel
|
||||
}
|
||||
}
|
||||
|
||||
public function calculateStatus()
|
||||
{
|
||||
|
||||
if($this->remaining_cycles == 0) {
|
||||
return self::STATUS_COMPLETED;
|
||||
}
|
||||
elseif ($this->status_id == self::STATUS_ACTIVE && Carbon::parse($this->next_send_date)->isFuture()) {
|
||||
return self::STATUS_PENDING;
|
||||
}
|
||||
else {
|
||||
return $this->status_id;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function nextSendDate() :?Carbon
|
||||
{
|
||||
if (! $this->next_send_date_client) {
|
||||
|
@ -365,6 +365,7 @@ class BaseRepository
|
||||
|
||||
$model = $model->calc()->getRecurringInvoice();
|
||||
|
||||
$model->status_id = $model->calculateStatus();
|
||||
|
||||
if ($this->new_model) {
|
||||
event('eloquent.created: App\Models\RecurringInvoice', $model);
|
||||
|
Loading…
x
Reference in New Issue
Block a user