@@ -19,7 +63,7 @@
Código: {{ vehicle.vehicle_code }}
Tipo de transporte: {{ vehicle.truck_type }}
Número de Serie: {{ vehicle.vehicle_number }}
- Segmento: {{ vehicle._categories }}
+ Segmento: {{vehicle.categories?.map((e) => e.name).join(', ')}}
Conductor:
{{ vehicle?.driver?.first_name }} {{ vehicle?.driver?.last_name }}
@@ -59,6 +103,7 @@
@@ -147,7 +226,7 @@
-
+ {{ errors.destino }}
@@ -163,7 +242,7 @@
+ class="btn-primary-sm radius-sm" type="submit">Guardar
diff --git a/src/components/DriverVehicleModal.vue b/src/components/DriverVehicleModal.vue
index c625db6..5106fed 100644
--- a/src/components/DriverVehicleModal.vue
+++ b/src/components/DriverVehicleModal.vue
@@ -42,8 +42,12 @@
let vehicleData ={
driver : driverSelected.value
}
+ let localData ={
+ driver : driverSelected.value,
+ categories: props.vehicle.categories
+ }
loading.value = true;
- const result = await vehicleStore.updateVehicleCompany(vehicle_id, vehicleData, vehicleData);
+ const result = await vehicleStore.updateVehicleCompany(vehicle_id, vehicleData, localData);
if( result === 'success' ) {
//Actualizamos el vehiculo
diff --git a/src/components/StatusVehicleModal.vue b/src/components/StatusVehicleModal.vue
index 349605c..4ee0789 100644
--- a/src/components/StatusVehicleModal.vue
+++ b/src/components/StatusVehicleModal.vue
@@ -62,7 +62,8 @@
}
}
let localData = {
- driver: props.vehicle.driver
+ driver: props.vehicle.driver,
+ categories: props.vehicle.categories
}
loading.value = true;
const result = await vehicleStore.updateVehicleCompany(props.vehicle._id, vehicleData, localData);
@@ -87,7 +88,6 @@
city: (!formAvailiable.city) ? 'Seleccione municipio' : null,
destino: (!formAvailiable.destino) ? 'Seleccione municipio destino' : null,
};
- console.log(errors.value);
}
diff --git a/src/helpers/date_formats.js b/src/helpers/date_formats.js
index b4d7559..5b04f04 100644
--- a/src/helpers/date_formats.js
+++ b/src/helpers/date_formats.js
@@ -47,9 +47,6 @@ export const getDateMonthDayEs = (value, isFull = false) => {
} else {
month = monthsAbr[date.getMonth()]
}
-
- console.log(date.getMonth());
-
return `${month} ${date.getDate()}, ${date.getFullYear()}`;
}
diff --git a/src/services/vehicles.js b/src/services/vehicles.js
index e6e9ace..ac07ceb 100644
--- a/src/services/vehicles.js
+++ b/src/services/vehicles.js
@@ -4,7 +4,6 @@ import api from "../lib/axios";
export const getVehicles = async(filter) => {
try {
const endpoint = `/vehicles/${filter}`;
- console.log('endpoint: ', endpoint);
const {data} = await api.get(endpoint);
return data;
} catch (error) {
@@ -16,12 +15,32 @@ export const getVehicles = async(filter) => {
export const updateVehicle = async(id, formData) => {
try {
const endpoint = `/vehicles/${id}`;
- console.log('endpoint: ', endpoint);
const {data} = await api.patch(endpoint, formData);
return data;
} catch (error) {
console.log(error);
- console.log(error.response);
+ return null;
+ }
+}
+
+export const deleteVehicle = async(id) => {
+ try {
+ const endpoint = `/vehicles/${id}`;
+ const {data} = await api.delete(endpoint);
+ return data;
+ } catch (error) {
+ console.log(error);
+ return null;
+ }
+}
+
+export const createVehicle = async(formData) => {
+ try {
+ const endpoint = `/vehicles/`;
+ const {data} = await api.post(endpoint, formData);
+ return data;
+ } catch (error) {
+ console.log(error);
return null;
}
}
diff --git a/src/stores/vehicles.js b/src/stores/vehicles.js
index 4c0198c..ed71faa 100644
--- a/src/stores/vehicles.js
+++ b/src/stores/vehicles.js
@@ -1,6 +1,6 @@
import { defineStore } from "pinia";
import { ref } from "vue";
-import { getVehicles, updateVehicle } from "../services/vehicles";
+import { createVehicle, deleteVehicle, getVehicles, updateVehicle } from "../services/vehicles";
export const useVehiclesStore = defineStore('vehicles', () => {
const vehicles = ref([]);
@@ -13,7 +13,6 @@ export const useVehiclesStore = defineStore('vehicles', () => {
if(cleanfilterArr.length > 0){
filterStr ="?"+cleanfilterArr.join("&");
}
- console.log(filterStr);
if(vehicles.value.length <= 0 || reload === true) {
const resp = await getVehicles(filterStr);
console.log(resp.data);
@@ -23,6 +22,19 @@ export const useVehiclesStore = defineStore('vehicles', () => {
}
}
+ const createVehicleCompany = async(formData, localData = {}) => {
+ const data = await createVehicle(formData);
+ if(data) {
+ vehicles.value.push({
+ ...data,
+ ...localData
+ });
+ return 'success';
+ } else {
+ return 'Algo salio mal, intente más tarde';
+ }
+ }
+
const updateVehicleCompany = async(id, formData, localData = {}) => {
const data = await updateVehicle(id, formData);
if(data) {
@@ -41,10 +53,23 @@ export const useVehiclesStore = defineStore('vehicles', () => {
}
}
+ const deleteVehicleCompany = async(id) => {
+ const data = await deleteVehicle(id);
+ if(data) {
+ vehicles.value = vehicles.value.filter(vehicle => vehicle._id !== id);
+ return 'success';
+ } else {
+ return 'Algo salio mal, intente más tarde';
+ }
+ }
+
+
return {
vehicles,
fetchVehicles,
- updateVehicleCompany
+ createVehicleCompany,
+ updateVehicleCompany,
+ deleteVehicleCompany
}
});
\ No newline at end of file