Merge branch 'invoice-refactor' into 'master'

Refactor DUE status

See merge request mohit.panjvani/crater-web!251
This commit is contained in:
Mohit Panjwani
2020-08-01 08:24:35 +00:00
2 changed files with 16 additions and 5 deletions

View File

@ -15,6 +15,7 @@ class Invoice extends Model
const STATUS_OVERDUE = 'OVERDUE'; const STATUS_OVERDUE = 'OVERDUE';
const STATUS_COMPLETED = 'COMPLETED'; const STATUS_COMPLETED = 'COMPLETED';
const STATUS_DUE = 'DUE';
const STATUS_UNPAID = 'UNPAID'; const STATUS_UNPAID = 'UNPAID';
const STATUS_PARTIALLY_PAID = 'PARTIALLY_PAID'; const STATUS_PARTIALLY_PAID = 'PARTIALLY_PAID';
const STATUS_PAID = 'PAID'; const STATUS_PAID = 'PAID';
@ -189,6 +190,14 @@ class Invoice extends Model
return $query->where('invoices.paid_status', $status); return $query->where('invoices.paid_status', $status);
} }
public function scopeWhereDueStatus($query, $status)
{
return $query->whereIn('invoices.paid_status', [
self::STATUS_UNPAID,
self::STATUS_PARTIALLY_PAID
]);
}
public function scopeWhereInvoiceNumber($query, $invoiceNumber) public function scopeWhereInvoiceNumber($query, $invoiceNumber)
{ {
return $query->where('invoices.invoice_number', 'LIKE', '%'.$invoiceNumber.'%'); return $query->where('invoices.invoice_number', 'LIKE', '%'.$invoiceNumber.'%');
@ -232,6 +241,8 @@ class Invoice extends Model
$filters->get('status') == self::STATUS_PAID $filters->get('status') == self::STATUS_PAID
) { ) {
$query->wherePaidStatus($filters->get('status')); $query->wherePaidStatus($filters->get('status'));
} elseif ($filters->get('status') == self::STATUS_DUE) {
$query->whereDueStatus($filters->get('status'));
} else { } else {
$query->whereStatus($filters->get('status')); $query->whereStatus($filters->get('status'));
} }

View File

@ -134,11 +134,11 @@
<!-- Tabs --> <!-- Tabs -->
<ul class="tabs"> <ul class="tabs">
<li class="tab" @click="getStatus('UNPAID')"> <li class="tab" @click="getStatus('DUE')">
<a <a
:class="[ :class="[
'tab-link', 'tab-link',
{ 'a-active': filters.status.value === 'UNPAID' }, { 'a-active': filters.status.value === 'DUE' },
]" ]"
href="#" href="#"
>{{ $t('general.due') }}</a >{{ $t('general.due') }}</a
@ -163,7 +163,7 @@
filters.status.value === '' || filters.status.value === '' ||
filters.status.value === null || filters.status.value === null ||
(filters.status.value !== 'DRAFT' && (filters.status.value !== 'DRAFT' &&
filters.status.value !== 'UNPAID'), filters.status.value !== 'DUE'),
}, },
]" ]"
href="#" href="#"
@ -399,7 +399,7 @@ export default {
isDisable: true, isDisable: true,
options: [ options: [
{ name: 'DRAFT', value: 'DRAFT' }, { name: 'DRAFT', value: 'DRAFT' },
{ name: 'DUE', value: 'UNPAID' }, { name: 'DUE', value: 'DUE' },
{ name: 'SENT', value: 'SENT' }, { name: 'SENT', value: 'SENT' },
{ name: 'VIEWED', value: 'VIEWED' }, { name: 'VIEWED', value: 'VIEWED' },
{ name: 'OVERDUE', value: 'OVERDUE' }, { name: 'OVERDUE', value: 'OVERDUE' },
@ -419,7 +419,7 @@ export default {
isRequestOngoing: true, isRequestOngoing: true,
filters: { filters: {
customer: '', customer: '',
status: { name: 'DUE', value: 'UNPAID' }, status: { name: 'DUE', value: 'DUE' },
from_date: '', from_date: '',
to_date: '', to_date: '',
invoice_number: '' invoice_number: ''