feat: refs #7385 add delivered and estimated info in routeTicket

This commit is contained in:
Jose Antonio Tubau 2025-04-23 11:44:33 +02:00
parent 2f20abf388
commit c3f60c68bc
2 changed files with 37 additions and 102 deletions

View File

@ -281,61 +281,3 @@ const ticketColumns = ref([
</CardSummary>
</div>
</template>
<i18n>
en:
route:
summary:
date: Date
agency: Agency
vehicle: Vehicle
driver: Driver
cost: Cost
started: Started time
finished: Finished time
kmStart: Km start
kmEnd: Km end
volume: Volume
packages: Packages
description: Description
tickets: Tickets
order: Order
street: Street
city: City
pc: PC
client: Client
state: State
m3:
packaging: Packaging
ticket: Ticket
closed: Closed
open: Open
yes: Yes
no: No
es:
route:
summary:
date: Fecha
agency: Agencia
vehicle: Vehículo
driver: Conductor
cost: Costo
started: Hora inicio
finished: Hora fin
kmStart: Km inicio
kmEnd: Km fin
volume: Volumen
packages: Bultos
description: Descripción
tickets: Tickets
order: Orden
street: Dirección fiscal
city: Población
pc: CP
client: Cliente
state: Estado
packaging: Encajado
closed: Cerrada
open: Abierta
yes:
no: No
</i18n>

View File

@ -24,49 +24,63 @@ const selectedRows = ref([]);
const columns = computed(() => [
{
name: 'order',
label: t('Order'),
label: t('route.ticket.order'),
field: (row) => dashIfEmpty(row?.priority),
sortable: false,
align: 'center',
},
{
name: 'client',
label: t('Client'),
label: t('route.ticket.client'),
field: (row) => row?.nickname,
sortable: false,
align: 'left',
},
{
name: 'street',
label: t('Street'),
label: t('route.ticket.street'),
field: (row) => row?.street,
sortable: false,
align: 'left',
},
{
name: 'pc',
label: t('PC'),
label: t('route.ticket.PC'),
field: (row) => row?.postalCode,
sortable: false,
align: 'center',
},
{
name: 'city',
label: t('City'),
label: t('route.ticket.city'),
field: (row) => row?.city,
sortable: false,
align: 'left',
},
{
name: 'warehouse',
label: t('Warehouse'),
label: t('route.ticket.warehouse'),
field: (row) => row?.warehouseName,
sortable: false,
align: 'left',
},
{
name: 'delivered',
label: t('route.ticket.delivered'),
field: (row) => dashIfEmpty(row?.delivered),
sortable: false,
align: 'left',
},
{
name: 'estimated',
label: t('route.ticket.estimated'),
field: (row) => dashIfEmpty(row?.estimated),
sortable: false,
align: 'left',
},
{
name: 'packages',
label: t('Packages'),
label: t('route.ticket.packages'),
field: (row) => row?.packages,
sortable: false,
align: 'center',
@ -80,14 +94,14 @@ const columns = computed(() => [
},
{
name: 'packaging',
label: t('Packaging'),
label: t('route.ticket.packaging'),
field: (row) => row?.ipt,
sortable: false,
align: 'center',
},
{
name: 'ticket',
label: t('Ticket'),
label: t('route.ticket.ticket'),
field: (row) => row?.id,
sortable: false,
align: 'center',
@ -188,8 +202,8 @@ const confirmRemove = (ticket) => {
.dialog({
component: VnConfirm,
componentProps: {
title: t('Confirm removal from route'),
message: t('Are you sure you want to remove this ticket from the route?'),
title: t('route.ticket.confirmRemoval'),
message: t('route.ticket.confirmRemovalConfirmation'),
promise: () => removeTicket(ticket),
},
})
@ -219,7 +233,7 @@ const openSmsDialog = async () => {
quasar.dialog({
component: SendSmsDialog,
componentProps: {
title: t('Send SMS to the selected tickets'),
title: t('route.ticket.sendSmsTickets'),
url: 'Routes/sendSms',
destinationFk: clientsId.toString(),
destination: clientsPhone.toString(),
@ -240,18 +254,18 @@ const openSmsDialog = async () => {
<QDialog v-model="confirmationDialog">
<QCard style="min-width: 350px">
<QCardSection>
<p class="text-h6 q-ma-none">{{ t('Select the starting date') }}</p>
<p class="text-h6 q-ma-none">{{ t('route.ticket.selectStartingDate') }}</p>
</QCardSection>
<QCardSection class="q-pt-none">
<VnInputDate
:label="t('Stating date')"
:label="t('route.ticket.startingDate')"
v-model="startingDate"
autofocus
/>
</QCardSection>
<QCardActions align="right">
<QBtn flat :label="t('Cancel')" v-close-popup class="text-primary" />
<QBtn flat :label="t('globals.cancel')" v-close-popup class="text-primary" />
<QBtn color="primary" v-close-popup @click="cloneRoutes">
{{ t('globals.clone') }}
</QBtn>
@ -262,7 +276,7 @@ const openSmsDialog = async () => {
<QToolbar class="justify-end">
<div id="st-actions" class="q-pa-sm">
<QBtn icon="vn:wand" color="primary" class="q-mr-sm" @click="sortRoutes">
<QTooltip>{{ t('Sort routes') }}</QTooltip>
<QTooltip>{{ t('route.ticket.sortRoutes') }}</QTooltip>
</QBtn>
<QBtn
icon="vn:buscaman"
@ -271,7 +285,7 @@ const openSmsDialog = async () => {
:disable="!selectedRows?.length"
@click="goToBuscaman()"
>
<QTooltip>{{ t('Open buscaman') }}</QTooltip>
<QTooltip>{{ t('route.ticket.openBuscaman') }}</QTooltip>
</QBtn>
<QBtn
icon="filter_alt"
@ -280,7 +294,7 @@ const openSmsDialog = async () => {
:disable="!selectedRows?.length"
@click="deletePriorities"
>
<QTooltip>{{ t('Delete priority') }}</QTooltip>
<QTooltip>{{ t('route.ticket.deletePriority') }}</QTooltip>
</QBtn>
<QBtn
icon="format_list_numbered"
@ -290,7 +304,7 @@ const openSmsDialog = async () => {
>
<QTooltip
>{{
t('Renumber all tickets in the order you see on the screen')
t('route.ticket.renumberAllTickets')
}}
</QTooltip>
</QBtn>
@ -301,7 +315,7 @@ const openSmsDialog = async () => {
:disable="!selectedRows?.length"
@click="openSmsDialog"
>
<QTooltip>{{ t('Send SMS to all clients') }}</QTooltip>
<QTooltip>{{ t('route.ticket.sendSmsClients') }}</QTooltip>
</QBtn>
</div>
</QToolbar>
@ -339,7 +353,7 @@ const openSmsDialog = async () => {
@click="setHighestPriority(row, rows)"
>
<QTooltip>
{{ t('Assign highest priority') }}
{{ t('route.ticket.assignHighestPriority') }}
</QTooltip>
</QIcon>
<VnInput
@ -354,7 +368,7 @@ const openSmsDialog = async () => {
<QTd>
<span class="link" @click="goToBuscaman(row)">
{{ value }}
<QTooltip>{{ t('Open buscaman') }}</QTooltip>
<QTooltip>{{ t('route.ticket.openBuscaman') }}</QTooltip>
</span>
</QTd>
</template>
@ -411,7 +425,7 @@ const openSmsDialog = async () => {
@click="openTicketsDialog"
>
<QTooltip>
{{ t('Add ticket') }}
{{ t('route.ticket.addTicket') }}
</QTooltip>
</QBtn>
</QPageSticky>
@ -432,24 +446,3 @@ const openSmsDialog = async () => {
gap: 12px;
}
</style>
<i18n>
es:
Order: Orden
Street: Dirección fiscal
City: Población
PC: CP
Client: Cliente
Warehouse: Almacén
Packages: Bultos
Packaging: Encajado
Confirm removal from route: Quitar de la ruta
Are you sure you want to remove this ticket from the route?: ¿Seguro que quieres quitar este ticket de la ruta?
Sort routes: Ordenar rutas
Open buscaman: Abrir buscaman
Delete priority: Borrar orden
Renumber all tickets in the order you see on the screen: Renumerar todos los tickets con el orden que ves por pantalla
Assign highest priority: Asignar máxima prioridad
Send SMS to all clients: Mandar sms a todos los clientes de las rutas
Send SMS to the selected tickets: Enviar SMS a los tickets seleccionados
Add ticket: Añadir ticket
</i18n>