0
0
Fork 0
This commit is contained in:
Alex Moreno 2024-09-12 08:26:10 +02:00
commit 8bf7b729d4
6 changed files with 37 additions and 19 deletions

View File

@ -35,7 +35,7 @@ const itemComputed = computed(() => {
</QItemSection>
<QItemSection>
{{ t(itemComputed.title) }}
<QTooltip>
<QTooltip v-if="item.keyBinding">
{{ 'Ctrl + Alt + ' + item?.keyBinding?.toUpperCase() }}
</QTooltip>
</QItemSection>

View File

@ -19,7 +19,15 @@ watch(
</script>
<template>
<FetchData url="VnRoles" auto-load @on-fetch="(data) => (rolesOptions = data)" />
<FormModel ref="formModelRef" model="AccountPrivileges" url="VnUsers" auto-load>
<FormModel
ref="formModelRef"
model="AccountPrivileges"
url="VnUsers/preview"
:filter="{ where: { id: route.params.id } }"
:url-create="`VnUsers/${route.params.id}/privileges`"
:id="route.params.id"
auto-load
>
<template #form="{ data }">
<div class="q-gutter-y-sm">
<QCheckbox

View File

@ -45,7 +45,7 @@ async function onFetchClaim(data) {
const amount = ref();
const amountClaimed = ref();
async function onFetch(rows, newRows) {
function onFetch(rows, newRows) {
if (newRows) rows = newRows;
amount.value = 0;
amountClaimed.value = 0;
@ -155,7 +155,7 @@ function showImportDialog() {
async function saveWhenHasChanges() {
if (claimLinesForm.value.getChanges().updates) {
await claimLinesForm.value.onSubmit();
await claimLinesForm.value.reload();
onFetch(claimLinesForm.value.formData);
}
}
</script>
@ -211,7 +211,7 @@ async function saveWhenHasChanges() {
<template #body-cell-claimed="{ row }">
<QTd auto-width align="right" class="text-primary">
<QInput
v-model="row.quantity"
v-model.number="row.quantity"
type="number"
dense
@keyup.enter="saveWhenHasChanges()"
@ -266,7 +266,9 @@ async function saveWhenHasChanges() {
<template v-if="column.name === 'claimed'">
<QItemLabel class="text-primary">
<QInput
v-model="props.row.quantity"
v-model.number="
props.row.quantity
"
type="number"
dense
autofocus

View File

@ -94,8 +94,8 @@ const detailsColumns = ref([
{
name: 'total',
label: 'claim.total',
field: ({ sale }) =>
toCurrency(sale.quantity * sale.price * ((100 - sale.discount) / 100)),
field: (row) =>
toCurrency(row.quantity * row.sale.price * ((100 - row.sale.discount) / 100)),
sortable: true,
},
]);

View File

@ -1,17 +1,11 @@
<script setup>
import { useI18n } from 'vue-i18n';
import { useRoute } from 'vue-router';
import { computed } from 'vue';
import VnCard from 'components/common/VnCard.vue';
import TicketDescriptor from './TicketDescriptor.vue';
import TicketFilter from '../TicketFilter.vue';
const { t } = useI18n();
const route = useRoute();
const routeName = computed(() => route.name);
const customRouteRedirectName = computed(() => routeName.value);
</script>
<template>
<VnCard
@ -21,7 +15,7 @@ const customRouteRedirectName = computed(() => routeName.value);
:descriptor="TicketDescriptor"
search-data-key="TicketList"
:searchbar-props="{
customRouteRedirectName,
url: 'Tickets/filter',
label: t('card.search'),
info: t('card.searchInfo'),
}"

View File

@ -1,6 +1,7 @@
<script setup>
import axios from 'axios';
import { computed, ref, onMounted } from 'vue';
import { useRoute } from 'vue-router';
import { useStateStore } from 'stores/useStateStore';
import { useI18n } from 'vue-i18n';
import { toDate, toCurrency } from 'src/filters/index';
@ -24,8 +25,11 @@ const addressesOptions = ref([]);
const agenciesOptions = ref([]);
const selectedClient = ref();
const stateStore = useStateStore();
const route = useRoute();
const from = Date.vnNew();
from.setHours(0, 0, 0, 0);
const to = Date.vnNew();
to.setHours(23, 59, 0, 0);
to.setDate(to.getDate() + 1);
const userParams = {
@ -42,6 +46,16 @@ const initializeFromQuery = () => {
Object.assign(userParams, { from, to });
};
// Método para inicializar las variables desde la query string
const initializeFromQuery = () => {
const query = route.query.table ? JSON.parse(route.query.table) : {};
// Asigna los valores a las variables correspondientes
from.value = query.from || from.toISOString();
to.value = query.to || to.toISOString();
Object.assign(userParams, { from, to });
};
const columns = computed(() => [
{
align: 'left',
@ -219,18 +233,18 @@ onMounted(() => {
<template>
<VnSearchbar
data-key="Tickets"
data-key="Ticket"
:label="t('Search ticket')"
:info="t('You can search by ticket id or alias')"
/>
<RightMenu>
<template #right-panel>
<TicketFilter data-key="Tickets" />
<TicketFilter data-key="Ticket" />
</template>
</RightMenu>
<VnTable
ref="tableRef"
data-key="Tickets"
data-key="Ticket"
url="Tickets/filter"
:create="{
urlCreate: 'Tickets/new',
@ -239,7 +253,7 @@ onMounted(() => {
formInitialData: {},
}"
default-mode="table"
order="id DESC"
:order="['shippedDate DESC', 'shippedHour ASC', 'zoneLanding ASC', 'id']"
:columns="columns"
:user-params="userParams"
:right-search="false"