fix recurring invoice starts at condition

This commit is contained in:
harshjagad20
2021-12-06 12:47:53 +05:30
parent ed6268aa7b
commit b543f6d389

View File

@ -259,32 +259,34 @@ class RecurringInvoice extends Model
public function generateInvoice() public function generateInvoice()
{ {
if ($this->limit_by == 'DATE') { if (Carbon::now()->format('Y-m-d H:i:s') < $this->starts_at) {
$startDate = Carbon::today()->format('Y-m-d'); if ($this->limit_by == 'DATE') {
$startDate = Carbon::today()->format('Y-m-d');
$endDate = $this->limit_date; $endDate = $this->limit_date;
if ($endDate >= $startDate) { if ($endDate >= $startDate) {
$this->createInvoice();
$this->updateNextInvoiceDate();
} else {
$this->markStatusAsCompleted();
}
} elseif ($this->limit_by == 'COUNT') {
$invoiceCount = Invoice::where('recurring_invoice_id', $this->id)->count();
if ($invoiceCount < $this->limit_count) {
$this->createInvoice();
$this->updateNextInvoiceDate();
} else {
$this->markStatusAsCompleted();
}
} else {
$this->createInvoice(); $this->createInvoice();
$this->updateNextInvoiceDate(); $this->updateNextInvoiceDate();
} else {
$this->markStatusAsCompleted();
} }
} elseif ($this->limit_by == 'COUNT') {
$invoiceCount = Invoice::where('recurring_invoice_id', $this->id)->count();
if ($invoiceCount < $this->limit_count) {
$this->createInvoice();
$this->updateNextInvoiceDate();
} else {
$this->markStatusAsCompleted();
}
} else {
$this->createInvoice();
$this->updateNextInvoiceDate();
} }
} }