forked from verdnatura/salix-front
Merge branch 'dev' into 5919-locker
This commit is contained in:
commit
05698af75d
|
@ -58,15 +58,12 @@ onMounted(async () => {
|
||||||
>
|
>
|
||||||
<template #form-inputs="{ data, validate }">
|
<template #form-inputs="{ data, validate }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('name')"
|
:label="t('name')"
|
||||||
v-model="data.name"
|
v-model="data.name"
|
||||||
:required="true"
|
:required="true"
|
||||||
:rules="validate('bankEntity.name')"
|
:rules="validate('bankEntity.name')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
ref="bicInputRef"
|
ref="bicInputRef"
|
||||||
:label="t('swift')"
|
:label="t('swift')"
|
||||||
|
@ -74,7 +71,6 @@ onMounted(async () => {
|
||||||
:required="true"
|
:required="true"
|
||||||
:rules="validate('bankEntity.bic')"
|
:rules="validate('bankEntity.bic')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
<div class="col">
|
||||||
|
|
|
@ -52,9 +52,7 @@ onMounted(() => {
|
||||||
</span>
|
</span>
|
||||||
<h1 class="title">{{ t('New department') }}</h1>
|
<h1 class="title">{{ t('New department') }}</h1>
|
||||||
<VnRow class="row q-gutter-md q-mb-md" style="min-width: 250px">
|
<VnRow class="row q-gutter-md q-mb-md" style="min-width: 250px">
|
||||||
<div class="col">
|
|
||||||
<VnInput :label="t('Name')" v-model="data.name" />
|
<VnInput :label="t('Name')" v-model="data.name" />
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<div class="q-mt-lg row justify-end">
|
<div class="q-mt-lg row justify-end">
|
||||||
<QBtn
|
<QBtn
|
||||||
|
|
|
@ -72,7 +72,6 @@ const onDataSaved = async (formData, requestResponse) => {
|
||||||
{{ t('Invoicing in progress...') }}
|
{{ t('Invoicing in progress...') }}
|
||||||
</span>
|
</span>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Ticket')"
|
:label="t('Ticket')"
|
||||||
:options="ticketsOptions"
|
:options="ticketsOptions"
|
||||||
|
@ -86,18 +85,14 @@ const onDataSaved = async (formData, requestResponse) => {
|
||||||
<QItem v-bind="scope.itemProps">
|
<QItem v-bind="scope.itemProps">
|
||||||
<QItemSection>
|
<QItemSection>
|
||||||
<QItemLabel> #{{ scope.opt?.id }} </QItemLabel>
|
<QItemLabel> #{{ scope.opt?.id }} </QItemLabel>
|
||||||
<QItemLabel caption>{{
|
<QItemLabel caption>{{ scope.opt?.nickname }}</QItemLabel>
|
||||||
scope.opt?.nickname
|
|
||||||
}}</QItemLabel>
|
|
||||||
</QItemSection>
|
</QItemSection>
|
||||||
</QItem>
|
</QItem>
|
||||||
</template>
|
</template>
|
||||||
</VnSelect>
|
</VnSelect>
|
||||||
</div>
|
|
||||||
<span class="row items-center" style="max-width: max-content">{{
|
<span class="row items-center" style="max-width: max-content">{{
|
||||||
t('Or')
|
t('Or')
|
||||||
}}</span>
|
}}</span>
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Client')"
|
:label="t('Client')"
|
||||||
:options="clientsOptions"
|
:options="clientsOptions"
|
||||||
|
@ -107,13 +102,9 @@ const onDataSaved = async (formData, requestResponse) => {
|
||||||
v-model="data.clientFk"
|
v-model="data.clientFk"
|
||||||
@update:model-value="data.ticketFk = null"
|
@update:model-value="data.ticketFk = null"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInputDate :label="t('Max date')" v-model="data.maxShipped" />
|
<VnInputDate :label="t('Max date')" v-model="data.maxShipped" />
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Serial')"
|
:label="t('Serial')"
|
||||||
:options="invoiceOutSerialsOptions"
|
:options="invoiceOutSerialsOptions"
|
||||||
|
@ -123,8 +114,6 @@ const onDataSaved = async (formData, requestResponse) => {
|
||||||
v-model="data.serial"
|
v-model="data.serial"
|
||||||
:required="true"
|
:required="true"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Area')"
|
:label="t('Area')"
|
||||||
:options="taxAreasOptions"
|
:options="taxAreasOptions"
|
||||||
|
@ -134,7 +123,6 @@ const onDataSaved = async (formData, requestResponse) => {
|
||||||
v-model="data.taxArea"
|
v-model="data.taxArea"
|
||||||
:required="true"
|
:required="true"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<VnInput
|
<VnInput
|
||||||
|
|
|
@ -40,14 +40,11 @@ const onDataSaved = (dataSaved) => {
|
||||||
>
|
>
|
||||||
<template #form-inputs="{ data, validate }">
|
<template #form-inputs="{ data, validate }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('Name')"
|
:label="t('Name')"
|
||||||
v-model="data.name"
|
v-model="data.name"
|
||||||
:rules="validate('city.name')"
|
:rules="validate('city.name')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Province')"
|
:label="t('Province')"
|
||||||
:options="provincesOptions"
|
:options="provincesOptions"
|
||||||
|
@ -57,7 +54,6 @@ const onDataSaved = (dataSaved) => {
|
||||||
v-model="data.provinceFk"
|
v-model="data.provinceFk"
|
||||||
:rules="validate('city.provinceFk')"
|
:rules="validate('city.provinceFk')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModelPopup>
|
</FormModelPopup>
|
||||||
|
|
|
@ -30,18 +30,18 @@ const townsLocationOptions = ref([]);
|
||||||
|
|
||||||
const onDataSaved = (formData) => {
|
const onDataSaved = (formData) => {
|
||||||
const newPostcode = {
|
const newPostcode = {
|
||||||
...formData
|
...formData,
|
||||||
};
|
};
|
||||||
const townObject = townsLocationOptions.value.find(
|
const townObject = townsLocationOptions.value.find(
|
||||||
({id}) => id === formData.townFk
|
({ id }) => id === formData.townFk
|
||||||
);
|
);
|
||||||
newPostcode.town = townObject?.name;
|
newPostcode.town = townObject?.name;
|
||||||
const provinceObject = provincesOptions.value.find(
|
const provinceObject = provincesOptions.value.find(
|
||||||
({id}) => id === formData.provinceFk
|
({ id }) => id === formData.provinceFk
|
||||||
);
|
);
|
||||||
newPostcode.province = provinceObject?.name;
|
newPostcode.province = provinceObject?.name;
|
||||||
const countryObject = countriesOptions.value.find(
|
const countryObject = countriesOptions.value.find(
|
||||||
({id}) => id === formData.countryFk
|
({ id }) => id === formData.countryFk
|
||||||
);
|
);
|
||||||
newPostcode.country = countryObject?.country;
|
newPostcode.country = countryObject?.country;
|
||||||
emit('onDataSaved', newPostcode);
|
emit('onDataSaved', newPostcode);
|
||||||
|
@ -92,14 +92,11 @@ const onProvinceCreated = async ({ name }, formData) => {
|
||||||
>
|
>
|
||||||
<template #form-inputs="{ data, validate }">
|
<template #form-inputs="{ data, validate }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('Postcode')"
|
:label="t('Postcode')"
|
||||||
v-model="data.code"
|
v-model="data.code"
|
||||||
:rules="validate('postcode.code')"
|
:rules="validate('postcode.code')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelectDialog
|
<VnSelectDialog
|
||||||
:label="t('City')"
|
:label="t('City')"
|
||||||
:options="townsLocationOptions"
|
:options="townsLocationOptions"
|
||||||
|
@ -111,15 +108,11 @@ const onProvinceCreated = async ({ name }, formData) => {
|
||||||
:roles-allowed-to-create="['deliveryAssistant']"
|
:roles-allowed-to-create="['deliveryAssistant']"
|
||||||
>
|
>
|
||||||
<template #form>
|
<template #form>
|
||||||
<CreateNewCityForm
|
<CreateNewCityForm @on-data-saved="onCityCreated($event, data)" />
|
||||||
@on-data-saved="onCityCreated($event, data)"
|
|
||||||
/>
|
|
||||||
</template>
|
</template>
|
||||||
</VnSelectDialog>
|
</VnSelectDialog>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-xl">
|
<VnRow class="row q-gutter-md q-mb-xl">
|
||||||
<div class="col">
|
|
||||||
<VnSelectDialog
|
<VnSelectDialog
|
||||||
:label="t('Province')"
|
:label="t('Province')"
|
||||||
:options="provincesOptions"
|
:options="provincesOptions"
|
||||||
|
@ -136,8 +129,6 @@ const onProvinceCreated = async ({ name }, formData) => {
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
</VnSelectDialog>
|
</VnSelectDialog>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Country')"
|
:label="t('Country')"
|
||||||
:options="countriesOptions"
|
:options="countriesOptions"
|
||||||
|
@ -147,8 +138,8 @@ const onProvinceCreated = async ({ name }, formData) => {
|
||||||
v-model="data.countryFk"
|
v-model="data.countryFk"
|
||||||
:rules="validate('postcode.countryFk')"
|
:rules="validate('postcode.countryFk')"
|
||||||
/>
|
/>
|
||||||
</div> </VnRow
|
</VnRow>
|
||||||
></template>
|
</template>
|
||||||
</FormModelPopup>
|
</FormModelPopup>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|
|
@ -40,14 +40,11 @@ const onDataSaved = (dataSaved) => {
|
||||||
>
|
>
|
||||||
<template #form-inputs="{ data, validate }">
|
<template #form-inputs="{ data, validate }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('Name')"
|
:label="t('Name')"
|
||||||
v-model="data.name"
|
v-model="data.name"
|
||||||
:rules="validate('province.name')"
|
:rules="validate('province.name')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Autonomy')"
|
:label="t('Autonomy')"
|
||||||
:options="autonomiesOptions"
|
:options="autonomiesOptions"
|
||||||
|
@ -57,7 +54,6 @@ const onDataSaved = (dataSaved) => {
|
||||||
v-model="data.autonomyFk"
|
v-model="data.autonomyFk"
|
||||||
:rules="validate('province.autonomyFk')"
|
:rules="validate('province.autonomyFk')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModelPopup>
|
</FormModelPopup>
|
||||||
|
|
|
@ -54,16 +54,12 @@ const onDataSaved = (dataSaved) => {
|
||||||
>
|
>
|
||||||
<template #form-inputs="{ data, validate }">
|
<template #form-inputs="{ data, validate }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('Identifier')"
|
:label="t('Identifier')"
|
||||||
v-model="data.thermographId"
|
v-model="data.thermographId"
|
||||||
:required="true"
|
:required="true"
|
||||||
:rules="validate('thermograph.id')"
|
:rules="validate('thermograph.id')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Model')"
|
:label="t('Model')"
|
||||||
:options="thermographsModels"
|
:options="thermographsModels"
|
||||||
|
@ -74,10 +70,8 @@ const onDataSaved = (dataSaved) => {
|
||||||
:required="true"
|
:required="true"
|
||||||
:rules="validate('thermograph.model')"
|
:rules="validate('thermograph.model')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-xl">
|
<VnRow class="row q-gutter-md q-mb-xl">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Warehouse')"
|
:label="t('Warehouse')"
|
||||||
:options="warehousesOptions"
|
:options="warehousesOptions"
|
||||||
|
@ -87,8 +81,6 @@ const onDataSaved = (dataSaved) => {
|
||||||
v-model="data.warehouseId"
|
v-model="data.warehouseId"
|
||||||
:required="true"
|
:required="true"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Temperature')"
|
:label="t('Temperature')"
|
||||||
:options="temperaturesOptions"
|
:options="temperaturesOptions"
|
||||||
|
@ -98,7 +90,6 @@ const onDataSaved = (dataSaved) => {
|
||||||
v-model="data.temperatureFk"
|
v-model="data.temperatureFk"
|
||||||
:required="true"
|
:required="true"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModelPopup>
|
</FormModelPopup>
|
||||||
|
|
|
@ -246,16 +246,13 @@ const makeRequest = async () => {
|
||||||
|
|
||||||
<div class="column">
|
<div class="column">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QOptionGroup
|
<QOptionGroup
|
||||||
:options="uploadMethodsOptions"
|
:options="uploadMethodsOptions"
|
||||||
type="radio"
|
type="radio"
|
||||||
v-model="uploadMethodSelected"
|
v-model="uploadMethodSelected"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QFile
|
<QFile
|
||||||
v-if="uploadMethodSelected === 'computer'"
|
v-if="uploadMethodSelected === 'computer'"
|
||||||
ref="inputFileRef"
|
ref="inputFileRef"
|
||||||
|
@ -289,10 +286,8 @@ const makeRequest = async () => {
|
||||||
@update:model-value="updatePhotoPreview($event)"
|
@update:model-value="updatePhotoPreview($event)"
|
||||||
placeholder="https://"
|
placeholder="https://"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Orientation')"
|
:label="t('Orientation')"
|
||||||
:options="viewportTypes"
|
:options="viewportTypes"
|
||||||
|
@ -300,7 +295,6 @@ const makeRequest = async () => {
|
||||||
option-label="description"
|
option-label="description"
|
||||||
v-model="viewportSelection"
|
v-model="viewportSelection"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<div class="q-mt-lg row justify-end">
|
<div class="q-mt-lg row justify-end">
|
||||||
<QBtn
|
<QBtn
|
||||||
|
|
|
@ -152,19 +152,8 @@ const selectItem = ({ id }) => {
|
||||||
</span>
|
</span>
|
||||||
<h1 class="title">{{ t('Filter item') }}</h1>
|
<h1 class="title">{{ t('Filter item') }}</h1>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
<VnInput :label="t('entry.buys.name')" v-model="itemFilterParams.name" />
|
||||||
<VnInput
|
<VnInput :label="t('entry.buys.size')" v-model="itemFilterParams.size" />
|
||||||
:label="t('entry.buys.name')"
|
|
||||||
v-model="itemFilterParams.name"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
|
||||||
:label="t('entry.buys.size')"
|
|
||||||
v-model="itemFilterParams.size"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('entry.buys.producer')"
|
:label="t('entry.buys.producer')"
|
||||||
:options="producersOptions"
|
:options="producersOptions"
|
||||||
|
@ -173,8 +162,6 @@ const selectItem = ({ id }) => {
|
||||||
option-value="id"
|
option-value="id"
|
||||||
v-model="itemFilterParams.producerFk"
|
v-model="itemFilterParams.producerFk"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('entry.buys.type')"
|
:label="t('entry.buys.type')"
|
||||||
:options="ItemTypesOptions"
|
:options="ItemTypesOptions"
|
||||||
|
@ -183,8 +170,6 @@ const selectItem = ({ id }) => {
|
||||||
option-value="id"
|
option-value="id"
|
||||||
v-model="itemFilterParams.typeFk"
|
v-model="itemFilterParams.typeFk"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('entry.buys.color')"
|
:label="t('entry.buys.color')"
|
||||||
:options="InksOptions"
|
:options="InksOptions"
|
||||||
|
@ -193,7 +178,6 @@ const selectItem = ({ id }) => {
|
||||||
option-value="id"
|
option-value="id"
|
||||||
v-model="itemFilterParams.inkFk"
|
v-model="itemFilterParams.inkFk"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<div class="q-mt-lg row justify-end">
|
<div class="q-mt-lg row justify-end">
|
||||||
<QBtn
|
<QBtn
|
||||||
|
|
|
@ -145,7 +145,6 @@ const selectTravel = ({ id }) => {
|
||||||
</span>
|
</span>
|
||||||
<h1 class="title">{{ t('Filter travels') }}</h1>
|
<h1 class="title">{{ t('Filter travels') }}</h1>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('entry.basicData.agency')"
|
:label="t('entry.basicData.agency')"
|
||||||
:options="agenciesOptions"
|
:options="agenciesOptions"
|
||||||
|
@ -154,8 +153,6 @@ const selectTravel = ({ id }) => {
|
||||||
option-value="id"
|
option-value="id"
|
||||||
v-model="travelFilterParams.agencyModeFk"
|
v-model="travelFilterParams.agencyModeFk"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('entry.basicData.warehouseOut')"
|
:label="t('entry.basicData.warehouseOut')"
|
||||||
:options="warehousesOptions"
|
:options="warehousesOptions"
|
||||||
|
@ -164,8 +161,6 @@ const selectTravel = ({ id }) => {
|
||||||
option-value="id"
|
option-value="id"
|
||||||
v-model="travelFilterParams.warehouseOutFk"
|
v-model="travelFilterParams.warehouseOutFk"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('entry.basicData.warehouseIn')"
|
:label="t('entry.basicData.warehouseIn')"
|
||||||
:options="warehousesOptions"
|
:options="warehousesOptions"
|
||||||
|
@ -174,19 +169,14 @@ const selectTravel = ({ id }) => {
|
||||||
option-value="id"
|
option-value="id"
|
||||||
v-model="travelFilterParams.warehouseInFk"
|
v-model="travelFilterParams.warehouseInFk"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInputDate
|
<VnInputDate
|
||||||
:label="t('entry.basicData.shipped')"
|
:label="t('entry.basicData.shipped')"
|
||||||
v-model="travelFilterParams.shipped"
|
v-model="travelFilterParams.shipped"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInputDate
|
<VnInputDate
|
||||||
:label="t('entry.basicData.landed')"
|
:label="t('entry.basicData.landed')"
|
||||||
v-model="travelFilterParams.landed"
|
v-model="travelFilterParams.landed"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<div class="q-mt-lg row justify-end">
|
<div class="q-mt-lg row justify-end">
|
||||||
<QBtn
|
<QBtn
|
||||||
|
|
|
@ -50,13 +50,11 @@ const onDataSaved = (data) => {
|
||||||
>
|
>
|
||||||
<template #form-inputs="{ data }">
|
<template #form-inputs="{ data }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('Type the visible quantity')"
|
:label="t('Type the visible quantity')"
|
||||||
v-model.number="data.quantity"
|
v-model.number="data.quantity"
|
||||||
autofocus
|
autofocus
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
<div class="col">
|
||||||
|
|
|
@ -83,7 +83,6 @@ const transferInvoice = async () => {
|
||||||
>
|
>
|
||||||
<template #form-inputs>
|
<template #form-inputs>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Client')"
|
:label="t('Client')"
|
||||||
:options="clientsOptions"
|
:options="clientsOptions"
|
||||||
|
@ -104,8 +103,6 @@ const transferInvoice = async () => {
|
||||||
</QItem>
|
</QItem>
|
||||||
</template>
|
</template>
|
||||||
</VnSelect>
|
</VnSelect>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Rectificative type')"
|
:label="t('Rectificative type')"
|
||||||
:options="rectificativeTypeOptions"
|
:options="rectificativeTypeOptions"
|
||||||
|
@ -115,10 +112,8 @@ const transferInvoice = async () => {
|
||||||
v-model="transferInvoiceParams.cplusRectificationTypeFk"
|
v-model="transferInvoiceParams.cplusRectificationTypeFk"
|
||||||
:required="true"
|
:required="true"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Class')"
|
:label="t('Class')"
|
||||||
:options="siiTypeInvoiceOutsOptions"
|
:options="siiTypeInvoiceOutsOptions"
|
||||||
|
@ -139,8 +134,6 @@ const transferInvoice = async () => {
|
||||||
</QItem>
|
</QItem>
|
||||||
</template>
|
</template>
|
||||||
</VnSelect>
|
</VnSelect>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Type')"
|
:label="t('Type')"
|
||||||
:options="invoiceCorrectionTypesOptions"
|
:options="invoiceCorrectionTypesOptions"
|
||||||
|
@ -150,7 +143,6 @@ const transferInvoice = async () => {
|
||||||
v-model="transferInvoiceParams.invoiceCorrectionTypeFk"
|
v-model="transferInvoiceParams.invoiceCorrectionTypeFk"
|
||||||
:required="true"
|
:required="true"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormPopup>
|
</FormPopup>
|
||||||
|
|
|
@ -1,29 +1,17 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="q-pa-md">
|
<div class="q-pa-md">
|
||||||
<div class="row q-gutter-md q-mb-md">
|
<div class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QSkeleton type="QInput" square />
|
<QSkeleton type="QInput" square />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QSkeleton type="QInput" square />
|
<QSkeleton type="QInput" square />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<div class="row q-gutter-md q-mb-md">
|
<div class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QSkeleton type="QInput" square />
|
<QSkeleton type="QInput" square />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QSkeleton type="QInput" square />
|
<QSkeleton type="QInput" square />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<div class="row q-gutter-md q-mb-md">
|
<div class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QSkeleton type="QInput" square />
|
<QSkeleton type="QInput" square />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QSkeleton type="QInput" square />
|
<QSkeleton type="QInput" square />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<div class="row q-gutter-md">
|
<div class="row q-gutter-md">
|
||||||
<QSkeleton type="QBtn" />
|
<QSkeleton type="QBtn" />
|
||||||
<QSkeleton type="QBtn" />
|
<QSkeleton type="QBtn" />
|
||||||
|
|
|
@ -3,39 +3,30 @@
|
||||||
<QSkeleton type="rect" square />
|
<QSkeleton type="rect" square />
|
||||||
</div>
|
</div>
|
||||||
<div class="row q-pa-md q-col-gutter-md q-mb-md">
|
<div class="row q-pa-md q-col-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QSkeleton type="rect" class="q-mb-md" square />
|
<QSkeleton type="rect" class="q-mb-md" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QSkeleton type="rect" class="q-mb-md" square />
|
<QSkeleton type="rect" class="q-mb-md" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QSkeleton type="rect" class="q-mb-md" square />
|
<QSkeleton type="rect" class="q-mb-md" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QSkeleton type="rect" class="q-mb-md" square />
|
<QSkeleton type="rect" class="q-mb-md" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QSkeleton type="rect" class="q-mb-md" square />
|
<QSkeleton type="rect" class="q-mb-md" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
|
@ -43,7 +34,6 @@
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
<QSkeleton type="text" square />
|
<QSkeleton type="text" square />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
|
|
@ -1,47 +1,22 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="q-pa-md w">
|
<div class="q-pa-md w">
|
||||||
<div class="row q-gutter-md q-mb-md">
|
<div class="row q-gutter-md q-mb-md">
|
||||||
<div class="col-1">
|
<QSkeleton type="rect" square />
|
||||||
|
<QSkeleton type="rect" square />
|
||||||
|
<QSkeleton type="rect" square />
|
||||||
|
<QSkeleton type="rect" square />
|
||||||
|
<QSkeleton type="rect" square />
|
||||||
<QSkeleton type="rect" square />
|
<QSkeleton type="rect" square />
|
||||||
</div>
|
</div>
|
||||||
<div class="col">
|
|
||||||
<QSkeleton type="rect" square />
|
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QSkeleton type="rect" square />
|
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QSkeleton type="rect" square />
|
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QSkeleton type="rect" square />
|
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QSkeleton type="rect" square />
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row q-gutter-md q-mb-md" v-for="n in 5" :key="n">
|
<div class="row q-gutter-md q-mb-md" v-for="n in 5" :key="n">
|
||||||
<div class="col-1">
|
|
||||||
<QSkeleton type="QInput" square />
|
<QSkeleton type="QInput" square />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QSkeleton type="QInput" square />
|
<QSkeleton type="QInput" square />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QSkeleton type="QInput" square />
|
<QSkeleton type="QInput" square />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QSkeleton type="QInput" square />
|
<QSkeleton type="QInput" square />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QSkeleton type="QInput" square />
|
<QSkeleton type="QInput" square />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QSkeleton type="QInput" square />
|
<QSkeleton type="QInput" square />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</template>
|
</template>
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.w {
|
.w {
|
||||||
|
|
|
@ -95,22 +95,17 @@ const statesFilter = {
|
||||||
>
|
>
|
||||||
<template #form="{ data, validate, filter }">
|
<template #form="{ data, validate, filter }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.client.name"
|
v-model="data.client.name"
|
||||||
:label="t('claim.basicData.customer')"
|
:label="t('claim.basicData.customer')"
|
||||||
disable
|
disable
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInputDate
|
<VnInputDate
|
||||||
v-model="data.created"
|
v-model="data.created"
|
||||||
:label="t('claim.basicData.created')"
|
:label="t('claim.basicData.created')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('claim.basicData.assignedTo')"
|
:label="t('claim.basicData.assignedTo')"
|
||||||
v-model="data.workerFk"
|
v-model="data.workerFk"
|
||||||
|
@ -131,8 +126,6 @@ const statesFilter = {
|
||||||
</QAvatar>
|
</QAvatar>
|
||||||
</template>
|
</template>
|
||||||
</VnSelect>
|
</VnSelect>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QSelect
|
<QSelect
|
||||||
v-model="data.claimStateFk"
|
v-model="data.claimStateFk"
|
||||||
:options="claimStates"
|
:options="claimStates"
|
||||||
|
@ -147,18 +140,14 @@ const statesFilter = {
|
||||||
:input-debounce="0"
|
:input-debounce="0"
|
||||||
>
|
>
|
||||||
</QSelect>
|
</QSelect>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
v-model.number="data.packages"
|
v-model.number="data.packages"
|
||||||
:label="t('globals.packages')"
|
:label="t('globals.packages')"
|
||||||
:rules="validate('claim.packages')"
|
:rules="validate('claim.packages')"
|
||||||
type="number"
|
type="number"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QSelect
|
<QSelect
|
||||||
v-model="data.pickup"
|
v-model="data.pickup"
|
||||||
:options="optionsList"
|
:options="optionsList"
|
||||||
|
@ -171,7 +160,6 @@ const statesFilter = {
|
||||||
:input-debounce="0"
|
:input-debounce="0"
|
||||||
>
|
>
|
||||||
</QSelect>
|
</QSelect>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -70,7 +70,6 @@ const filterOptions = {
|
||||||
<FormModel :url="`Clients/${route.params.id}`" auto-load model="customer">
|
<FormModel :url="`Clients/${route.params.id}`" auto-load model="customer">
|
||||||
<template #form="{ data, validate, filter }">
|
<template #form="{ data, validate, filter }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('Comercial name')"
|
:label="t('Comercial name')"
|
||||||
:rules="validate('client.socialName')"
|
:rules="validate('client.socialName')"
|
||||||
|
@ -78,8 +77,7 @@ const filterOptions = {
|
||||||
clearable
|
clearable
|
||||||
v-model="data.name"
|
v-model="data.name"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QSelect
|
<QSelect
|
||||||
:input-debounce="0"
|
:input-debounce="0"
|
||||||
:label="t('customer.basicData.businessType')"
|
:label="t('customer.basicData.businessType')"
|
||||||
|
@ -91,18 +89,14 @@ const filterOptions = {
|
||||||
option-value="code"
|
option-value="code"
|
||||||
v-model="data.businessTypeFk"
|
v-model="data.businessTypeFk"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('customer.basicData.contact')"
|
:label="t('customer.basicData.contact')"
|
||||||
:rules="validate('client.contact')"
|
:rules="validate('client.contact')"
|
||||||
clearable
|
clearable
|
||||||
v-model="data.contact"
|
v-model="data.contact"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('customer.basicData.email')"
|
:label="t('customer.basicData.email')"
|
||||||
:rules="validate('client.email')"
|
:rules="validate('client.email')"
|
||||||
|
@ -118,28 +112,22 @@ const filterOptions = {
|
||||||
</QIcon>
|
</QIcon>
|
||||||
</template>
|
</template>
|
||||||
</VnInput>
|
</VnInput>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('customer.basicData.phone')"
|
:label="t('customer.basicData.phone')"
|
||||||
:rules="validate('client.phone')"
|
:rules="validate('client.phone')"
|
||||||
clearable
|
clearable
|
||||||
v-model="data.phone"
|
v-model="data.phone"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('customer.basicData.mobile')"
|
:label="t('customer.basicData.mobile')"
|
||||||
:rules="validate('client.mobile')"
|
:rules="validate('client.mobile')"
|
||||||
clearable
|
clearable
|
||||||
v-model="data.mobile"
|
v-model="data.mobile"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QSelect
|
<QSelect
|
||||||
:input-debounce="0"
|
:input-debounce="0"
|
||||||
:label="t('customer.basicData.salesPerson')"
|
:label="t('customer.basicData.salesPerson')"
|
||||||
|
@ -163,23 +151,19 @@ const filterOptions = {
|
||||||
</QAvatar>
|
</QAvatar>
|
||||||
</template>
|
</template>
|
||||||
</QSelect>
|
</QSelect>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QSelect
|
<QSelect
|
||||||
:input-debounce="0"
|
|
||||||
:label="t('customer.basicData.contactChannel')"
|
|
||||||
:options="contactChannels"
|
|
||||||
:rules="validate('client.contactChannelFk')"
|
|
||||||
emit-value
|
|
||||||
map-options
|
|
||||||
option-label="name"
|
|
||||||
option-value="id"
|
|
||||||
v-model="data.contactChannelFk"
|
v-model="data.contactChannelFk"
|
||||||
|
:options="contactChannels"
|
||||||
|
option-value="id"
|
||||||
|
option-label="name"
|
||||||
|
emit-value
|
||||||
|
:label="t('customer.basicData.contactChannel')"
|
||||||
|
map-options
|
||||||
|
:rules="validate('client.contactChannelFk')"
|
||||||
|
:input-debounce="0"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QSelect
|
<QSelect
|
||||||
:input-debounce="0"
|
:input-debounce="0"
|
||||||
:label="t('customer.basicData.previousClient')"
|
:label="t('customer.basicData.previousClient')"
|
||||||
|
@ -201,7 +185,6 @@ const filterOptions = {
|
||||||
</QIcon>
|
</QIcon>
|
||||||
</template>
|
</template>
|
||||||
</QSelect>
|
</QSelect>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -48,7 +48,6 @@ const getBankEntities = (data, formData) => {
|
||||||
>
|
>
|
||||||
<template #form="{ data, validate }">
|
<template #form="{ data, validate }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Billing data')"
|
:label="t('Billing data')"
|
||||||
:options="payMethods"
|
:options="payMethods"
|
||||||
|
@ -57,14 +56,10 @@ const getBankEntities = (data, formData) => {
|
||||||
option-value="id"
|
option-value="id"
|
||||||
v-model="data.payMethod"
|
v-model="data.payMethod"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput :label="t('Due day')" clearable v-model="data.dueDay" />
|
<VnInput :label="t('Due day')" clearable v-model="data.dueDay" />
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
|
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput :label="t('IBAN')" clearable v-model="data.iban">
|
<VnInput :label="t('IBAN')" clearable v-model="data.iban">
|
||||||
<template #append>
|
<template #append>
|
||||||
<QIcon name="info" class="cursor-info">
|
<QIcon name="info" class="cursor-info">
|
||||||
|
@ -72,8 +67,6 @@ const getBankEntities = (data, formData) => {
|
||||||
</QIcon>
|
</QIcon>
|
||||||
</template>
|
</template>
|
||||||
</VnInput>
|
</VnInput>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelectDialog
|
<VnSelectDialog
|
||||||
:label="t('Swift / BIC')"
|
:label="t('Swift / BIC')"
|
||||||
:options="bankEntitiesOptions"
|
:options="bankEntitiesOptions"
|
||||||
|
@ -93,29 +86,18 @@ const getBankEntities = (data, formData) => {
|
||||||
<QItem v-bind="scope.itemProps">
|
<QItem v-bind="scope.itemProps">
|
||||||
<QItemSection v-if="scope.opt">
|
<QItemSection v-if="scope.opt">
|
||||||
<QItemLabel
|
<QItemLabel
|
||||||
>{{ scope.opt.bic }}
|
>{{ scope.opt.bic }} {{ scope.opt.name }}</QItemLabel
|
||||||
{{ scope.opt.name }}</QItemLabel
|
|
||||||
>
|
>
|
||||||
</QItemSection>
|
</QItemSection>
|
||||||
</QItem>
|
</QItem>
|
||||||
</template>
|
</template>
|
||||||
</VnSelectDialog>
|
</VnSelectDialog>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
|
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QCheckbox :label="t('Received LCR')" v-model="data.hasLcr" />
|
<QCheckbox :label="t('Received LCR')" v-model="data.hasLcr" />
|
||||||
</div>
|
<QCheckbox :label="t('VNL core received')" v-model="data.hasCoreVnl" />
|
||||||
<div class="col">
|
|
||||||
<QCheckbox
|
|
||||||
:label="t('VNL core received')"
|
|
||||||
v-model="data.hasCoreVnl"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QCheckbox :label="t('VNL B2B received')" v-model="data.hasSepaVnl" />
|
<QCheckbox :label="t('VNL B2B received')" v-model="data.hasSepaVnl" />
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -41,7 +41,6 @@ function handleLocation(data, location) {
|
||||||
>
|
>
|
||||||
<template #form="{ data, validate }">
|
<template #form="{ data, validate }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('Social name')"
|
:label="t('Social name')"
|
||||||
:required="true"
|
:required="true"
|
||||||
|
@ -55,20 +54,14 @@ function handleLocation(data, location) {
|
||||||
</QIcon>
|
</QIcon>
|
||||||
</template>
|
</template>
|
||||||
</VnInput>
|
</VnInput>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput :label="t('Tax number')" clearable v-model="data.fi" />
|
<VnInput :label="t('Tax number')" clearable v-model="data.fi" />
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
|
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput :label="t('Street')" clearable v-model="data.street" />
|
<VnInput :label="t('Street')" clearable v-model="data.street" />
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
|
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Sage tax type')"
|
:label="t('Sage tax type')"
|
||||||
:options="typesTaxes"
|
:options="typesTaxes"
|
||||||
|
@ -77,8 +70,6 @@ function handleLocation(data, location) {
|
||||||
option-value="id"
|
option-value="id"
|
||||||
v-model="data.sageTaxTypeFk"
|
v-model="data.sageTaxTypeFk"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Sage transaction type')"
|
:label="t('Sage transaction type')"
|
||||||
:options="typesTransactions"
|
:options="typesTransactions"
|
||||||
|
@ -98,11 +89,9 @@ function handleLocation(data, location) {
|
||||||
</QItem>
|
</QItem>
|
||||||
</template>
|
</template>
|
||||||
</VnSelect>
|
</VnSelect>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
|
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnLocation
|
<VnLocation
|
||||||
:rules="validate('Worker.postcode')"
|
:rules="validate('Worker.postcode')"
|
||||||
:roles-allowed-to-create="['deliveryAssistant']"
|
:roles-allowed-to-create="['deliveryAssistant']"
|
||||||
|
@ -111,80 +100,50 @@ function handleLocation(data, location) {
|
||||||
@update:model-value="(location) => handleLocation(data, location)"
|
@update:model-value="(location) => handleLocation(data, location)"
|
||||||
>
|
>
|
||||||
</VnLocation>
|
</VnLocation>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
|
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QCheckbox :label="t('Active')" v-model="data.isActive" />
|
<QCheckbox :label="t('Active')" v-model="data.isActive" />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QCheckbox :label="t('Frozen')" v-model="data.isFreezed" />
|
<QCheckbox :label="t('Frozen')" v-model="data.isFreezed" />
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
|
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QCheckbox :label="t('Has to invoice')" v-model="data.hasToInvoice" />
|
<QCheckbox :label="t('Has to invoice')" v-model="data.hasToInvoice" />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QCheckbox :label="t('Vies')" v-model="data.isVies" />
|
<QCheckbox :label="t('Vies')" v-model="data.isVies" />
|
||||||
<QIcon name="info" class="cursor-info q-ml-sm" size="sm">
|
<QIcon name="info" class="cursor-info q-ml-sm" size="sm">
|
||||||
<QTooltip>
|
<QTooltip>
|
||||||
{{ t('whenActivatingIt') }}
|
{{ t('whenActivatingIt') }}
|
||||||
</QTooltip>
|
</QTooltip>
|
||||||
</QIcon>
|
</QIcon>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
|
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
<QCheckbox :label="t('Notify by email')" v-model="data.isToBeMailed" />
|
||||||
<QCheckbox
|
|
||||||
:label="t('Notify by email')"
|
|
||||||
v-model="data.isToBeMailed"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QCheckbox
|
<QCheckbox
|
||||||
:label="t('Invoice by address')"
|
:label="t('Invoice by address')"
|
||||||
v-model="data.hasToInvoiceByAddress"
|
v-model="data.hasToInvoiceByAddress"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
|
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
<QCheckbox :label="t('Is equalizated')" v-model="data.isEqualizated" />
|
||||||
<QCheckbox
|
|
||||||
:label="t('Is equalizated')"
|
|
||||||
v-model="data.isEqualizated"
|
|
||||||
/>
|
|
||||||
<QIcon class="cursor-info q-ml-sm" name="info" size="sm">
|
<QIcon class="cursor-info q-ml-sm" name="info" size="sm">
|
||||||
<QTooltip>
|
<QTooltip>
|
||||||
{{ t('inOrderToInvoice') }}
|
{{ t('inOrderToInvoice') }}
|
||||||
</QTooltip>
|
</QTooltip>
|
||||||
</QIcon>
|
</QIcon>
|
||||||
</div>
|
<QCheckbox :label="t('Verified data')" v-model="data.isTaxDataChecked" />
|
||||||
<div class="col">
|
|
||||||
<QCheckbox
|
|
||||||
:label="t('Verified data')"
|
|
||||||
v-model="data.isTaxDataChecked"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
|
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QCheckbox
|
<QCheckbox
|
||||||
:label="t('Incoterms authorization')"
|
:label="t('Incoterms authorization')"
|
||||||
v-model="data.hasIncoterms"
|
v-model="data.hasIncoterms"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QCheckbox
|
<QCheckbox
|
||||||
:label="t('Electronic invoice')"
|
:label="t('Electronic invoice')"
|
||||||
v-model="data.hasElectronicInvoice"
|
v-model="data.hasElectronicInvoice"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -49,10 +49,7 @@ function handleLocation(data, location) {
|
||||||
>
|
>
|
||||||
<template #form="{ data, validate }">
|
<template #form="{ data, validate }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QInput :label="t('Comercial name')" v-model="data.name" />
|
<QInput :label="t('Comercial name')" v-model="data.name" />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Salesperson')"
|
:label="t('Salesperson')"
|
||||||
:options="workersOptions"
|
:options="workersOptions"
|
||||||
|
@ -61,10 +58,8 @@ function handleLocation(data, location) {
|
||||||
option-value="id"
|
option-value="id"
|
||||||
v-model="data.salesPersonFk"
|
v-model="data.salesPersonFk"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Business type')"
|
:label="t('Business type')"
|
||||||
:options="businessTypesOptions"
|
:options="businessTypesOptions"
|
||||||
|
@ -73,49 +68,35 @@ function handleLocation(data, location) {
|
||||||
option-value="code"
|
option-value="code"
|
||||||
v-model="data.businessTypeFk"
|
v-model="data.businessTypeFk"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QInput v-model="data.fi" :label="t('Tax number')" />
|
<QInput v-model="data.fi" :label="t('Tax number')" />
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('Business name')"
|
:label="t('Business name')"
|
||||||
:rules="validate('client.socialName')"
|
:rules="validate('client.socialName')"
|
||||||
v-model="data.socialName"
|
v-model="data.socialName"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('Street')"
|
:label="t('Street')"
|
||||||
:rules="validate('client.street')"
|
:rules="validate('client.street')"
|
||||||
v-model="data.street"
|
v-model="data.street"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnLocation
|
<VnLocation
|
||||||
:rules="validate('Worker.postcode')"
|
:rules="validate('Worker.postcode')"
|
||||||
:roles-allowed-to-create="['deliveryAssistant']"
|
:roles-allowed-to-create="['deliveryAssistant']"
|
||||||
:options="postcodesOptions"
|
:options="postcodesOptions"
|
||||||
v-model="data.location"
|
v-model="data.location"
|
||||||
@update:model-value="
|
@update:model-value="(location) => handleLocation(data, location)"
|
||||||
(location) => handleLocation(data, location)
|
|
||||||
"
|
|
||||||
>
|
>
|
||||||
</VnLocation>
|
</VnLocation>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
|
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QInput v-model="data.userName" :label="t('Web user')" />
|
<QInput v-model="data.userName" :label="t('Web user')" />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('Email')"
|
:label="t('Email')"
|
||||||
:rules="validate('client.email')"
|
:rules="validate('client.email')"
|
||||||
|
@ -131,7 +112,6 @@ function handleLocation(data, location) {
|
||||||
</QIcon>
|
</QIcon>
|
||||||
</template>
|
</template>
|
||||||
</QInput>
|
</QInput>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<QCheckbox
|
<QCheckbox
|
||||||
:label="t('Is equalizated')"
|
:label="t('Is equalizated')"
|
||||||
|
|
|
@ -61,13 +61,11 @@ const onSubmit = async () => {
|
||||||
}}
|
}}
|
||||||
</div>
|
</div>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('Message')"
|
:label="t('Message')"
|
||||||
type="textarea"
|
type="textarea"
|
||||||
v-model="newObservation"
|
v-model="newObservation"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<div class="q-mt-lg row justify-end">
|
<div class="q-mt-lg row justify-end">
|
||||||
<QBtn
|
<QBtn
|
||||||
|
|
|
@ -56,24 +56,17 @@ const toCustomerGreuges = () => {
|
||||||
|
|
||||||
<template #form="{ data }">
|
<template #form="{ data }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('Amount')"
|
:label="t('Amount')"
|
||||||
clearable
|
clearable
|
||||||
type="number"
|
type="number"
|
||||||
v-model="data.amount"
|
v-model="data.amount"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInputDate :label="t('Date')" v-model="data.shipped" />
|
<VnInputDate :label="t('Date')" v-model="data.shipped" />
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
|
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput :label="t('Comment')" clearable v-model="data.description" />
|
<VnInput :label="t('Comment')" clearable v-model="data.description" />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Type')"
|
:label="t('Type')"
|
||||||
:options="greugeTypes"
|
:options="greugeTypes"
|
||||||
|
@ -82,7 +75,6 @@ const toCustomerGreuges = () => {
|
||||||
option-value="id"
|
option-value="id"
|
||||||
v-model="data.greugeTypeFk"
|
v-model="data.greugeTypeFk"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -24,30 +24,22 @@ const onDataSaved = (dataSaved) => {
|
||||||
>
|
>
|
||||||
<template #form-inputs="{ data }">
|
<template #form-inputs="{ data }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('NIF')"
|
:label="t('NIF')"
|
||||||
:required="true"
|
:required="true"
|
||||||
clearable
|
clearable
|
||||||
v-model="data.nif"
|
v-model="data.nif"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('Fiscal name')"
|
:label="t('Fiscal name')"
|
||||||
:required="true"
|
:required="true"
|
||||||
clearable
|
clearable
|
||||||
v-model="data.fiscalName"
|
v-model="data.fiscalName"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput :label="t('Street')" clearable v-model="data.street" />
|
<VnInput :label="t('Street')" clearable v-model="data.street" />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput :label="t('Phone')" clearable v-model="data.phone" />
|
<VnInput :label="t('Phone')" clearable v-model="data.phone" />
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModelPopup>
|
</FormModelPopup>
|
||||||
|
|
|
@ -135,14 +135,11 @@ const onDataSaved = async () => {
|
||||||
<h5 class="q-mt-none">{{ t('New payment') }}</h5>
|
<h5 class="q-mt-none">{{ t('New payment') }}</h5>
|
||||||
|
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInputDate
|
<VnInputDate
|
||||||
:label="t('Date')"
|
:label="t('Date')"
|
||||||
:required="true"
|
:required="true"
|
||||||
v-model="data.payed"
|
v-model="data.payed"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Company')"
|
:label="t('Company')"
|
||||||
:options="companyOptions"
|
:options="companyOptions"
|
||||||
|
@ -153,11 +150,9 @@ const onDataSaved = async () => {
|
||||||
option-value="id"
|
option-value="id"
|
||||||
v-model="data.companyFk"
|
v-model="data.companyFk"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
|
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Bank')"
|
:label="t('Bank')"
|
||||||
:options="bankOptions"
|
:options="bankOptions"
|
||||||
|
@ -178,8 +173,6 @@ const onDataSaved = async () => {
|
||||||
</QItem>
|
</QItem>
|
||||||
</template>
|
</template>
|
||||||
</VnSelect>
|
</VnSelect>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('Amount')"
|
:label="t('Amount')"
|
||||||
:required="true"
|
:required="true"
|
||||||
|
@ -188,7 +181,6 @@ const onDataSaved = async () => {
|
||||||
type="number"
|
type="number"
|
||||||
v-model.number="data.amountPaid"
|
v-model.number="data.amountPaid"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
|
|
||||||
<div class="text-h6" v-if="data.bankFk === 3 || data.bankFk === 3117">
|
<div class="text-h6" v-if="data.bankFk === 3 || data.bankFk === 3117">
|
||||||
|
@ -203,21 +195,18 @@ const onDataSaved = async () => {
|
||||||
v-model="data.compensationAccount"
|
v-model="data.compensationAccount"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('Reference')"
|
:label="t('Reference')"
|
||||||
:required="true"
|
:required="true"
|
||||||
clearable
|
clearable
|
||||||
v-model="data.description"
|
v-model="data.description"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
|
|
||||||
<div class="q-mt-lg" v-if="data.bankFk === 2">
|
<div class="q-mt-lg" v-if="data.bankFk === 2">
|
||||||
<div class="text-h6">{{ t('Cash') }}</div>
|
<div class="text-h6">{{ t('Cash') }}</div>
|
||||||
|
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('Delivered amount')"
|
:label="t('Delivered amount')"
|
||||||
@update:model-value="calculateFromDeliveredAmount($event)"
|
@update:model-value="calculateFromDeliveredAmount($event)"
|
||||||
|
@ -225,8 +214,6 @@ const onDataSaved = async () => {
|
||||||
type="number"
|
type="number"
|
||||||
v-model="deliveredAmount"
|
v-model="deliveredAmount"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('Amount to return')"
|
:label="t('Amount to return')"
|
||||||
clearable
|
clearable
|
||||||
|
@ -234,16 +221,11 @@ const onDataSaved = async () => {
|
||||||
type="number"
|
type="number"
|
||||||
v-model="amountToReturn"
|
v-model="amountToReturn"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
|
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QCheckbox v-model="viewRecipt" />
|
<QCheckbox v-model="viewRecipt" />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QCheckbox v-model="sendEmail" />
|
<QCheckbox v-model="sendEmail" />
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
@ -45,9 +45,7 @@ const toCustomerNotes = () => {
|
||||||
|
|
||||||
<template #form="{ data }">
|
<template #form="{ data }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QInput :label="t('Note')" type="textarea" v-model="data.text" />
|
<QInput :label="t('Note')" type="textarea" v-model="data.text" />
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -50,31 +50,23 @@ const toCustomerRecoveries = () => {
|
||||||
|
|
||||||
<template #form="{ data }">
|
<template #form="{ data }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInputDate :label="t('Since')" v-model="data.started" />
|
<VnInputDate :label="t('Since')" v-model="data.started" />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInputDate :label="t('To')" v-model="data.finished" />
|
<VnInputDate :label="t('To')" v-model="data.finished" />
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
|
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('Amount')"
|
:label="t('Amount')"
|
||||||
clearable
|
clearable
|
||||||
type="number"
|
type="number"
|
||||||
v-model="data.amount"
|
v-model="data.amount"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('Period')"
|
:label="t('Period')"
|
||||||
clearable
|
clearable
|
||||||
type="number"
|
type="number"
|
||||||
v-model="data.period"
|
v-model="data.period"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -30,7 +30,6 @@ const clientsOptions = ref([]);
|
||||||
>
|
>
|
||||||
<template #form="{ data, validate }">
|
<template #form="{ data, validate }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('department.name')"
|
:label="t('department.name')"
|
||||||
v-model="data.name"
|
v-model="data.name"
|
||||||
|
@ -38,36 +37,28 @@ const clientsOptions = ref([]);
|
||||||
clearable
|
clearable
|
||||||
autofocus
|
autofocus
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.code"
|
v-model="data.code"
|
||||||
:label="t('department.code')"
|
:label="t('department.code')"
|
||||||
:rules="validate('department.code')"
|
:rules="validate('department.code')"
|
||||||
clearable
|
clearable
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('department.chat')"
|
:label="t('department.chat')"
|
||||||
v-model="data.chatName"
|
v-model="data.chatName"
|
||||||
:rules="validate('department.chat')"
|
:rules="validate('department.chat')"
|
||||||
clearable
|
clearable
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.notificationEmail"
|
v-model="data.notificationEmail"
|
||||||
:label="t('department.email')"
|
:label="t('department.email')"
|
||||||
:rules="validate('department.email')"
|
:rules="validate('department.email')"
|
||||||
clearable
|
clearable
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('department.bossDepartment')"
|
:label="t('department.bossDepartment')"
|
||||||
v-model="data.workerFk"
|
v-model="data.workerFk"
|
||||||
|
@ -78,8 +69,6 @@ const clientsOptions = ref([]);
|
||||||
map-options
|
map-options
|
||||||
:rules="validate('department.workerFk')"
|
:rules="validate('department.workerFk')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('department.selfConsumptionCustomer')"
|
:label="t('department.selfConsumptionCustomer')"
|
||||||
v-model="data.clientFk"
|
v-model="data.clientFk"
|
||||||
|
@ -90,45 +79,34 @@ const clientsOptions = ref([]);
|
||||||
map-options
|
map-options
|
||||||
:rules="validate('department.clientFk')"
|
:rules="validate('department.clientFk')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QCheckbox
|
<QCheckbox
|
||||||
:label="t('department.telework')"
|
:label="t('department.telework')"
|
||||||
v-model="data.isTeleworking"
|
v-model="data.isTeleworking"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QCheckbox
|
<QCheckbox
|
||||||
:label="t('department.notifyOnErrors')"
|
:label="t('department.notifyOnErrors')"
|
||||||
v-model="data.hasToMistake"
|
v-model="data.hasToMistake"
|
||||||
:false-value="0"
|
:false-value="0"
|
||||||
:true-value="1"
|
:true-value="1"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QCheckbox
|
<QCheckbox
|
||||||
:label="t('department.worksInProduction')"
|
:label="t('department.worksInProduction')"
|
||||||
v-model="data.isProduction"
|
v-model="data.isProduction"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QCheckbox
|
<QCheckbox
|
||||||
:label="t('department.hasToRefill')"
|
:label="t('department.hasToRefill')"
|
||||||
v-model="data.hasToRefill"
|
v-model="data.hasToRefill"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QCheckbox
|
<QCheckbox
|
||||||
:label="t('department.hasToSendMail')"
|
:label="t('department.hasToSendMail')"
|
||||||
v-model="data.hasToSendMail"
|
v-model="data.hasToSendMail"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -68,7 +68,6 @@ const onFilterTravelSelected = (formData, id) => {
|
||||||
>
|
>
|
||||||
<template #form="{ data }">
|
<template #form="{ data }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('entry.basicData.supplier')"
|
:label="t('entry.basicData.supplier')"
|
||||||
v-model="data.supplierFk"
|
v-model="data.supplierFk"
|
||||||
|
@ -90,8 +89,6 @@ const onFilterTravelSelected = (formData, id) => {
|
||||||
</QItem>
|
</QItem>
|
||||||
</template>
|
</template>
|
||||||
</VnSelect>
|
</VnSelect>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelectDialog
|
<VnSelectDialog
|
||||||
:label="t('entry.basicData.travel')"
|
:label="t('entry.basicData.travel')"
|
||||||
v-model="data.travelFk"
|
v-model="data.travelFk"
|
||||||
|
@ -123,24 +120,18 @@ const onFilterTravelSelected = (formData, id) => {
|
||||||
</QItem>
|
</QItem>
|
||||||
</template>
|
</template>
|
||||||
</VnSelectDialog>
|
</VnSelectDialog>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.reference"
|
v-model="data.reference"
|
||||||
:label="t('entry.basicData.reference')"
|
:label="t('entry.basicData.reference')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.invoiceNumber"
|
v-model="data.invoiceNumber"
|
||||||
:label="t('entry.basicData.invoiceNumber')"
|
:label="t('entry.basicData.invoiceNumber')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('entry.basicData.company')"
|
:label="t('entry.basicData.company')"
|
||||||
v-model="data.companyFk"
|
v-model="data.companyFk"
|
||||||
|
@ -151,10 +142,8 @@ const onFilterTravelSelected = (formData, id) => {
|
||||||
hide-selected
|
hide-selected
|
||||||
:required="true"
|
:required="true"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('entry.basicData.currency')"
|
:label="t('entry.basicData.currency')"
|
||||||
v-model="data.currencyFk"
|
v-model="data.currencyFk"
|
||||||
|
@ -162,8 +151,6 @@ const onFilterTravelSelected = (formData, id) => {
|
||||||
option-value="id"
|
option-value="id"
|
||||||
option-label="code"
|
option-label="code"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('entry.basicData.commission')"
|
:label="t('entry.basicData.commission')"
|
||||||
v-model="data.commission"
|
v-model="data.commission"
|
||||||
|
@ -171,10 +158,8 @@ const onFilterTravelSelected = (formData, id) => {
|
||||||
autofocus
|
autofocus
|
||||||
min="0"
|
min="0"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('entry.basicData.observation')"
|
:label="t('entry.basicData.observation')"
|
||||||
type="textarea"
|
type="textarea"
|
||||||
|
@ -183,37 +168,26 @@ const onFilterTravelSelected = (formData, id) => {
|
||||||
counter
|
counter
|
||||||
fill-input
|
fill-input
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QCheckbox
|
<QCheckbox
|
||||||
v-model="data.isOrdered"
|
v-model="data.isOrdered"
|
||||||
:label="t('entry.basicData.ordered')"
|
:label="t('entry.basicData.ordered')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QCheckbox
|
<QCheckbox
|
||||||
v-model="data.isConfirmed"
|
v-model="data.isConfirmed"
|
||||||
:label="t('entry.basicData.confirmed')"
|
:label="t('entry.basicData.confirmed')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QCheckbox
|
<QCheckbox
|
||||||
v-model="data.isExcludedFromAvailable"
|
v-model="data.isExcludedFromAvailable"
|
||||||
:label="t('entry.basicData.excludedFromAvailable')"
|
:label="t('entry.basicData.excludedFromAvailable')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QCheckbox v-model="data.isRaid" :label="t('entry.basicData.raid')" />
|
<QCheckbox v-model="data.isRaid" :label="t('entry.basicData.raid')" />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QCheckbox
|
<QCheckbox
|
||||||
v-if="isAdministrative()"
|
v-if="isAdministrative()"
|
||||||
v-model="data.isBooked"
|
v-model="data.isBooked"
|
||||||
:label="t('entry.basicData.booked')"
|
:label="t('entry.basicData.booked')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -198,7 +198,6 @@ const redirectToBuysView = () => {
|
||||||
</Teleport>
|
</Teleport>
|
||||||
<QCard class="q-pa-lg">
|
<QCard class="q-pa-lg">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QFile
|
<QFile
|
||||||
ref="inputFileRef"
|
ref="inputFileRef"
|
||||||
:label="t('entry.buys.file')"
|
:label="t('entry.buys.file')"
|
||||||
|
@ -218,24 +217,19 @@ const redirectToBuysView = () => {
|
||||||
</QIcon>
|
</QIcon>
|
||||||
</template>
|
</template>
|
||||||
</QFile>
|
</QFile>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<div v-if="importData.file">
|
<div v-if="importData.file">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('entry.buys.reference')"
|
:label="t('entry.buys.reference')"
|
||||||
v-model="importData.ref"
|
v-model="importData.ref"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('entry.buys.observations')"
|
:label="t('entry.buys.observations')"
|
||||||
v-model="importData.observation"
|
v-model="importData.observation"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow>
|
<VnRow>
|
||||||
<QTable :columns="columns" :rows="importData.buys">
|
<QTable :columns="columns" :rows="importData.buys">
|
||||||
|
|
|
@ -79,7 +79,6 @@ const redirectToEntryBasicData = (_, { id }) => {
|
||||||
>
|
>
|
||||||
<template #form="{ data, validate }">
|
<template #form="{ data, validate }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Supplier')"
|
:label="t('Supplier')"
|
||||||
class="full-width"
|
class="full-width"
|
||||||
|
@ -102,10 +101,8 @@ const redirectToEntryBasicData = (_, { id }) => {
|
||||||
</QItem>
|
</QItem>
|
||||||
</template>
|
</template>
|
||||||
</VnSelect>
|
</VnSelect>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Travel')"
|
:label="t('Travel')"
|
||||||
class="full-width"
|
class="full-width"
|
||||||
|
@ -125,8 +122,7 @@ const redirectToEntryBasicData = (_, { id }) => {
|
||||||
>{{ scope.opt?.agencyModeName }} -
|
>{{ scope.opt?.agencyModeName }} -
|
||||||
{{ scope.opt?.warehouseInName }} ({{
|
{{ scope.opt?.warehouseInName }} ({{
|
||||||
toDate(scope.opt?.shipped)
|
toDate(scope.opt?.shipped)
|
||||||
}}) →
|
}}) → {{ scope.opt?.warehouseOutName }} ({{
|
||||||
{{ scope.opt?.warehouseOutName }} ({{
|
|
||||||
toDate(scope.opt?.landed)
|
toDate(scope.opt?.landed)
|
||||||
}})</QItemLabel
|
}})</QItemLabel
|
||||||
>
|
>
|
||||||
|
@ -134,10 +130,8 @@ const redirectToEntryBasicData = (_, { id }) => {
|
||||||
</QItem>
|
</QItem>
|
||||||
</template>
|
</template>
|
||||||
</VnSelect>
|
</VnSelect>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Company')"
|
:label="t('Company')"
|
||||||
class="full-width"
|
class="full-width"
|
||||||
|
@ -150,7 +144,6 @@ const redirectToEntryBasicData = (_, { id }) => {
|
||||||
:required="true"
|
:required="true"
|
||||||
:rules="validate('entry.companyFk')"
|
:rules="validate('entry.companyFk')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -182,7 +182,6 @@ async function upsert() {
|
||||||
>
|
>
|
||||||
<template #form="{ data }">
|
<template #form="{ data }">
|
||||||
<div class="row q-gutter-md q-mb-md">
|
<div class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('supplierFk')"
|
:label="t('supplierFk')"
|
||||||
v-model="data.supplierFk"
|
v-model="data.supplierFk"
|
||||||
|
@ -203,8 +202,6 @@ async function upsert() {
|
||||||
</QItem>
|
</QItem>
|
||||||
</template>
|
</template>
|
||||||
</VnSelect>
|
</VnSelect>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
clearable
|
clearable
|
||||||
clear-icon="close"
|
clear-icon="close"
|
||||||
|
@ -212,20 +209,14 @@ async function upsert() {
|
||||||
v-model="data.supplierRef"
|
v-model="data.supplierRef"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<div class="row q-gutter-md q-mb-md">
|
<div class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('Expedition date')"
|
:label="t('Expedition date')"
|
||||||
v-model="data.issued"
|
v-model="data.issued"
|
||||||
:mask="dateMask"
|
:mask="dateMask"
|
||||||
>
|
>
|
||||||
<template #append>
|
<template #append>
|
||||||
<QIcon
|
<QIcon name="event" class="cursor-pointer" :fill-mask="fillMask">
|
||||||
name="event"
|
|
||||||
class="cursor-pointer"
|
|
||||||
:fill-mask="fillMask"
|
|
||||||
>
|
|
||||||
<QPopupProxy
|
<QPopupProxy
|
||||||
cover
|
cover
|
||||||
transition-show="scale"
|
transition-show="scale"
|
||||||
|
@ -245,8 +236,6 @@ async function upsert() {
|
||||||
</QIcon>
|
</QIcon>
|
||||||
</template>
|
</template>
|
||||||
</QInput>
|
</QInput>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('Operation date')"
|
:label="t('Operation date')"
|
||||||
v-model="data.operated"
|
v-model="data.operated"
|
||||||
|
@ -276,17 +265,13 @@ async function upsert() {
|
||||||
</template>
|
</template>
|
||||||
</QInput>
|
</QInput>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<div class="row q-gutter-md q-mb-md">
|
<div class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('Undeductible VAT')"
|
:label="t('Undeductible VAT')"
|
||||||
v-model="data.deductibleExpenseFk"
|
v-model="data.deductibleExpenseFk"
|
||||||
clearable
|
clearable
|
||||||
clear-icon="close"
|
clear-icon="close"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('Document')"
|
:label="t('Document')"
|
||||||
v-model="data.dmsFk"
|
v-model="data.dmsFk"
|
||||||
|
@ -334,9 +319,7 @@ async function upsert() {
|
||||||
</template>
|
</template>
|
||||||
</QInput>
|
</QInput>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<div class="row q-gutter-md q-mb-md">
|
<div class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('Entry date')"
|
:label="t('Entry date')"
|
||||||
v-model="data.bookEntried"
|
v-model="data.bookEntried"
|
||||||
|
@ -366,8 +349,6 @@ async function upsert() {
|
||||||
</QIcon>
|
</QIcon>
|
||||||
</template>
|
</template>
|
||||||
</QInput>
|
</QInput>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('Accounted date')"
|
:label="t('Accounted date')"
|
||||||
v-model="data.booked"
|
v-model="data.booked"
|
||||||
|
@ -398,9 +379,7 @@ async function upsert() {
|
||||||
</template>
|
</template>
|
||||||
</QInput>
|
</QInput>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<div class="row q-gutter-md q-mb-md">
|
<div class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Currency')"
|
:label="t('Currency')"
|
||||||
v-model="data.currencyFk"
|
v-model="data.currencyFk"
|
||||||
|
@ -408,8 +387,6 @@ async function upsert() {
|
||||||
option-value="id"
|
option-value="id"
|
||||||
option-label="code"
|
option-label="code"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
v-if="companiesRef"
|
v-if="companiesRef"
|
||||||
:label="t('Company')"
|
:label="t('Company')"
|
||||||
|
@ -419,16 +396,12 @@ async function upsert() {
|
||||||
option-label="code"
|
option-label="code"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<div class="row q-gutter-md q-mb-md">
|
<div class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QCheckbox
|
<QCheckbox
|
||||||
:label="t('invoiceIn.summary.booked')"
|
:label="t('invoiceIn.summary.booked')"
|
||||||
v-model="data.isBooked"
|
v-model="data.isBooked"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col"></div>
|
|
||||||
</div>
|
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
<QDialog ref="editDmsRef">
|
<QDialog ref="editDmsRef">
|
||||||
|
|
|
@ -144,7 +144,6 @@ const orderFilter = {
|
||||||
>
|
>
|
||||||
<template #form="{ data }">
|
<template #form="{ data }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('order.form.clientFk')"
|
:label="t('order.form.clientFk')"
|
||||||
v-model="data.clientFk"
|
v-model="data.clientFk"
|
||||||
|
@ -166,8 +165,6 @@ const orderFilter = {
|
||||||
</QItem>
|
</QItem>
|
||||||
</template>
|
</template>
|
||||||
</VnSelect>
|
</VnSelect>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('order.form.addressFk')"
|
:label="t('order.form.addressFk')"
|
||||||
v-model="data.addressFk"
|
v-model="data.addressFk"
|
||||||
|
@ -192,10 +189,8 @@ const orderFilter = {
|
||||||
</QItem>
|
</QItem>
|
||||||
</template>
|
</template>
|
||||||
</VnSelect>
|
</VnSelect>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInputDate
|
<VnInputDate
|
||||||
placeholder="dd-mm-aaa"
|
placeholder="dd-mm-aaa"
|
||||||
:label="t('order.form.landed')"
|
:label="t('order.form.landed')"
|
||||||
|
@ -204,10 +199,8 @@ const orderFilter = {
|
||||||
() => fetchAgencyList(data.landed, data.addressFk)
|
() => fetchAgencyList(data.landed, data.addressFk)
|
||||||
"
|
"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('order.form.agencyModeFk')"
|
:label="t('order.form.agencyModeFk')"
|
||||||
v-model="data.agencyModeFk"
|
v-model="data.agencyModeFk"
|
||||||
|
@ -218,7 +211,6 @@ const orderFilter = {
|
||||||
:disable="!agencyList?.length"
|
:disable="!agencyList?.length"
|
||||||
>
|
>
|
||||||
</VnSelect>
|
</VnSelect>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -123,7 +123,6 @@ const onSave = (data, response) => {
|
||||||
>
|
>
|
||||||
<template #form="{ data }">
|
<template #form="{ data }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Worker')"
|
:label="t('Worker')"
|
||||||
v-model="data.workerFk"
|
v-model="data.workerFk"
|
||||||
|
@ -146,8 +145,6 @@ const onSave = (data, response) => {
|
||||||
</QItem>
|
</QItem>
|
||||||
</template>
|
</template>
|
||||||
</VnSelect>
|
</VnSelect>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Vehicle')"
|
:label="t('Vehicle')"
|
||||||
v-model="data.vehicleFk"
|
v-model="data.vehicleFk"
|
||||||
|
@ -159,10 +156,8 @@ const onSave = (data, response) => {
|
||||||
use-input
|
use-input
|
||||||
:input-debounce="0"
|
:input-debounce="0"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Agency')"
|
:label="t('Agency')"
|
||||||
v-model="data.agencyModeFk"
|
v-model="data.agencyModeFk"
|
||||||
|
@ -174,39 +169,24 @@ const onSave = (data, response) => {
|
||||||
use-input
|
use-input
|
||||||
:input-debounce="0"
|
:input-debounce="0"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInputDate v-model="data.created" :label="t('Created')" />
|
<VnInputDate v-model="data.created" :label="t('Created')" />
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<template v-if="!isNew">
|
<template v-if="!isNew">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
<VnInput v-model="data.kmStart" :label="t('Km Start')" clearable />
|
||||||
<VnInput
|
|
||||||
v-model="data.kmStart"
|
|
||||||
:label="t('Km Start')"
|
|
||||||
clearable
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput v-model="data.kmEnd" :label="t('Km End')" clearable />
|
<VnInput v-model="data.kmEnd" :label="t('Km End')" clearable />
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInputTime
|
<VnInputTime
|
||||||
v-model="data.started"
|
v-model="data.started"
|
||||||
:label="t('Hour started')"
|
:label="t('Hour started')"
|
||||||
clearable
|
clearable
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInputTime
|
<VnInputTime
|
||||||
v-model="data.finished"
|
v-model="data.finished"
|
||||||
:label="t('Hour finished')"
|
:label="t('Hour finished')"
|
||||||
clearable
|
clearable
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col flex items-center">
|
<div class="col flex items-center">
|
||||||
<QCheckbox
|
<QCheckbox
|
||||||
size="sm"
|
size="sm"
|
||||||
|
@ -218,7 +198,6 @@ const onSave = (data, response) => {
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.description"
|
v-model="data.description"
|
||||||
:label="t('Description')"
|
:label="t('Description')"
|
||||||
|
@ -226,7 +205,6 @@ const onSave = (data, response) => {
|
||||||
:rows="3"
|
:rows="3"
|
||||||
clearable
|
clearable
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -41,34 +41,23 @@ const onSave = (data, response) => {
|
||||||
>
|
>
|
||||||
<template #form="{ data }">
|
<template #form="{ data }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput v-model="data.name" :label="t('Roadmap')" clearable />
|
<VnInput v-model="data.name" :label="t('Roadmap')" clearable />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInputDate v-model="data.etd" :label="t('ETD date')" />
|
<VnInputDate v-model="data.etd" :label="t('ETD date')" />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInputTime v-model="data.etd" :label="t('ETD hour')" />
|
<VnInputTime v-model="data.etd" :label="t('ETD hour')" />
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.tractorPlate"
|
v-model="data.tractorPlate"
|
||||||
:label="t('Tractor plate')"
|
:label="t('Tractor plate')"
|
||||||
clearable
|
clearable
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.trailerPlate"
|
v-model="data.trailerPlate"
|
||||||
:label="t('Trailer plate')"
|
:label="t('Trailer plate')"
|
||||||
clearable
|
clearable
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('Carrier')"
|
:label="t('Carrier')"
|
||||||
v-model="data.supplierFk"
|
v-model="data.supplierFk"
|
||||||
|
@ -90,36 +79,23 @@ const onSave = (data, response) => {
|
||||||
</QItem>
|
</QItem>
|
||||||
</template>
|
</template>
|
||||||
</VnSelect>
|
</VnSelect>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.price"
|
v-model="data.price"
|
||||||
:label="t('Price')"
|
:label="t('Price')"
|
||||||
type="number"
|
type="number"
|
||||||
clearable
|
clearable
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
<VnInput v-model="data.driverName" :label="t('Driver name')" clearable />
|
||||||
<VnInput
|
|
||||||
v-model="data.driverName"
|
|
||||||
:label="t('Driver name')"
|
|
||||||
clearable
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput v-model="data.phone" :label="t('Phone')" clearable />
|
<VnInput v-model="data.phone" :label="t('Phone')" clearable />
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.observations"
|
v-model="data.observations"
|
||||||
:label="t('Observations')"
|
:label="t('Observations')"
|
||||||
clearable
|
clearable
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -31,19 +31,13 @@ const onSave = (data, response) => {
|
||||||
>
|
>
|
||||||
<template #form="{ data }">
|
<template #form="{ data }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.name"
|
v-model="data.name"
|
||||||
:label="t('Roadmap')"
|
:label="t('Roadmap')"
|
||||||
clearable
|
clearable
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInputDate v-model="data.etd" :label="t('ETD date')" />
|
<VnInputDate v-model="data.etd" :label="t('ETD date')" />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInputTime v-model="data.etd" :label="t('ETD hour')" />
|
<VnInputTime v-model="data.etd" :label="t('ETD hour')" />
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -86,14 +86,11 @@ const onSave = (shelving, newShelving) => {
|
||||||
>
|
>
|
||||||
<template #form="{ data, validate, filter }">
|
<template #form="{ data, validate, filter }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.code"
|
v-model="data.code"
|
||||||
:label="t('shelving.basicData.code')"
|
:label="t('shelving.basicData.code')"
|
||||||
:rules="validate('Shelving.code')"
|
:rules="validate('Shelving.code')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QSelect
|
<QSelect
|
||||||
v-model="data.parkingFk"
|
v-model="data.parkingFk"
|
||||||
:options="parkingList"
|
:options="parkingList"
|
||||||
|
@ -109,24 +106,19 @@ const onSave = (shelving, newShelving) => {
|
||||||
:rules="validate('Shelving.parkingFk')"
|
:rules="validate('Shelving.parkingFk')"
|
||||||
:input-debounce="0"
|
:input-debounce="0"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.priority"
|
v-model="data.priority"
|
||||||
type="number"
|
type="number"
|
||||||
:label="t('shelving.basicData.priority')"
|
:label="t('shelving.basicData.priority')"
|
||||||
:rules="validate('Shelving.priority')"
|
:rules="validate('Shelving.priority')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QCheckbox
|
<QCheckbox
|
||||||
v-model="data.isRecyclable"
|
v-model="data.isRecyclable"
|
||||||
:label="t('shelving.basicData.recyclable')"
|
:label="t('shelving.basicData.recyclable')"
|
||||||
:rules="validate('Shelving.isRecyclable')"
|
:rules="validate('Shelving.isRecyclable')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -99,7 +99,6 @@ const setWireTransfer = async () => {
|
||||||
:key="index"
|
:key="index"
|
||||||
class="row q-gutter-md q-mb-md"
|
class="row q-gutter-md q-mb-md"
|
||||||
>
|
>
|
||||||
<div class="col">
|
|
||||||
<VnInput :label="t('supplier.accounts.iban')" v-model="row.iban">
|
<VnInput :label="t('supplier.accounts.iban')" v-model="row.iban">
|
||||||
<template #append>
|
<template #append>
|
||||||
<QIcon name="info" class="cursor-info">
|
<QIcon name="info" class="cursor-info">
|
||||||
|
@ -109,8 +108,6 @@ const setWireTransfer = async () => {
|
||||||
</QIcon>
|
</QIcon>
|
||||||
</template>
|
</template>
|
||||||
</VnInput>
|
</VnInput>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelectDialog
|
<VnSelectDialog
|
||||||
:label="t('worker.create.bankEntity')"
|
:label="t('worker.create.bankEntity')"
|
||||||
v-model="row.bankEntityFk"
|
v-model="row.bankEntityFk"
|
||||||
|
@ -139,8 +136,6 @@ const setWireTransfer = async () => {
|
||||||
</QItem>
|
</QItem>
|
||||||
</template>
|
</template>
|
||||||
</VnSelectDialog>
|
</VnSelectDialog>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('supplier.accounts.beneficiary')"
|
:label="t('supplier.accounts.beneficiary')"
|
||||||
v-model="row.beneficiary"
|
v-model="row.beneficiary"
|
||||||
|
@ -155,7 +150,6 @@ const setWireTransfer = async () => {
|
||||||
</QIcon>
|
</QIcon>
|
||||||
</template>
|
</template>
|
||||||
</VnInput>
|
</VnInput>
|
||||||
</div>
|
|
||||||
<div class="col-1 row justify-center items-center">
|
<div class="col-1 row justify-center items-center">
|
||||||
<QIcon
|
<QIcon
|
||||||
name="delete"
|
name="delete"
|
||||||
|
|
|
@ -79,21 +79,16 @@ function handleLocation(data, location) {
|
||||||
>
|
>
|
||||||
<template #form="{ data, validate }">
|
<template #form="{ data, validate }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.nickname"
|
v-model="data.nickname"
|
||||||
:label="t('supplier.addresses.name')"
|
:label="t('supplier.addresses.name')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.street"
|
v-model="data.street"
|
||||||
:label="t('supplier.addresses.street')"
|
:label="t('supplier.addresses.street')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnLocation
|
<VnLocation
|
||||||
:rules="validate('Worker.postcode')"
|
:rules="validate('Worker.postcode')"
|
||||||
:roles-allowed-to-create="['deliveryAssistant']"
|
:roles-allowed-to-create="['deliveryAssistant']"
|
||||||
|
@ -102,22 +97,18 @@ function handleLocation(data, location) {
|
||||||
@update:model-value="
|
@update:model-value="
|
||||||
(location) => handleLocation(data, location)
|
(location) => handleLocation(data, location)
|
||||||
"
|
"
|
||||||
></VnLocation>
|
>
|
||||||
</div>
|
</VnLocation>
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.phone"
|
v-model="data.phone"
|
||||||
:label="t('supplier.addresses.phone')"
|
:label="t('supplier.addresses.phone')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.mobile"
|
v-model="data.mobile"
|
||||||
:label="t('supplier.addresses.mobile')"
|
:label="t('supplier.addresses.mobile')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -54,7 +54,6 @@ const redirectToCreateView = () => {
|
||||||
:key="index"
|
:key="index"
|
||||||
class="row q-gutter-md q-mb-md"
|
class="row q-gutter-md q-mb-md"
|
||||||
>
|
>
|
||||||
<div class="col">
|
|
||||||
<QField :label="t('supplier.agencyTerms.agencyFk')" stack-label>
|
<QField :label="t('supplier.agencyTerms.agencyFk')" stack-label>
|
||||||
<template #control>
|
<template #control>
|
||||||
<div tabindex="0">
|
<div tabindex="0">
|
||||||
|
@ -62,49 +61,36 @@ const redirectToCreateView = () => {
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
</QField>
|
</QField>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('supplier.agencyTerms.minimumM3')"
|
:label="t('supplier.agencyTerms.minimumM3')"
|
||||||
v-model.number="row.minimumM3"
|
v-model.number="row.minimumM3"
|
||||||
type="number"
|
type="number"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('supplier.agencyTerms.packagePrice')"
|
:label="t('supplier.agencyTerms.packagePrice')"
|
||||||
v-model.number="row.packagePrice"
|
v-model.number="row.packagePrice"
|
||||||
type="number"
|
type="number"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('supplier.agencyTerms.kmPrice')"
|
:label="t('supplier.agencyTerms.kmPrice')"
|
||||||
v-model.number="row.kmPrice"
|
v-model.number="row.kmPrice"
|
||||||
type="number"
|
type="number"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('supplier.agencyTerms.m3Price')"
|
:label="t('supplier.agencyTerms.m3Price')"
|
||||||
v-model.number="row.m3Price"
|
v-model.number="row.m3Price"
|
||||||
type="number"
|
type="number"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('supplier.agencyTerms.routePrice')"
|
:label="t('supplier.agencyTerms.routePrice')"
|
||||||
v-model.number="row.routePrice"
|
v-model.number="row.routePrice"
|
||||||
type="number"
|
type="number"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('supplier.agencyTerms.minimumKm')"
|
:label="t('supplier.agencyTerms.minimumKm')"
|
||||||
v-model.number="row.minimumKm"
|
v-model.number="row.minimumKm"
|
||||||
type="number"
|
type="number"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col-1 row justify-center items-center">
|
<div class="col-1 row justify-center items-center">
|
||||||
<QIcon
|
<QIcon
|
||||||
name="delete"
|
name="delete"
|
||||||
|
|
|
@ -46,7 +46,6 @@ const onDataSaved = () => {
|
||||||
>
|
>
|
||||||
<template #form="{ data }">
|
<template #form="{ data }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('supplier.agencyTerms.agencyFk')"
|
:label="t('supplier.agencyTerms.agencyFk')"
|
||||||
v-model="data.agencyFk"
|
v-model="data.agencyFk"
|
||||||
|
@ -56,53 +55,40 @@ const onDataSaved = () => {
|
||||||
hide-selected
|
hide-selected
|
||||||
rounded
|
rounded
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('supplier.agencyTerms.minimumM3')"
|
:label="t('supplier.agencyTerms.minimumM3')"
|
||||||
v-model.number="data.minimumM3"
|
v-model.number="data.minimumM3"
|
||||||
type="number"
|
type="number"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('supplier.agencyTerms.packagePrice')"
|
:label="t('supplier.agencyTerms.packagePrice')"
|
||||||
v-model.number="data.packagePrice"
|
v-model.number="data.packagePrice"
|
||||||
type="number"
|
type="number"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('supplier.agencyTerms.kmPrice')"
|
:label="t('supplier.agencyTerms.kmPrice')"
|
||||||
v-model.number="data.kmPrice"
|
v-model.number="data.kmPrice"
|
||||||
type="number"
|
type="number"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('supplier.agencyTerms.m3Price')"
|
:label="t('supplier.agencyTerms.m3Price')"
|
||||||
v-model.number="data.m3Price"
|
v-model.number="data.m3Price"
|
||||||
type="number"
|
type="number"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('supplier.agencyTerms.routePrice')"
|
:label="t('supplier.agencyTerms.routePrice')"
|
||||||
v-model.number="data.routePrice"
|
v-model.number="data.routePrice"
|
||||||
type="number"
|
type="number"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('supplier.agencyTerms.minimumKm')"
|
:label="t('supplier.agencyTerms.minimumKm')"
|
||||||
v-model.number="data.minimumKm"
|
v-model.number="data.minimumKm"
|
||||||
type="number"
|
type="number"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -30,15 +30,12 @@ const workersOptions = ref([]);
|
||||||
>
|
>
|
||||||
<template #form="{ data, validate }">
|
<template #form="{ data, validate }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.nickname"
|
v-model="data.nickname"
|
||||||
:label="t('supplier.basicData.alias')"
|
:label="t('supplier.basicData.alias')"
|
||||||
:rules="validate('supplier.nickname')"
|
:rules="validate('supplier.nickname')"
|
||||||
clearable
|
clearable
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('supplier.basicData.workerFk')"
|
:label="t('supplier.basicData.workerFk')"
|
||||||
v-model="data.workerFk"
|
v-model="data.workerFk"
|
||||||
|
@ -67,37 +64,28 @@ const workersOptions = ref([]);
|
||||||
</QItem>
|
</QItem>
|
||||||
</template>
|
</template>
|
||||||
</VnSelect>
|
</VnSelect>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QCheckbox
|
<QCheckbox
|
||||||
v-model="data.isSerious"
|
v-model="data.isSerious"
|
||||||
:label="t('supplier.basicData.isSerious')"
|
:label="t('supplier.basicData.isSerious')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QCheckbox
|
<QCheckbox
|
||||||
v-model="data.isActive"
|
v-model="data.isActive"
|
||||||
:label="t('supplier.basicData.isActive')"
|
:label="t('supplier.basicData.isActive')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QCheckbox
|
<QCheckbox
|
||||||
v-model="data.isPayMethodChecked"
|
v-model="data.isPayMethodChecked"
|
||||||
:label="t('supplier.basicData.isPayMethodChecked')"
|
:label="t('supplier.basicData.isPayMethodChecked')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('supplier.basicData.note')"
|
:label="t('supplier.basicData.note')"
|
||||||
type="textarea"
|
type="textarea"
|
||||||
v-model="data.note"
|
v-model="data.note"
|
||||||
fill-input
|
fill-input
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -37,7 +37,6 @@ const formatPayDems = (data) => {
|
||||||
>
|
>
|
||||||
<template #form="{ data, validate }">
|
<template #form="{ data, validate }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('supplier.billingData.payMethodFk')"
|
:label="t('supplier.billingData.payMethodFk')"
|
||||||
v-model="data.payMethodFk"
|
v-model="data.payMethodFk"
|
||||||
|
@ -47,8 +46,6 @@ const formatPayDems = (data) => {
|
||||||
hide-selected
|
hide-selected
|
||||||
:rules="validate('supplier.payMethodFk')"
|
:rules="validate('supplier.payMethodFk')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('supplier.billingData.payDemFk')"
|
:label="t('supplier.billingData.payDemFk')"
|
||||||
v-model="data.payDemFk"
|
v-model="data.payDemFk"
|
||||||
|
@ -58,16 +55,13 @@ const formatPayDems = (data) => {
|
||||||
hide-selected
|
hide-selected
|
||||||
:rules="validate('supplier.payDemFk')"
|
:rules="validate('supplier.payDemFk')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('supplier.billingData.payDay')"
|
:label="t('supplier.billingData.payDay')"
|
||||||
type="number"
|
type="number"
|
||||||
v-model="data.payDay"
|
v-model="data.payDay"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -42,34 +42,25 @@ const insertRow = () => {
|
||||||
class="border q-pa-md q-mb-md"
|
class="border q-pa-md q-mb-md"
|
||||||
>
|
>
|
||||||
<VnRow class="row q-gutter-md">
|
<VnRow class="row q-gutter-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
input-name-focusable
|
input-name-focusable
|
||||||
:label="t('supplier.contacts.name')"
|
:label="t('supplier.contacts.name')"
|
||||||
v-model="row.name"
|
v-model="row.name"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('supplier.contacts.phone')"
|
:label="t('supplier.contacts.phone')"
|
||||||
v-model="row.phone"
|
v-model="row.phone"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('supplier.contacts.mobile')"
|
:label="t('supplier.contacts.mobile')"
|
||||||
v-model="row.mobile"
|
v-model="row.mobile"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('supplier.contacts.email')"
|
:label="t('supplier.contacts.email')"
|
||||||
v-model="row.email"
|
v-model="row.email"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md">
|
<VnRow class="row q-gutter-md">
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('supplier.contacts.observation')"
|
:label="t('supplier.contacts.observation')"
|
||||||
type="textarea"
|
type="textarea"
|
||||||
|
@ -77,7 +68,6 @@ const insertRow = () => {
|
||||||
fill-input
|
fill-input
|
||||||
autogrow
|
autogrow
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col-1 row justify-center items-center">
|
<div class="col-1 row justify-center items-center">
|
||||||
<QIcon
|
<QIcon
|
||||||
name="delete"
|
name="delete"
|
||||||
|
|
|
@ -57,30 +57,23 @@ function handleLocation(data, location) {
|
||||||
>
|
>
|
||||||
<template #form="{ data, validate }">
|
<template #form="{ data, validate }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.name"
|
v-model="data.name"
|
||||||
:label="t('supplier.fiscalData.name')"
|
:label="t('supplier.fiscalData.name')"
|
||||||
clearable
|
clearable
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.nif"
|
v-model="data.nif"
|
||||||
:label="t('supplier.fiscalData.nif')"
|
:label="t('supplier.fiscalData.nif')"
|
||||||
clearable
|
clearable
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.account"
|
v-model="data.account"
|
||||||
:label="t('supplier.fiscalData.account')"
|
:label="t('supplier.fiscalData.account')"
|
||||||
clearable
|
clearable
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('supplier.fiscalData.sageTaxTypeFk')"
|
:label="t('supplier.fiscalData.sageTaxTypeFk')"
|
||||||
v-model="data.sageTaxTypeFk"
|
v-model="data.sageTaxTypeFk"
|
||||||
|
@ -90,10 +83,8 @@ function handleLocation(data, location) {
|
||||||
hide-selected
|
hide-selected
|
||||||
map-options
|
map-options
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('supplier.fiscalData.sageWithholdingFk')"
|
:label="t('supplier.fiscalData.sageWithholdingFk')"
|
||||||
v-model="data.sageWithholdingFk"
|
v-model="data.sageWithholdingFk"
|
||||||
|
@ -103,8 +94,6 @@ function handleLocation(data, location) {
|
||||||
hide-selected
|
hide-selected
|
||||||
map-options
|
map-options
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('supplier.fiscalData.sageTransactionTypeFk')"
|
:label="t('supplier.fiscalData.sageTransactionTypeFk')"
|
||||||
v-model="data.sageTransactionTypeFk"
|
v-model="data.sageTransactionTypeFk"
|
||||||
|
@ -114,10 +103,8 @@ function handleLocation(data, location) {
|
||||||
hide-selected
|
hide-selected
|
||||||
map-options
|
map-options
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('supplier.fiscalData.supplierActivityFk')"
|
:label="t('supplier.fiscalData.supplierActivityFk')"
|
||||||
v-model="data.supplierActivityFk"
|
v-model="data.supplierActivityFk"
|
||||||
|
@ -127,26 +114,20 @@ function handleLocation(data, location) {
|
||||||
hide-selected
|
hide-selected
|
||||||
map-options
|
map-options
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.healthRegister"
|
v-model="data.healthRegister"
|
||||||
:label="t('supplier.fiscalData.healthRegister')"
|
:label="t('supplier.fiscalData.healthRegister')"
|
||||||
clearable
|
clearable
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.street"
|
v-model="data.street"
|
||||||
:label="t('supplier.fiscalData.street')"
|
:label="t('supplier.fiscalData.street')"
|
||||||
clearable
|
clearable
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnLocation
|
<VnLocation
|
||||||
:rules="validate('Worker.postcode')"
|
:rules="validate('Worker.postcode')"
|
||||||
:roles-allowed-to-create="['deliveryAssistant']"
|
:roles-allowed-to-create="['deliveryAssistant']"
|
||||||
|
@ -155,7 +136,6 @@ function handleLocation(data, location) {
|
||||||
@update:model-value="(location) => handleLocation(data, location)"
|
@update:model-value="(location) => handleLocation(data, location)"
|
||||||
>
|
>
|
||||||
</VnLocation>
|
</VnLocation>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col flex justify-around">
|
<div class="col flex justify-around">
|
||||||
|
|
|
@ -45,7 +45,6 @@ const redirectToSupplierFiscalData = (_, responseData) => {
|
||||||
>
|
>
|
||||||
<template #form="{ data }">
|
<template #form="{ data }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.name"
|
v-model="data.name"
|
||||||
:label="t('supplier.create.supplierName')"
|
:label="t('supplier.create.supplierName')"
|
||||||
|
@ -53,7 +52,6 @@ const redirectToSupplierFiscalData = (_, responseData) => {
|
||||||
newSupplierForm.name = newSupplierForm.name.toUpperCase()
|
newSupplierForm.name = newSupplierForm.name.toUpperCase()
|
||||||
"
|
"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -29,13 +29,7 @@ const agenciesOptions = ref([]);
|
||||||
>
|
>
|
||||||
<template #form="{ data }">
|
<template #form="{ data }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
<VnInput v-model="data.ref" :label="t('travel.basicData.reference')" />
|
||||||
<VnInput
|
|
||||||
v-model="data.ref"
|
|
||||||
:label="t('travel.basicData.reference')"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('travel.basicData.agency')"
|
:label="t('travel.basicData.agency')"
|
||||||
v-model="data.agencyModeFk"
|
v-model="data.agencyModeFk"
|
||||||
|
@ -45,24 +39,18 @@ const agenciesOptions = ref([]);
|
||||||
map-options
|
map-options
|
||||||
hide-selected
|
hide-selected
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInputDate
|
<VnInputDate
|
||||||
v-model="data.shipped"
|
v-model="data.shipped"
|
||||||
:label="t('travel.basicData.shipped')"
|
:label="t('travel.basicData.shipped')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInputDate
|
<VnInputDate
|
||||||
v-model="data.landed"
|
v-model="data.landed"
|
||||||
:label="t('travel.basicData.landed')"
|
:label="t('travel.basicData.landed')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('travel.basicData.warehouseOut')"
|
:label="t('travel.basicData.warehouseOut')"
|
||||||
v-model="data.warehouseOutFk"
|
v-model="data.warehouseOutFk"
|
||||||
|
@ -72,8 +60,6 @@ const agenciesOptions = ref([]);
|
||||||
map-options
|
map-options
|
||||||
hide-selected
|
hide-selected
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('travel.basicData.warehouseIn')"
|
:label="t('travel.basicData.warehouseIn')"
|
||||||
v-model="data.warehouseInFk"
|
v-model="data.warehouseInFk"
|
||||||
|
@ -83,21 +69,16 @@ const agenciesOptions = ref([]);
|
||||||
map-options
|
map-options
|
||||||
hide-selected
|
hide-selected
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QCheckbox
|
<QCheckbox
|
||||||
:label="t('travel.basicData.delivered')"
|
:label="t('travel.basicData.delivered')"
|
||||||
v-model="data.isDelivered"
|
v-model="data.isDelivered"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QCheckbox
|
<QCheckbox
|
||||||
:label="t('travel.basicData.received')"
|
:label="t('travel.basicData.received')"
|
||||||
v-model="data.isReceived"
|
v-model="data.isReceived"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -236,7 +236,6 @@ const onThermographCreated = async (data) => {
|
||||||
</Teleport>
|
</Teleport>
|
||||||
<QCard class="q-pa-lg">
|
<QCard class="q-pa-lg">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelectDialog
|
<VnSelectDialog
|
||||||
:label="t('travel.thermographs.thermograph')"
|
:label="t('travel.thermographs.thermograph')"
|
||||||
v-model="thermographForm.thermographId"
|
v-model="thermographForm.thermographId"
|
||||||
|
@ -252,22 +251,16 @@ const onThermographCreated = async (data) => {
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
</VnSelectDialog>
|
</VnSelectDialog>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="thermographForm.state"
|
v-model="thermographForm.state"
|
||||||
:label="t('travel.thermographs.state')"
|
:label="t('travel.thermographs.state')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="thermographForm.reference"
|
v-model="thermographForm.reference"
|
||||||
:label="t('travel.thermographs.reference')"
|
:label="t('travel.thermographs.reference')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('travel.thermographs.type')"
|
:label="t('travel.thermographs.type')"
|
||||||
v-model="thermographForm.dmsTypeId"
|
v-model="thermographForm.dmsTypeId"
|
||||||
|
@ -275,10 +268,8 @@ const onThermographCreated = async (data) => {
|
||||||
option-value="id"
|
option-value="id"
|
||||||
option-label="name"
|
option-label="name"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('travel.thermographs.company')"
|
:label="t('travel.thermographs.company')"
|
||||||
v-model="thermographForm.companyId"
|
v-model="thermographForm.companyId"
|
||||||
|
@ -286,8 +277,6 @@ const onThermographCreated = async (data) => {
|
||||||
option-value="id"
|
option-value="id"
|
||||||
option-label="code"
|
option-label="code"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('travel.thermographs.warehouse')"
|
:label="t('travel.thermographs.warehouse')"
|
||||||
v-model="thermographForm.warehouseId"
|
v-model="thermographForm.warehouseId"
|
||||||
|
@ -295,20 +284,16 @@ const onThermographCreated = async (data) => {
|
||||||
option-value="id"
|
option-value="id"
|
||||||
option-label="name"
|
option-label="name"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow v-if="viewAction === 'edit'" class="row q-gutter-md q-mb-md">
|
<VnRow v-if="viewAction === 'edit'" class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
:label="t('globals.description')"
|
:label="t('globals.description')"
|
||||||
type="textarea"
|
type="textarea"
|
||||||
v-model="thermographForm.description"
|
v-model="thermographForm.description"
|
||||||
fill-input
|
fill-input
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<QFile
|
<QFile
|
||||||
ref="inputFileRef"
|
ref="inputFileRef"
|
||||||
:label="t('travel.thermographs.file')"
|
:label="t('travel.thermographs.file')"
|
||||||
|
@ -333,7 +318,6 @@ const onThermographCreated = async (data) => {
|
||||||
</QIcon>
|
</QIcon>
|
||||||
</template>
|
</template>
|
||||||
</QFile>
|
</QFile>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</QCard>
|
</QCard>
|
||||||
</QForm>
|
</QForm>
|
||||||
|
|
|
@ -68,10 +68,7 @@ const redirectToTravelBasicData = (_, { id }) => {
|
||||||
>
|
>
|
||||||
<template #form="{ data }">
|
<template #form="{ data }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput v-model="data.ref" :label="t('globals.reference')" />
|
<VnInput v-model="data.ref" :label="t('globals.reference')" />
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('globals.agency')"
|
:label="t('globals.agency')"
|
||||||
v-model="data.agencyModeFk"
|
v-model="data.agencyModeFk"
|
||||||
|
@ -80,21 +77,12 @@ const redirectToTravelBasicData = (_, { id }) => {
|
||||||
option-label="name"
|
option-label="name"
|
||||||
hide-selected
|
hide-selected
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
<VnInputDate v-model="data.shipped" :label="t('globals.shipped')" />
|
||||||
<VnInputDate
|
|
||||||
v-model="data.shipped"
|
|
||||||
:label="t('globals.shipped')"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInputDate :label="t('globals.landed')" v-model="data.landed" />
|
<VnInputDate :label="t('globals.landed')" v-model="data.landed" />
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('globals.wareHouseOut')"
|
:label="t('globals.wareHouseOut')"
|
||||||
v-model="data.warehouseOutFk"
|
v-model="data.warehouseOutFk"
|
||||||
|
@ -103,8 +91,6 @@ const redirectToTravelBasicData = (_, { id }) => {
|
||||||
option-label="name"
|
option-label="name"
|
||||||
hide-selected
|
hide-selected
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('globals.wareHouseIn')"
|
:label="t('globals.wareHouseIn')"
|
||||||
v-model="data.warehouseInFk"
|
v-model="data.warehouseInFk"
|
||||||
|
@ -113,7 +99,6 @@ const redirectToTravelBasicData = (_, { id }) => {
|
||||||
option-label="name"
|
option-label="name"
|
||||||
hide-selected
|
hide-selected
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -92,7 +92,6 @@ function filterType(val, update) {
|
||||||
<QForm @submit="onSubmit()" @reset="onReset()" class="q-pa-sm">
|
<QForm @submit="onSubmit()" @reset="onReset()" class="q-pa-sm">
|
||||||
<QCard class="q-pa-md">
|
<QCard class="q-pa-md">
|
||||||
<div class="row q-col-gutter-md">
|
<div class="row q-col-gutter-md">
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
filled
|
filled
|
||||||
v-model="wagon.label"
|
v-model="wagon.label"
|
||||||
|
@ -101,8 +100,6 @@ function filterType(val, update) {
|
||||||
min="0"
|
min="0"
|
||||||
:rules="[(val) => !!val || t('wagon.warnings.labelNotEmpty')]"
|
:rules="[(val) => !!val || t('wagon.warnings.labelNotEmpty')]"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
filled
|
filled
|
||||||
v-model="wagon.plate"
|
v-model="wagon.plate"
|
||||||
|
@ -110,9 +107,7 @@ function filterType(val, update) {
|
||||||
:rules="[(val) => !!val || t('wagon.warnings.plateNotEmpty')]"
|
:rules="[(val) => !!val || t('wagon.warnings.plateNotEmpty')]"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<div class="row q-col-gutter-md">
|
<div class="row q-col-gutter-md">
|
||||||
<div class="col">
|
|
||||||
<QInput
|
<QInput
|
||||||
filled
|
filled
|
||||||
v-model="wagon.volume"
|
v-model="wagon.volume"
|
||||||
|
@ -123,8 +118,6 @@ function filterType(val, update) {
|
||||||
(val) => !!val || t('wagon.warnings.volumeNotEmpty'),
|
(val) => !!val || t('wagon.warnings.volumeNotEmpty'),
|
||||||
]"
|
]"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<QSelect
|
<QSelect
|
||||||
filled
|
filled
|
||||||
v-model="wagon.typeFk"
|
v-model="wagon.typeFk"
|
||||||
|
@ -157,7 +150,6 @@ function filterType(val, update) {
|
||||||
</template>
|
</template>
|
||||||
</QSelect>
|
</QSelect>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</QCard>
|
</QCard>
|
||||||
<div class="q-mt-md">
|
<div class="q-mt-md">
|
||||||
<QBtn :label="t('wagon.type.submit')" type="submit" color="primary" />
|
<QBtn :label="t('wagon.type.submit')" type="submit" color="primary" />
|
||||||
|
|
|
@ -57,13 +57,11 @@ const updateModelValue = (data) => {
|
||||||
>
|
>
|
||||||
<template #form="{}">
|
<template #form="{}">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('worker.summary.sipExtension')"
|
:label="t('worker.summary.sipExtension')"
|
||||||
v-model="extension"
|
v-model="extension"
|
||||||
@update:model-value="updateModelValue"
|
@update:model-value="updateModelValue"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
|
|
|
@ -108,92 +108,69 @@ onMounted(async () => {
|
||||||
>
|
>
|
||||||
<template #form="{ data, validate }">
|
<template #form="{ data, validate }">
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.firstName"
|
v-model="data.firstName"
|
||||||
:label="t('worker.create.name')"
|
:label="t('worker.create.name')"
|
||||||
:rules="validate('Worker.firstName')"
|
:rules="validate('Worker.firstName')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.lastNames"
|
v-model="data.lastNames"
|
||||||
:label="t('worker.create.lastName')"
|
:label="t('worker.create.lastName')"
|
||||||
:rules="validate('Worker.lastNames')"
|
:rules="validate('Worker.lastNames')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInputDate
|
<VnInputDate
|
||||||
v-model="data.birth"
|
v-model="data.birth"
|
||||||
:label="t('worker.create.birth')"
|
:label="t('worker.create.birth')"
|
||||||
:rules="validate('Worker.birth')"
|
:rules="validate('Worker.birth')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.fi"
|
v-model="data.fi"
|
||||||
:label="t('worker.create.fi')"
|
:label="t('worker.create.fi')"
|
||||||
:rules="validate('Worker.fi')"
|
:rules="validate('Worker.fi')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.code"
|
v-model="data.code"
|
||||||
:label="t('worker.create.code')"
|
:label="t('worker.create.code')"
|
||||||
:rules="validate('Worker.code')"
|
:rules="validate('Worker.code')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.phone"
|
v-model="data.phone"
|
||||||
:label="t('worker.create.phone')"
|
:label="t('worker.create.phone')"
|
||||||
:rules="validate('Worker.phone')"
|
:rules="validate('Worker.phone')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnLocation
|
<VnLocation
|
||||||
:rules="validate('Worker.postcode')"
|
:rules="validate('Worker.postcode')"
|
||||||
:roles-allowed-to-create="['deliveryAssistant']"
|
:roles-allowed-to-create="['deliveryAssistant']"
|
||||||
:options="postcodesOptions"
|
:options="postcodesOptions"
|
||||||
v-model="data.location"
|
v-model="data.location"
|
||||||
@update:model-value="
|
@update:model-value="(location) => handleLocation(data, location)"
|
||||||
(location) => handleLocation(data, location)
|
|
||||||
"
|
|
||||||
>
|
>
|
||||||
</VnLocation>
|
</VnLocation>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
:label="t('worker.create.street')"
|
:label="t('worker.create.street')"
|
||||||
v-model="data.street"
|
v-model="data.street"
|
||||||
:rules="validate('Worker.street')"
|
:rules="validate('Worker.street')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.name"
|
v-model="data.name"
|
||||||
:label="t('worker.create.webUser')"
|
:label="t('worker.create.webUser')"
|
||||||
:rules="validate('Worker.name')"
|
:rules="validate('Worker.name')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.email"
|
v-model="data.email"
|
||||||
:label="t('worker.create.personalEmail')"
|
:label="t('worker.create.personalEmail')"
|
||||||
:rules="validate('Worker.email')"
|
:rules="validate('Worker.email')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('worker.create.company')"
|
:label="t('worker.create.company')"
|
||||||
v-model="data.companyFk"
|
v-model="data.companyFk"
|
||||||
|
@ -203,8 +180,6 @@ onMounted(async () => {
|
||||||
hide-selected
|
hide-selected
|
||||||
:rules="validate('Worker.company')"
|
:rules="validate('Worker.company')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('worker.create.boss')"
|
:label="t('worker.create.boss')"
|
||||||
v-model="data.bossFk"
|
v-model="data.bossFk"
|
||||||
|
@ -226,10 +201,8 @@ onMounted(async () => {
|
||||||
</QItem>
|
</QItem>
|
||||||
</template>
|
</template>
|
||||||
</VnSelect>
|
</VnSelect>
|
||||||
</div>
|
|
||||||
</VnRow>
|
</VnRow>
|
||||||
<VnRow class="row q-gutter-md q-mb-md">
|
<VnRow class="row q-gutter-md q-mb-md">
|
||||||
<div class="col">
|
|
||||||
<VnSelect
|
<VnSelect
|
||||||
:label="t('worker.create.payMethods')"
|
:label="t('worker.create.payMethods')"
|
||||||
v-model="data.payMethodFk"
|
v-model="data.payMethodFk"
|
||||||
|
@ -240,9 +213,6 @@ onMounted(async () => {
|
||||||
hide-selected
|
hide-selected
|
||||||
:rules="validate('Worker.payMethodFk')"
|
:rules="validate('Worker.payMethodFk')"
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="col">
|
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.iban"
|
v-model="data.iban"
|
||||||
:label="t('worker.create.iban')"
|
:label="t('worker.create.iban')"
|
||||||
|
@ -250,13 +220,10 @@ onMounted(async () => {
|
||||||
>
|
>
|
||||||
<template #append>
|
<template #append>
|
||||||
<QIcon name="info" class="cursor-info">
|
<QIcon name="info" class="cursor-info">
|
||||||
<QTooltip>{{
|
<QTooltip>{{ t('components.iban_tooltip') }}</QTooltip>
|
||||||
t('components.iban_tooltip')
|
|
||||||
}}</QTooltip>
|
|
||||||
</QIcon>
|
</QIcon>
|
||||||
</template>
|
</template>
|
||||||
</VnInput>
|
</VnInput>
|
||||||
</div>
|
|
||||||
<VnSelectDialog
|
<VnSelectDialog
|
||||||
:label="t('worker.create.bankEntity')"
|
:label="t('worker.create.bankEntity')"
|
||||||
v-model="data.bankEntityFk"
|
v-model="data.bankEntityFk"
|
||||||
|
|
Loading…
Reference in New Issue