From 66555806f2646c483826b06d0889333083feec69 Mon Sep 17 00:00:00 2001 From: jorgep Date: Thu, 26 Dec 2024 17:49:21 +0100 Subject: [PATCH] feat: refs #7119 add VehicleCard, VehicleDescriptor, and VehicleSummary --- src/i18n/locale/en.yml | 2 + src/i18n/locale/es.yml | 2 + src/pages/Route/Vehicle/Card/VehicleCard.vue | 17 ++++++ .../Route/Vehicle/Card/VehicleDescriptor.vue | 31 +++++++++++ .../Route/Vehicle/Card/VehicleSummary.vue | 52 +++++++++++++++++++ src/pages/Route/Vehicle/VehicleSearchbar.vue | 1 - src/pages/Route/Vehicle/locale/en.yml | 2 + src/pages/Route/Vehicle/locale/es.yml | 2 + src/router/modules/index.js | 2 + src/router/modules/vehicle.js | 46 ++++++++++++++++ src/router/routes.js | 2 + 11 files changed, 158 insertions(+), 1 deletion(-) create mode 100644 src/pages/Route/Vehicle/Card/VehicleCard.vue create mode 100644 src/pages/Route/Vehicle/Card/VehicleDescriptor.vue create mode 100644 src/pages/Route/Vehicle/Card/VehicleSummary.vue create mode 100644 src/router/modules/vehicle.js diff --git a/src/i18n/locale/en.yml b/src/i18n/locale/en.yml index 5a2b5a214..4561c4f52 100644 --- a/src/i18n/locale/en.yml +++ b/src/i18n/locale/en.yml @@ -305,6 +305,7 @@ globals: operator: Operator parking: Parking vehicleList: Vehicles + vehicle: Vehicle supplier: Supplier created: Created worker: Worker @@ -351,6 +352,7 @@ globals: changeState: Change state raid: 'Raid {daysInForward} days' isVies: Vies + model: Model errors: statusUnauthorized: Access denied statusInternalServerError: An internal server error has ocurred diff --git a/src/i18n/locale/es.yml b/src/i18n/locale/es.yml index f25f286b1..05dda9eb4 100644 --- a/src/i18n/locale/es.yml +++ b/src/i18n/locale/es.yml @@ -309,6 +309,7 @@ globals: operator: Operario parking: Parking vehicleList: Vehículos + vehicle: Vehículo supplier: Proveedor created: Fecha creación worker: Trabajador @@ -353,6 +354,7 @@ globals: changeState: Cambiar estado raid: 'Redada {daysInForward} días' isVies: Vies + model: Modelo errors: statusUnauthorized: Acceso denegado statusInternalServerError: Ha ocurrido un error interno del servidor diff --git a/src/pages/Route/Vehicle/Card/VehicleCard.vue b/src/pages/Route/Vehicle/Card/VehicleCard.vue new file mode 100644 index 000000000..e05f1a8e1 --- /dev/null +++ b/src/pages/Route/Vehicle/Card/VehicleCard.vue @@ -0,0 +1,17 @@ + + diff --git a/src/pages/Route/Vehicle/Card/VehicleDescriptor.vue b/src/pages/Route/Vehicle/Card/VehicleDescriptor.vue new file mode 100644 index 000000000..62c11b949 --- /dev/null +++ b/src/pages/Route/Vehicle/Card/VehicleDescriptor.vue @@ -0,0 +1,31 @@ + + diff --git a/src/pages/Route/Vehicle/Card/VehicleSummary.vue b/src/pages/Route/Vehicle/Card/VehicleSummary.vue new file mode 100644 index 000000000..3a39e66b8 --- /dev/null +++ b/src/pages/Route/Vehicle/Card/VehicleSummary.vue @@ -0,0 +1,52 @@ + + diff --git a/src/pages/Route/Vehicle/VehicleSearchbar.vue b/src/pages/Route/Vehicle/VehicleSearchbar.vue index 6dd198883..6f8289b37 100644 --- a/src/pages/Route/Vehicle/VehicleSearchbar.vue +++ b/src/pages/Route/Vehicle/VehicleSearchbar.vue @@ -7,6 +7,5 @@ import VnSearchbar from 'components/ui/VnSearchbar.vue'; url="Vehicles/filter" :label="$t('vehicle.searchbar.label')" :info="$t('vehicle.searchbar.info')" - custom-route-redirect-name="ZoneSummary" /> diff --git a/src/pages/Route/Vehicle/locale/en.yml b/src/pages/Route/Vehicle/locale/en.yml index c505c9678..0cff34320 100644 --- a/src/pages/Route/Vehicle/locale/en.yml +++ b/src/pages/Route/Vehicle/locale/en.yml @@ -4,6 +4,8 @@ vehicle: chassis: Chassis leasing: Leasing isKmTruckRate: Trailer + countryCode: Country Code + delete: Delete Vehicle searchbar: label: Search Vehicle info: Search by id or number plate diff --git a/src/pages/Route/Vehicle/locale/es.yml b/src/pages/Route/Vehicle/locale/es.yml index 09a9d05c0..4b16885ea 100644 --- a/src/pages/Route/Vehicle/locale/es.yml +++ b/src/pages/Route/Vehicle/locale/es.yml @@ -4,6 +4,8 @@ vehicle: chassis: Número de bastidor leasing: Número de leasing isKmTruckRate: Trailer + countryCode: Código de país + delete: Eliminar vehículo searchbar: label: Buscar Vehículo info: Buscar por id o matrícula diff --git a/src/router/modules/index.js b/src/router/modules/index.js index f28fed1c2..9bb54f2b3 100644 --- a/src/router/modules/index.js +++ b/src/router/modules/index.js @@ -20,6 +20,7 @@ import ItemType from './itemType'; import Zone from './zone'; import Account from './account'; import Monitor from './monitor'; +import Vehicle from './vehicle'; export default [ Item, @@ -44,4 +45,5 @@ export default [ Zone, Account, Monitor, + Vehicle, ]; diff --git a/src/router/modules/vehicle.js b/src/router/modules/vehicle.js new file mode 100644 index 000000000..750f9395d --- /dev/null +++ b/src/router/modules/vehicle.js @@ -0,0 +1,46 @@ +import { RouterView } from 'vue-router'; + +export default { + path: '/vehicle', + name: 'Vehicle', + meta: { + title: 'vehicle', + icon: 'directions_car', + moduleName: 'Vehicle', + }, + component: RouterView, + redirect: { name: 'VehicleCard' }, + menus: { + main: [], + card: ['VehicleBasicData', 'VehicleLog'], + }, + children: [ + { + path: '/vehicle/:id', + name: 'VehicleCard', + component: () => import('src/pages/Route/Vehicle/Card/VehicleCard.vue'), + redirect: { name: 'VehicleSummary' }, + children: [ + { + name: 'VehicleSummary', + path: 'summary', + meta: { + title: 'summary', + icon: 'view_list', + }, + component: () => + import('src/pages/Route/Vehicle/Card/VehicleSummary.vue'), + }, + // { + // name: 'VehicleBasicData', + // path: 'basic-data', + // meta: { + // title: 'basicData', + // icon: 'vn:settings', + // }, + // component: () => import('pages/Route/Vehicle/Card/VehicleBasicData.vue'), + // }, + ], + }, + ], +}; diff --git a/src/router/routes.js b/src/router/routes.js index b9120f8c4..80773e3e9 100644 --- a/src/router/routes.js +++ b/src/router/routes.js @@ -20,6 +20,7 @@ import agency from 'src/router/modules/agency'; import zone from 'src/router/modules/zone'; import account from './modules/account'; import monitor from 'src/router/modules/monitor'; +import vehicle from 'src/router/modules/vehicle'; const routes = [ { @@ -93,6 +94,7 @@ const routes = [ ItemType, zone, account, + vehicle, { path: '/:catchAll(.*)*', name: 'NotFound',