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()
|
$recurring_invoice->service()
|
||||||
->triggeredActions($request)
|
->triggeredActions($request)
|
||||||
// ->deletePdf()
|
|
||||||
->save();
|
->save();
|
||||||
|
|
||||||
event(new RecurringInvoiceWasUpdated($recurring_invoice, $recurring_invoice->company, Ninja::eventVars(auth()->user() ? auth()->user()->id : null)));
|
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
|
public function nextSendDate() :?Carbon
|
||||||
{
|
{
|
||||||
if (! $this->next_send_date_client) {
|
if (! $this->next_send_date_client) {
|
||||||
|
@ -365,6 +365,7 @@ class BaseRepository
|
|||||||
|
|
||||||
$model = $model->calc()->getRecurringInvoice();
|
$model = $model->calc()->getRecurringInvoice();
|
||||||
|
|
||||||
|
$model->status_id = $model->calculateStatus();
|
||||||
|
|
||||||
if ($this->new_model) {
|
if ($this->new_model) {
|
||||||
event('eloquent.created: App\Models\RecurringInvoice', $model);
|
event('eloquent.created: App\Models\RecurringInvoice', $model);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user