feat: refs #8277 add Entry Control page and update localization files
This commit is contained in:
parent
f8b41101d3
commit
7a1eb9bec6
|
@ -334,6 +334,7 @@ globals:
|
||||||
parking: Parking
|
parking: Parking
|
||||||
vehicleList: Vehicles
|
vehicleList: Vehicles
|
||||||
vehicle: Vehicle
|
vehicle: Vehicle
|
||||||
|
entryControl: Entry control
|
||||||
unsavedPopup:
|
unsavedPopup:
|
||||||
title: Unsaved changes will be lost
|
title: Unsaved changes will be lost
|
||||||
subtitle: Are you sure exit without saving?
|
subtitle: Are you sure exit without saving?
|
||||||
|
|
|
@ -334,6 +334,7 @@ globals:
|
||||||
parking: Parking
|
parking: Parking
|
||||||
vehicleList: Vehículos
|
vehicleList: Vehículos
|
||||||
vehicle: Vehículo
|
vehicle: Vehículo
|
||||||
|
entryControl: Control de entradas
|
||||||
unsavedPopup:
|
unsavedPopup:
|
||||||
title: Los cambios que no haya guardado se perderán
|
title: Los cambios que no haya guardado se perderán
|
||||||
subtitle: ¿Seguro que quiere salir sin guardar?
|
subtitle: ¿Seguro que quiere salir sin guardar?
|
||||||
|
@ -653,7 +654,7 @@ supplier:
|
||||||
tableVisibleColumns:
|
tableVisibleColumns:
|
||||||
nif: NIF/CIF
|
nif: NIF/CIF
|
||||||
account: Cuenta
|
account: Cuenta
|
||||||
|
|
||||||
summary:
|
summary:
|
||||||
responsible: Responsable
|
responsible: Responsable
|
||||||
verified: Verificado
|
verified: Verificado
|
||||||
|
|
|
@ -0,0 +1,146 @@
|
||||||
|
<script setup>
|
||||||
|
import { ref, computed, markRaw } from 'vue';
|
||||||
|
import VnTable from 'src/components/VnTable/VnTable.vue';
|
||||||
|
import { useI18n } from 'vue-i18n';
|
||||||
|
import FetchData from 'src/components/FetchData.vue';
|
||||||
|
import VnSelectSupplier from 'src/components/common/VnSelectSupplier.vue';
|
||||||
|
|
||||||
|
const { t } = useI18n();
|
||||||
|
const companies = ref([]);
|
||||||
|
const countries = ref([]);
|
||||||
|
const columns = computed(() => [
|
||||||
|
{
|
||||||
|
name: 'supplierFk',
|
||||||
|
label: t('globals.supplier'),
|
||||||
|
format: (row) => row.supplierFk,
|
||||||
|
columnFilter: {
|
||||||
|
component: markRaw(VnSelectSupplier),
|
||||||
|
label: null,
|
||||||
|
name: 'supplierFk',
|
||||||
|
url: 'Suppliers',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'companyFk',
|
||||||
|
label: t('globals.company'),
|
||||||
|
columnFilter: {
|
||||||
|
component: 'select',
|
||||||
|
name: 'companyFk',
|
||||||
|
options: companies.value,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'gestDocFk',
|
||||||
|
label: t('entry.gestDocFk'),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'dmsType',
|
||||||
|
label: t('entry.dmsType'),
|
||||||
|
format: (row) => row.dmsType,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'invoiceNumber',
|
||||||
|
label: t('entry.invoiceNumber'),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'reference',
|
||||||
|
label: t('entry.reference'),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'shipped',
|
||||||
|
label: t('entry.shipped'),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'dated',
|
||||||
|
label: t('entry.dated'),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'id',
|
||||||
|
label: t('entry.id'),
|
||||||
|
isId: true,
|
||||||
|
chip: {
|
||||||
|
condition: () => true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'invoiceInFk',
|
||||||
|
label: t('entry.invoiceInFk'),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'country',
|
||||||
|
label: t('globals.country'),
|
||||||
|
format: (row) => row.country,
|
||||||
|
columnFilter: {
|
||||||
|
component: 'select',
|
||||||
|
name: 'country',
|
||||||
|
options: countries.value,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'description',
|
||||||
|
label: t('globals.description'),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'payDem',
|
||||||
|
label: t('entry.payDem'),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'amount',
|
||||||
|
label: t('amount'),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'isBooked',
|
||||||
|
label: t('entry.isBooked'),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'received',
|
||||||
|
label: t('entry.received'),
|
||||||
|
},
|
||||||
|
// {
|
||||||
|
// name: 'travelFk',
|
||||||
|
// label: t('entry.travelFk'),
|
||||||
|
// },
|
||||||
|
// {
|
||||||
|
// name: 'landed',
|
||||||
|
// label: t('entry.landed'),
|
||||||
|
// },
|
||||||
|
// {
|
||||||
|
// name: 'agencyMode',
|
||||||
|
// label: t('entry.agencyMode'),
|
||||||
|
// format: (row) => row.agencyMode,
|
||||||
|
// },
|
||||||
|
// {
|
||||||
|
// name: 'isAgricultural',
|
||||||
|
// label: t('entry.isAgricultural'),
|
||||||
|
// },
|
||||||
|
// {
|
||||||
|
// name: 'account',
|
||||||
|
// label: t('globals.account'),
|
||||||
|
// },
|
||||||
|
// {
|
||||||
|
// name: 'nickname',
|
||||||
|
// label: t('globals.nickname'),
|
||||||
|
// },
|
||||||
|
]);
|
||||||
|
</script>
|
||||||
|
<template>
|
||||||
|
<FetchData
|
||||||
|
url="Countries"
|
||||||
|
:filter="{ fields: ['id', 'name'] }"
|
||||||
|
@on-fetch="(data) => (countries.value = data)"
|
||||||
|
auto-load
|
||||||
|
/>
|
||||||
|
<FetchData
|
||||||
|
url="Companies"
|
||||||
|
:filter="{ fields: ['id', 'name'] }"
|
||||||
|
@on-fetch="(data) => (companies.value = data)"
|
||||||
|
auto-load
|
||||||
|
/>
|
||||||
|
<VnTable
|
||||||
|
data-key="entryControl"
|
||||||
|
url="Entries/control"
|
||||||
|
:columns
|
||||||
|
auto-load
|
||||||
|
:right-search="false"
|
||||||
|
/>
|
||||||
|
</template>
|
|
@ -6,13 +6,7 @@ const entryCard = {
|
||||||
component: () => import('src/pages/Entry/Card/EntryCard.vue'),
|
component: () => import('src/pages/Entry/Card/EntryCard.vue'),
|
||||||
redirect: { name: 'EntrySummary' },
|
redirect: { name: 'EntrySummary' },
|
||||||
meta: {
|
meta: {
|
||||||
menu: [
|
menu: ['EntryBasicData', 'EntryBuys', 'EntryNotes', 'EntryDms', 'EntryLog'],
|
||||||
'EntryBasicData',
|
|
||||||
'EntryBuys',
|
|
||||||
'EntryNotes',
|
|
||||||
'EntryDms',
|
|
||||||
'EntryLog',
|
|
||||||
],
|
|
||||||
},
|
},
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
|
@ -91,7 +85,8 @@ export default {
|
||||||
'EntryLatestBuys',
|
'EntryLatestBuys',
|
||||||
'EntryStockBought',
|
'EntryStockBought',
|
||||||
'EntryWasteRecalc',
|
'EntryWasteRecalc',
|
||||||
]
|
'EntryControl',
|
||||||
|
],
|
||||||
},
|
},
|
||||||
component: RouterView,
|
component: RouterView,
|
||||||
redirect: { name: 'EntryMain' },
|
redirect: { name: 'EntryMain' },
|
||||||
|
@ -103,7 +98,7 @@ export default {
|
||||||
redirect: { name: 'EntryIndexMain' },
|
redirect: { name: 'EntryIndexMain' },
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
path:'',
|
path: '',
|
||||||
name: 'EntryIndexMain',
|
name: 'EntryIndexMain',
|
||||||
redirect: { name: 'EntryList' },
|
redirect: { name: 'EntryList' },
|
||||||
component: () => import('src/pages/Entry/EntryList.vue'),
|
component: () => import('src/pages/Entry/EntryList.vue'),
|
||||||
|
@ -127,7 +122,7 @@ export default {
|
||||||
icon: 'add',
|
icon: 'add',
|
||||||
},
|
},
|
||||||
component: () => import('src/pages/Entry/EntryCreate.vue'),
|
component: () => import('src/pages/Entry/EntryCreate.vue'),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'my',
|
path: 'my',
|
||||||
name: 'MyEntries',
|
name: 'MyEntries',
|
||||||
|
@ -164,7 +159,16 @@ export default {
|
||||||
},
|
},
|
||||||
component: () => import('src/pages/Entry/EntryWasteRecalc.vue'),
|
component: () => import('src/pages/Entry/EntryWasteRecalc.vue'),
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: 'control',
|
||||||
|
name: 'EntryControl',
|
||||||
|
meta: {
|
||||||
|
title: 'entryControl',
|
||||||
|
icon: 'help',
|
||||||
|
},
|
||||||
|
component: () => import('src/pages/Entry/EntryControl.vue'),
|
||||||
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in New Issue