add: filter statue load in storeview
This commit is contained in:
@@ -221,6 +221,16 @@ td {
|
|||||||
gap: 1rem;
|
gap: 1rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.required {
|
||||||
|
/* color: #FBBA33; */
|
||||||
|
color: black;
|
||||||
|
}
|
||||||
|
|
||||||
|
.border-required {
|
||||||
|
border-radius: 5px;
|
||||||
|
border: 1px solid #FBBA33 !important;
|
||||||
|
}
|
||||||
|
|
||||||
@media (max-width: 1024px) {
|
@media (max-width: 1024px) {
|
||||||
th {
|
th {
|
||||||
font-size: 13px;
|
font-size: 13px;
|
||||||
|
|||||||
@@ -182,21 +182,21 @@
|
|||||||
:error="errors.address"
|
:error="errors.address"
|
||||||
/>
|
/>
|
||||||
<div class="mb-4 mt-3">
|
<div class="mb-4 mt-3">
|
||||||
<label class="custom-label">{{ t('directory.state')}}*</label>
|
<label class="custom-label required">{{ t('directory.state')}}*</label>
|
||||||
<States
|
<States
|
||||||
v-model="locationForm.state"
|
v-model="locationForm.state"
|
||||||
/>
|
/>
|
||||||
<span class="error-msg" v-if="errors.state">{{ errors.state }}</span>
|
<span class="error-msg" v-if="errors.state">{{ errors.state }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-4 mt-3">
|
<div class="mb-4 mt-3">
|
||||||
<label class="custom-label">{{ t('directory.city')}}*</label>
|
<label class="custom-label required">{{ t('directory.city')}}*</label>
|
||||||
<Cities
|
<Cities
|
||||||
v-model="locationForm.city"
|
v-model="locationForm.city"
|
||||||
/>
|
/>
|
||||||
<span class="error-msg" v-if="errors.city">{{ errors.city }}</span>
|
<span class="error-msg" v-if="errors.city">{{ errors.city }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="d-flex flex-column mb-4">
|
<div class="d-flex flex-column mb-4">
|
||||||
<label class="custom-label" for="role">{{ t('directory.typeDirectory') + '*'}}</label>
|
<label class="custom-label required" for="role">{{ t('directory.typeDirectory') + '*'}}</label>
|
||||||
<select
|
<select
|
||||||
class="custom-input-light"
|
class="custom-input-light"
|
||||||
name="type"
|
name="type"
|
||||||
|
|||||||
@@ -225,7 +225,7 @@
|
|||||||
v-if="userForm.job_role !== 'owner'"
|
v-if="userForm.job_role !== 'owner'"
|
||||||
class="d-flex flex-column"
|
class="d-flex flex-column"
|
||||||
>
|
>
|
||||||
<label class="custom-label" for="role">{{ t('labels.userRole') }}*</label>
|
<label class="custom-label required" for="role">{{ t('labels.userRole') }}*</label>
|
||||||
<select
|
<select
|
||||||
class="custom-input-light"
|
class="custom-input-light"
|
||||||
name="role"
|
name="role"
|
||||||
@@ -254,7 +254,7 @@
|
|||||||
<div v-if="userForm.job_role === 'warehouse'">
|
<div v-if="userForm.job_role === 'warehouse'">
|
||||||
<Spiner v-if="loadingWarehouses"/>
|
<Spiner v-if="loadingWarehouses"/>
|
||||||
<div class="d-flex flex-column my-4" v-if="!loadingWarehouses">
|
<div class="d-flex flex-column my-4" v-if="!loadingWarehouses">
|
||||||
<label class="custom-label" for="locationLoad">{{ t('labels.warehouses') }}*</label>
|
<label class="custom-label required" for="locationLoad">{{ t('labels.warehouses') }}*</label>
|
||||||
<select
|
<select
|
||||||
class="custom-input-light"
|
class="custom-input-light"
|
||||||
name="locationLoad"
|
name="locationLoad"
|
||||||
|
|||||||
@@ -163,14 +163,14 @@
|
|||||||
<form @submit.prevent="handleSaveVehicle" autocomplete="off" class="vehicle-form">
|
<form @submit.prevent="handleSaveVehicle" autocomplete="off" class="vehicle-form">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-lg-6 col-12 mt-4">
|
<div class="col-lg-6 col-12 mt-4">
|
||||||
<label class="custom-label">{{ t('directory.typeTruck') }}*</label>
|
<label class="custom-label required">{{ t('directory.typeTruck') }}*</label>
|
||||||
<TruckTypes
|
<TruckTypes
|
||||||
v-model="vehicleForm.truck_type"
|
v-model="vehicleForm.truck_type"
|
||||||
/>
|
/>
|
||||||
<span class="error-msg" v-if="errors.truck_type">{{ errors.truck_type }}</span>
|
<span class="error-msg" v-if="errors.truck_type">{{ errors.truck_type }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-lg-6 col-12 mt-4">
|
<div class="col-lg-6 col-12 mt-4">
|
||||||
<label class="custom-label">{{ t('vehicles.segments') }}*</label>
|
<label class="custom-label required">{{ t('vehicles.segments') }}*</label>
|
||||||
<Segments
|
<Segments
|
||||||
v-model="vehicleForm.categories"
|
v-model="vehicleForm.categories"
|
||||||
:multiple="true"
|
:multiple="true"
|
||||||
@@ -217,14 +217,14 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-lg-6 col-12 mb-4">
|
<div class="col-lg-6 col-12 mb-4">
|
||||||
<label class="custom-label">{{ t('labels.stateBase') }}*</label>
|
<label class="custom-label required">{{ t('labels.stateBase') }}*</label>
|
||||||
<States
|
<States
|
||||||
v-model="vehicleForm.state"
|
v-model="vehicleForm.state"
|
||||||
/>
|
/>
|
||||||
<span class="error-msg" v-if="errors.state">{{ errors.state }}</span>
|
<span class="error-msg" v-if="errors.state">{{ errors.state }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-lg-6 col-12 mb-4">
|
<div class="col-lg-6 col-12 mb-4">
|
||||||
<label class="custom-label">{{ t('labels.cityBase') }}*</label>
|
<label class="custom-label required">{{ t('labels.cityBase') }}*</label>
|
||||||
<Cities
|
<Cities
|
||||||
v-model="vehicleForm.city"
|
v-model="vehicleForm.city"
|
||||||
/>
|
/>
|
||||||
@@ -233,14 +233,14 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-lg-6 col-12 mb-4">
|
<div class="col-lg-6 col-12 mb-4">
|
||||||
<label class="custom-label">{{t('vehicles.destinationState')}}*</label>
|
<label class="custom-label required">{{t('vehicles.destinationState')}}*</label>
|
||||||
<States
|
<States
|
||||||
v-model="vehicleForm.destinoState"
|
v-model="vehicleForm.destinoState"
|
||||||
/>
|
/>
|
||||||
<span class="error-msg" v-if="errors.destinoState">{{ errors.destinoState }}</span>
|
<span class="error-msg" v-if="errors.destinoState">{{ errors.destinoState }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-lg-6 col-12 mb-4">
|
<div class="col-lg-6 col-12 mb-4">
|
||||||
<label class="custom-label">{{t('vehicles.destinationCity')}}*</label>
|
<label class="custom-label required">{{t('vehicles.destinationCity')}}*</label>
|
||||||
<Cities
|
<Cities
|
||||||
v-model="vehicleForm.destinoCity"
|
v-model="vehicleForm.destinoCity"
|
||||||
/>
|
/>
|
||||||
|
|||||||
@@ -385,14 +385,14 @@
|
|||||||
<div class="form-box">
|
<div class="form-box">
|
||||||
<div class="form-section">
|
<div class="form-section">
|
||||||
<div class="mb-4 mt-3">
|
<div class="mb-4 mt-3">
|
||||||
<label class="custom-label">{{ t('global.segment') }}*</label>
|
<label class="custom-label required">{{ t('global.segment') }}*</label>
|
||||||
<Segments
|
<Segments
|
||||||
v-model="formLoad.segment"
|
v-model="formLoad.segment"
|
||||||
/>
|
/>
|
||||||
<span class="error-msg" v-if="submited && errors.segment">{{ errors.segment }}</span>
|
<span class="error-msg" v-if="submited && errors.segment">{{ errors.segment }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-4 mt-3">
|
<div class="mb-4 mt-3">
|
||||||
<label class="custom-label">{{ t('directory.typeTruck') }}*</label>
|
<label class="custom-label required">{{ t('directory.typeTruck') }}*</label>
|
||||||
<TruckTypes
|
<TruckTypes
|
||||||
v-model="formLoad.truckType"
|
v-model="formLoad.truckType"
|
||||||
/>
|
/>
|
||||||
@@ -495,14 +495,14 @@
|
|||||||
v-model:field="origin.address"
|
v-model:field="origin.address"
|
||||||
/>
|
/>
|
||||||
<div class="mb-4 mt-3">
|
<div class="mb-4 mt-3">
|
||||||
<label class="custom-label">{{ t('global.city') }}*</label>
|
<label class="custom-label required">{{ t('global.city') }}*</label>
|
||||||
<Cities
|
<Cities
|
||||||
v-model="origin.city"
|
v-model="origin.city"
|
||||||
/>
|
/>
|
||||||
<span class="error-msg" v-if="submited && errors.cityOrigin">{{ errors.cityOrigin }}</span>
|
<span class="error-msg" v-if="submited && errors.cityOrigin">{{ errors.cityOrigin }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-4 mt-3">
|
<div class="mb-4 mt-3">
|
||||||
<label class="custom-label">{{ t('global.state') }}*</label>
|
<label class="custom-label required">{{ t('global.state') }}*</label>
|
||||||
<States
|
<States
|
||||||
v-model="origin.state"
|
v-model="origin.state"
|
||||||
/>
|
/>
|
||||||
@@ -566,14 +566,14 @@
|
|||||||
v-model:field="destination.address"
|
v-model:field="destination.address"
|
||||||
/>
|
/>
|
||||||
<div class="mb-4 mt-3">
|
<div class="mb-4 mt-3">
|
||||||
<label class="custom-label">{{t('global.city')}}*</label>
|
<label class="custom-label required">{{t('global.city')}}*</label>
|
||||||
<Cities
|
<Cities
|
||||||
v-model="destination.city"
|
v-model="destination.city"
|
||||||
/>
|
/>
|
||||||
<span class="error-msg" v-if="submited && errors.cityDestination">{{ errors.cityDestination }}</span>
|
<span class="error-msg" v-if="submited && errors.cityDestination">{{ errors.cityDestination }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-4 mt-3">
|
<div class="mb-4 mt-3">
|
||||||
<label class="custom-label">{{t('global.state')}}*</label>
|
<label class="custom-label required">{{t('global.state')}}*</label>
|
||||||
<States
|
<States
|
||||||
v-model="destination.state"
|
v-model="destination.state"
|
||||||
/>
|
/>
|
||||||
|
|||||||
@@ -19,6 +19,10 @@
|
|||||||
disabled: {
|
disabled: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: false
|
default: false
|
||||||
|
},
|
||||||
|
required: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
defineEmits(['update:selectedCities', 'clear-option'])
|
defineEmits(['update:selectedCities', 'clear-option'])
|
||||||
@@ -49,6 +53,9 @@
|
|||||||
:selectLabel="t('global.helpSelected')"
|
:selectLabel="t('global.helpSelected')"
|
||||||
:selectedLabel="t('global.selected')"
|
:selectedLabel="t('global.selected')"
|
||||||
:deselectLabel="t('global.removeSelected')"
|
:deselectLabel="t('global.removeSelected')"
|
||||||
|
:class="[
|
||||||
|
required ? 'border-required' : '',
|
||||||
|
]"
|
||||||
>
|
>
|
||||||
<template #noResult>
|
<template #noResult>
|
||||||
{{ t('global.notFound') }}
|
{{ t('global.notFound') }}
|
||||||
|
|||||||
@@ -48,10 +48,17 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="d-flex flex-column gap-2 mb-4">
|
<div class="d-flex flex-column gap-2 mb-4">
|
||||||
<label class="custom-label" :for="name">{{ label }}</label>
|
<label
|
||||||
|
class="custom-label"
|
||||||
|
:class="[label.includes('*') ? 'required' : '']"
|
||||||
|
:for="name"
|
||||||
|
>{{ label }}</label>
|
||||||
<input
|
<input
|
||||||
class="custom-input"
|
class="custom-input"
|
||||||
:class="[!filled ? 'custom-input-light' : '']"
|
:class="[
|
||||||
|
!filled ? 'custom-input-light' : '',
|
||||||
|
// label.includes('*') ? 'border-required' : ''
|
||||||
|
]"
|
||||||
:type="type"
|
:type="type"
|
||||||
:id="name"
|
:id="name"
|
||||||
:name="name"
|
:name="name"
|
||||||
@@ -77,6 +84,6 @@
|
|||||||
.error-msg {
|
.error-msg {
|
||||||
color: red;
|
color: red;
|
||||||
font-size: 12px;
|
font-size: 12px;
|
||||||
font-weight: 300;
|
font-weight: 400;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
@@ -19,6 +19,10 @@
|
|||||||
disabled: {
|
disabled: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: false
|
default: false
|
||||||
|
},
|
||||||
|
required: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
defineEmits(['update:selectedProduct', 'clear-option'])
|
defineEmits(['update:selectedProduct', 'clear-option'])
|
||||||
@@ -49,6 +53,9 @@
|
|||||||
:selectLabel="t('global.helpSelected')"
|
:selectLabel="t('global.helpSelected')"
|
||||||
:selectedLabel="t('global.selected')"
|
:selectedLabel="t('global.selected')"
|
||||||
:deselectLabel="t('global.removeSelected')"
|
:deselectLabel="t('global.removeSelected')"
|
||||||
|
:class="[
|
||||||
|
required ? 'border-required' : '',
|
||||||
|
]"
|
||||||
>
|
>
|
||||||
<template #noResult>
|
<template #noResult>
|
||||||
{{ t('global.notFound') }}
|
{{ t('global.notFound') }}
|
||||||
|
|||||||
@@ -15,6 +15,10 @@
|
|||||||
multiple: {
|
multiple: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: false
|
default: false
|
||||||
|
},
|
||||||
|
required: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
defineEmits(['update:selectedCategory', 'clear-option'])
|
defineEmits(['update:selectedCategory', 'clear-option'])
|
||||||
@@ -44,6 +48,9 @@
|
|||||||
:selectLabel="t('global.helpSelected')"
|
:selectLabel="t('global.helpSelected')"
|
||||||
:selectedLabel="t('global.selected')"
|
:selectedLabel="t('global.selected')"
|
||||||
:deselectLabel="t('global.removeSelected')"
|
:deselectLabel="t('global.removeSelected')"
|
||||||
|
:class="[
|
||||||
|
required ? 'border-required' : '',
|
||||||
|
]"
|
||||||
>
|
>
|
||||||
<template #noResult>
|
<template #noResult>
|
||||||
{{ t('global.notFound') }}
|
{{ t('global.notFound') }}
|
||||||
|
|||||||
@@ -15,6 +15,10 @@
|
|||||||
multiple: {
|
multiple: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: false
|
default: false
|
||||||
|
},
|
||||||
|
required: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
defineEmits(['update:selectedState', 'clear-option'])
|
defineEmits(['update:selectedState', 'clear-option'])
|
||||||
@@ -45,8 +49,9 @@
|
|||||||
:selectLabel="t('global.helpSelected')"
|
:selectLabel="t('global.helpSelected')"
|
||||||
:selectedLabel="t('global.selected')"
|
:selectedLabel="t('global.selected')"
|
||||||
:deselectLabel="t('global.removeSelected')"
|
:deselectLabel="t('global.removeSelected')"
|
||||||
|
:class="[
|
||||||
|
required ? 'border-required' : '',
|
||||||
|
]"
|
||||||
>
|
>
|
||||||
<template #noResult>
|
<template #noResult>
|
||||||
{{ t('global.notFound') }}
|
{{ t('global.notFound') }}
|
||||||
|
|||||||
@@ -19,6 +19,10 @@
|
|||||||
disabled: {
|
disabled: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: false
|
default: false
|
||||||
|
},
|
||||||
|
required: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
defineEmits(['update:selectedTruckType', 'clear-option'])
|
defineEmits(['update:selectedTruckType', 'clear-option'])
|
||||||
@@ -53,6 +57,9 @@
|
|||||||
:selectLabel="t('global.helpSelected')"
|
:selectLabel="t('global.helpSelected')"
|
||||||
:selectedLabel="t('global.selected')"
|
:selectedLabel="t('global.selected')"
|
||||||
:deselectLabel="t('global.removeSelected')"
|
:deselectLabel="t('global.removeSelected')"
|
||||||
|
:class="[
|
||||||
|
required ? 'border-required' : '',
|
||||||
|
]"
|
||||||
>
|
>
|
||||||
<template #noResult>
|
<template #noResult>
|
||||||
{{ t('global.notFound') }}
|
{{ t('global.notFound') }}
|
||||||
|
|||||||
@@ -73,6 +73,12 @@ const en = {
|
|||||||
originTruckKm1: "Truck origin to load origin(KM)",
|
originTruckKm1: "Truck origin to load origin(KM)",
|
||||||
originTruckKm2: "Loading origin to unloading destination(KM)",
|
originTruckKm2: "Loading origin to unloading destination(KM)",
|
||||||
destinationTruck1: "Unloading destination to base-yard(KM)",
|
destinationTruck1: "Unloading destination to base-yard(KM)",
|
||||||
|
alls: 'All',
|
||||||
|
published: 'Published',
|
||||||
|
loading: 'Loading',
|
||||||
|
transit: 'In transit',
|
||||||
|
downloading: 'Downloading',
|
||||||
|
delivered: 'Delivered',
|
||||||
},
|
},
|
||||||
buttons: {
|
buttons: {
|
||||||
enter: "Enter here",
|
enter: "Enter here",
|
||||||
|
|||||||
@@ -75,7 +75,13 @@ const es = {
|
|||||||
tonLoad: "Tonelaje aproximado de carga",
|
tonLoad: "Tonelaje aproximado de carga",
|
||||||
originTruckKm1: "Origen del camión al origin de carga(KM)",
|
originTruckKm1: "Origen del camión al origin de carga(KM)",
|
||||||
originTruckKm2: "Origen de carga a destino de descarga(KM)",
|
originTruckKm2: "Origen de carga a destino de descarga(KM)",
|
||||||
destinationTruck1: "Destino de descarga al patio-base(KM)"
|
destinationTruck1: "Destino de descarga al patio-base(KM)",
|
||||||
|
alls: 'Todos',
|
||||||
|
published: 'Publicado',
|
||||||
|
loading: 'Cargando',
|
||||||
|
transit: 'En transito',
|
||||||
|
downloading: 'Descargando',
|
||||||
|
delivered: 'Entregado',
|
||||||
},
|
},
|
||||||
buttons: {
|
buttons: {
|
||||||
enter: "Ingresa aqui",
|
enter: "Ingresa aqui",
|
||||||
|
|||||||
@@ -240,7 +240,7 @@
|
|||||||
v-model:field="company.rfc"
|
v-model:field="company.rfc"
|
||||||
/>
|
/>
|
||||||
<div class="mb-4">
|
<div class="mb-4">
|
||||||
<label class="custom-label">{{ t('labels.questionSegments') }} *</label>
|
<label class="custom-label required">{{ t('labels.questionSegments') }} *</label>
|
||||||
<Segments
|
<Segments
|
||||||
v-model="company.segments"
|
v-model="company.segments"
|
||||||
:multiple="true"
|
:multiple="true"
|
||||||
@@ -261,7 +261,7 @@
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-4">
|
<div class="mb-4">
|
||||||
<label class="custom-label">{{ t('labels.questionTrucks') }} *</label>
|
<label class="custom-label required">{{ t('labels.questionTrucks') }} *</label>
|
||||||
<TruckTypes
|
<TruckTypes
|
||||||
v-model="company.truckTypes"
|
v-model="company.truckTypes"
|
||||||
:multiple="true"
|
:multiple="true"
|
||||||
|
|||||||
@@ -6,6 +6,7 @@
|
|||||||
import { useLoadsStore } from '../../stores/loads';
|
import { useLoadsStore } from '../../stores/loads';
|
||||||
import { useAuthStore } from '../../stores/auth';
|
import { useAuthStore } from '../../stores/auth';
|
||||||
import Spiner from '../../components/ui/Spiner.vue';
|
import Spiner from '../../components/ui/Spiner.vue';
|
||||||
|
import CustomPopup from '../../components/CustomPopup.vue';
|
||||||
|
|
||||||
const authStore = useAuthStore();
|
const authStore = useAuthStore();
|
||||||
const loadStore = useLoadsStore();
|
const loadStore = useLoadsStore();
|
||||||
@@ -16,9 +17,19 @@
|
|||||||
const loadsFilters = ref([]);
|
const loadsFilters = ref([]);
|
||||||
const filterQuery = ref([]);
|
const filterQuery = ref([]);
|
||||||
const loading = ref(false);
|
const loading = ref(false);
|
||||||
|
const openPopup = ref(false);
|
||||||
|
const status = ref({value: 'all', label: 'Todos'});
|
||||||
|
const options = ref([]);
|
||||||
|
|
||||||
onMounted(async() => {
|
onMounted(async() => {
|
||||||
date.value = (new Date()).toISOString().substring(0, 10);
|
date.value = (new Date()).toISOString().substring(0, 10);
|
||||||
|
options.value = [
|
||||||
|
{value: 'all', label: t('labels.alls')},
|
||||||
|
{value: 'Published',label: t('labels.published')},
|
||||||
|
{value: 'Loading',label: t('labels.loading')},
|
||||||
|
{value: 'Transit',label: t('labels.transit')},
|
||||||
|
]
|
||||||
|
status.value = {value: 'all', label: t('labels.alls')};
|
||||||
await getDataLoads(false);
|
await getDataLoads(false);
|
||||||
})
|
})
|
||||||
|
|
||||||
@@ -58,13 +69,40 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
const handleDate = async () => {
|
const handleDate = async () => {
|
||||||
|
status.value = {value: 'all', label: t('labels.alls')};
|
||||||
await getDataLoads(true);
|
await getDataLoads(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const closePopup = () => {
|
||||||
|
openPopup.value = false
|
||||||
|
}
|
||||||
|
|
||||||
|
const changeStatus = (value) => {
|
||||||
|
status.value = value;
|
||||||
|
openPopup.value = false
|
||||||
|
if(value.value == 'all') {
|
||||||
|
loadsFilters.value = loadStore.loadsWarehouse;
|
||||||
|
} else {
|
||||||
|
loadsFilters.value = loadStore.loadsWarehouse.filter(
|
||||||
|
load => load.load_status.toLowerCase().includes(value.value.toLowerCase())
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
|
<div
|
||||||
|
v-if="openPopup"
|
||||||
|
>
|
||||||
|
<CustomPopup
|
||||||
|
:options="options"
|
||||||
|
:value="status"
|
||||||
|
@change-value="changeStatus"
|
||||||
|
@close-popup="closePopup"
|
||||||
|
selected-color="#e3a11e"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
<h2 class="title mb-4">{{ t('store.title') }}</h2>
|
<h2 class="title mb-4">{{ t('store.title') }}</h2>
|
||||||
<div class="box-filters">
|
<div class="box-filters">
|
||||||
<div class="box-search">
|
<div class="box-search">
|
||||||
@@ -78,7 +116,7 @@
|
|||||||
aria-label="Search"
|
aria-label="Search"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div class="date-filter">
|
||||||
<input
|
<input
|
||||||
placeholder="Fecha"
|
placeholder="Fecha"
|
||||||
type="date"
|
type="date"
|
||||||
@@ -87,6 +125,12 @@
|
|||||||
@change="handleDate($event)"
|
@change="handleDate($event)"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="status-filter"
|
||||||
|
@click="openPopup = true"
|
||||||
|
>
|
||||||
|
<span class="clear-sm">{{ status.label }}</span>
|
||||||
|
<i class="fa-solid fa-filter"></i>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div v-if="loading" class="d-flex justify-content-center">
|
<div v-if="loading" class="d-flex justify-content-center">
|
||||||
@@ -107,7 +151,7 @@
|
|||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
justify-content: end;
|
justify-content: end;
|
||||||
gap: 1rem;
|
gap: 0.5rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.box-search {
|
.box-search {
|
||||||
@@ -115,6 +159,18 @@
|
|||||||
flex: 1;
|
flex: 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.status-filter {
|
||||||
|
padding: 12px 8px;
|
||||||
|
background-color: #FFF;
|
||||||
|
border-radius: 5px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
border: 1px rgb(186, 175, 175) solid;
|
||||||
|
gap: 1rem;
|
||||||
|
align-items: center;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
.custom-search {
|
.custom-search {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
padding: 12px 20px;
|
padding: 12px 20px;
|
||||||
@@ -124,4 +180,20 @@
|
|||||||
background-color: white;
|
background-color: white;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
.box-filters {
|
||||||
|
gap: 0.2rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.date-filter input {
|
||||||
|
padding: 12px 8px;
|
||||||
|
width: 130px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.box-search {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
@@ -79,4 +79,8 @@
|
|||||||
font-size: 0.9rem;
|
font-size: 0.9rem;
|
||||||
color: #303233;
|
color: #303233;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
p {
|
||||||
|
font-size: 0.9rem;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
Reference in New Issue
Block a user