diff --git a/app/Jobs/RecurringInvoice/SendRecurring.php b/app/Jobs/RecurringInvoice/SendRecurring.php index cd150fdb9662..0aab4e659cbd 100644 --- a/app/Jobs/RecurringInvoice/SendRecurring.php +++ b/app/Jobs/RecurringInvoice/SendRecurring.php @@ -110,6 +110,16 @@ class SendRecurring implements ShouldQueue $this->recurring_invoice->save(); + /* + + if ($this->recurring_invoice->company->pause_recurring_until_paid){ + $this->recurring_invoice->service() + ->stop(); + } + + */ + + //Admin notification for recurring invoice sent. if ($invoice->invitations->count() >= 1 ) { $invoice->entityEmailEvent($invoice->invitations->first(), 'invoice', 'email_template_invoice'); diff --git a/app/Services/Invoice/InvoiceService.php b/app/Services/Invoice/InvoiceService.php index d13743586651..162923cee0c9 100644 --- a/app/Services/Invoice/InvoiceService.php +++ b/app/Services/Invoice/InvoiceService.php @@ -483,6 +483,30 @@ class InvoiceService } + /* + //if paid invoice is attached to a recurring invoice - check if we need to unpause the recurring invoice + + if ($this->invoice->status_id == Invoice::STATUS_PAID && + $this->invoice->recurring_id && + $this->invoice->company->pause_recurring_until_paid && + ($this->invoice->recurring_invoice->status_id != RecurringInvoice::STATUS_ACTIVE || $this->invoice->recurring_invoice->status_id != RecurringInvoice::STATUS_COMPLETED)) + { + $recurring_invoice = $this->invoice->recurring_invoice; + + // Check next_send_date if it is in the past - calculate + $next_send_date = Carbon::parse($recurring_invoice->next_send_date)->startOfDay(); + + if(next_send_date->lt(now())){ + $recurring_invoice->next_send_date = $recurring_invoice->nextDateByFrequency(now()->format('Y-m-d')); + $recurring_invoice->save(); + } + + // Start the recurring invoice + $recurring_invoice->service() + ->start(); + + } + */ return $this; }