feat: update labels and add department selection in InvoiceOut filter and list

This commit is contained in:
Javi Gallego 2025-03-12 13:30:07 +01:00
parent f089b3bf4c
commit 22952befa9
5 changed files with 55 additions and 12 deletions

View File

@ -7,6 +7,7 @@ import VnFilterPanel from 'src/components/ui/VnFilterPanel.vue';
import VnInput from 'src/components/common/VnInput.vue'; import VnInput from 'src/components/common/VnInput.vue';
import VnInputDate from 'components/common/VnInputDate.vue'; import VnInputDate from 'components/common/VnInputDate.vue';
import VnInputNumber from 'src/components/common/VnInputNumber.vue'; import VnInputNumber from 'src/components/common/VnInputNumber.vue';
import VnSelect from 'src/components/common/VnSelect.vue';
const { t } = useI18n(); const { t } = useI18n();
const props = defineProps({ const props = defineProps({
@ -30,7 +31,7 @@ const states = ref();
<QItem> <QItem>
<QItemSection> <QItemSection>
<VnInput <VnInput
:label="t('Customer ID')" :label="t('globals.params.clientFk')"
v-model="params.clientFk" v-model="params.clientFk"
is-outlined is-outlined
/> />
@ -38,13 +39,17 @@ const states = ref();
</QItem> </QItem>
<QItem> <QItem>
<QItemSection> <QItemSection>
<VnInput v-model="params.fi" :label="t('FI')" is-outlined /> <VnInput
v-model="params.fi"
:label="t('globals.params.fi')"
is-outlined
/>
</QItemSection> </QItemSection>
</QItem> </QItem>
<QItem> <QItem>
<QItemSection> <QItemSection>
<VnInputNumber <VnInputNumber
:label="t('Amount')" :label="t('globals.amount')"
v-model="params.amount" v-model="params.amount"
is-outlined is-outlined
data-cy="InvoiceOutFilterAmountBtn" data-cy="InvoiceOutFilterAmountBtn"
@ -54,7 +59,7 @@ const states = ref();
<QItem> <QItem>
<QItemSection> <QItemSection>
<QInput <QInput
:label="t('Min')" :label="t('invoiceOut.params.min')"
dense dense
lazy-rules lazy-rules
outlined outlined
@ -65,7 +70,7 @@ const states = ref();
</QItemSection> </QItemSection>
<QItemSection> <QItemSection>
<QInput <QInput
:label="t('Max')" :label="t('invoiceOut.params.max')"
dense dense
lazy-rules lazy-rules
outlined outlined
@ -78,7 +83,7 @@ const states = ref();
<QItem> <QItem>
<QItemSection> <QItemSection>
<QCheckbox <QCheckbox
:label="t('Has PDF')" :label="t('invoiceOut.params.hasPdf')"
toggle-indeterminate toggle-indeterminate
v-model="params.hasPdf" v-model="params.hasPdf"
/> />
@ -88,14 +93,31 @@ const states = ref();
<QItemSection> <QItemSection>
<VnInputDate <VnInputDate
v-model="params.created" v-model="params.created"
:label="t('Created')" :label="t('invoiceOut.params.created')"
is-outlined is-outlined
/> />
</QItemSection> </QItemSection>
</QItem> </QItem>
<QItem> <QItem>
<QItemSection> <QItemSection>
<VnInputDate v-model="params.dued" :label="t('Dued')" is-outlined /> <VnInputDate
v-model="params.dued"
:label="t('invoiceOut.params.dued')"
is-outlined
/>
</QItemSection>
</QItem>
<QItem>
<QItemSection>
<VnSelect
outlined
rounded
:label="t('globals.params.departmentFk')"
v-model="params.departmentFk"
option-value="id"
option-label="name"
url="Departments"
/>
</QItemSection> </QItemSection>
</QItem> </QItem>
</template> </template>

View File

@ -16,6 +16,7 @@ import VnRow from 'src/components/ui/VnRow.vue';
import VnRadio from 'src/components/common/VnRadio.vue'; import VnRadio from 'src/components/common/VnRadio.vue';
import VnInput from 'src/components/common/VnInput.vue'; import VnInput from 'src/components/common/VnInput.vue';
import CustomerDescriptorProxy from '../Customer/Card/CustomerDescriptorProxy.vue'; import CustomerDescriptorProxy from '../Customer/Card/CustomerDescriptorProxy.vue';
import DepartmentDescriptorProxy from 'src/pages/Worker/Department/Card/DepartmentDescriptorProxy.vue';
import VnSection from 'src/components/common/VnSection.vue'; import VnSection from 'src/components/common/VnSection.vue';
const { t } = useI18n(); const { t } = useI18n();
@ -86,6 +87,20 @@ const columns = computed(() => [
component: null, component: null,
}, },
}, },
{
align: 'left',
name: 'departmentFk',
label: t('globals.params.departmentFk'),
component: 'select',
attrs: {
url: 'Departments',
},
create: true,
columnField: {
component: null,
},
format: (row, dashIfEmpty) => dashIfEmpty(row.departmentName),
},
{ {
align: 'left', align: 'left',
name: 'companyFk', name: 'companyFk',
@ -229,6 +244,12 @@ watchEffect(selectedRows);
<CustomerDescriptorProxy :id="row.clientFk" /> <CustomerDescriptorProxy :id="row.clientFk" />
</span> </span>
</template> </template>
<template #column-departmentFk="{ row }">
<span class="link" @click.stop>
{{ row.departmentName || '-' }}
<DepartmentDescriptorProxy :id="row?.departmentFk" />
</span>
</template>
<template #more-create-dialog="{ data }"> <template #more-create-dialog="{ data }">
<div class="row q-col-gutter-xs col-span-2"> <div class="row q-col-gutter-xs col-span-2">
<div class="col-12"> <div class="col-12">

View File

@ -221,7 +221,7 @@ en:
attenderFk: Atender attenderFk: Atender
clientFk: Client id clientFk: Client id
warehouseFk: Warehouse warehouseFk: Warehouse
requesterFk: Salesperson requesterFk: Requester
from: From from: From
to: To to: To
mine: For me mine: For me
@ -239,7 +239,7 @@ es:
attenderFk: Comprador attenderFk: Comprador
clientFk: Id cliente clientFk: Id cliente
warehouseFk: Almacén warehouseFk: Almacén
requesterFk: Comercial requesterFk: Solicitante
from: Desde from: Desde
to: Hasta to: Hasta
mine: Para mi mine: Para mi

View File

@ -84,7 +84,7 @@ item:
attenderFk: Atender attenderFk: Atender
clientFk: Client id clientFk: Client id
warehouseFk: Warehouse warehouseFk: Warehouse
requesterFk: Salesperson requesterFk: Requester
from: From from: From
to: To to: To
mine: For me mine: For me

View File

@ -93,7 +93,7 @@ item:
attenderFk: Comprador attenderFk: Comprador
clientFk: Id cliente clientFk: Id cliente
warehouseFk: Almacén warehouseFk: Almacén
requesterFk: Comercial requesterFk: Solicitante
from: Desde from: Desde
to: Hasta to: Hasta
mine: Para mi mine: Para mi