WIP: 6897-entryBuyListRefactor #860
|
@ -962,8 +962,6 @@ const checkbox = ref(null);
|
|||
component-prop="columnCreate"
|
||||
/>
|
||||
</slot>
|
||||
</div>
|
||||
<div>
|
||||
<slot name="more-create-dialog" :data="data" />
|
||||
</div>
|
||||
</div>
|
||||
|
@ -1035,7 +1033,7 @@ es:
|
|||
|
||||
.grid-three {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(auto-fit, minmax(350px, max-content));
|
||||
grid-template-columns: repeat(auto-fit, minmax(150px, max-content));
|
||||
max-width: 100%;
|
||||
grid-gap: 20px;
|
||||
margin: 0 auto;
|
||||
|
|
|
@ -1,11 +1,25 @@
|
|||
<script setup>
|
||||
import { computed } from 'vue';
|
||||
|
||||
const model = defineModel({ type: [Number, Boolean] });
|
||||
if (typeof model.value === 'number') {
|
||||
if (model.value === null) model.value = null;
|
||||
if (model.value !== 0) model.value = true;
|
||||
else model.value = false;
|
||||
}
|
||||
|
||||
const checkboxModel = computed({
|
||||
get() {
|
||||
if (typeof model.value === 'number') {
|
||||
return model.value !== 0;
|
||||
}
|
||||
return model.value;
|
||||
},
|
||||
set(value) {
|
||||
if (typeof model.value === 'number') {
|
||||
model.value = value ? 1 : 0;
|
||||
} else {
|
||||
model.value = value;
|
||||
}
|
||||
},
|
||||
});
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<QCheckbox v-bind="$attrs" v-model="model" />
|
||||
<QCheckbox v-bind="$attrs" v-model="checkboxModel" />
|
||||
</template>
|
||||
|
|
|
@ -42,7 +42,22 @@ export async function checkEntryLock(entryFk, userFk) {
|
|||
lockerUserFk: userFk,
|
||||
}),
|
||||
)
|
||||
.onCancel(() => push({ path: `summary` }));
|
||||
.onCancel(() => {
|
||||
push({ path: `summary` });
|
||||
});
|
||||
}
|
||||
} else {
|
||||
await axios
|
||||
.patch(`Entries/${entryFk}`, {
|
||||
locked: Date.vnNow(),
|
||||
lockerUserFk: userFk,
|
||||
})
|
||||
.then(
|
||||
quasar.notify({
|
||||
message: t('entry.lock.success'),
|
||||
color: 'positive',
|
||||
position: 'top',
|
||||
}),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -214,10 +214,12 @@ const columns = [
|
|||
{
|
||||
align: 'center',
|
||||
labelAbbreviation: 'GM',
|
||||
label: t('Grouping selector'),
|
||||
toolTip: t('Grouping selector'),
|
||||
name: 'groupingMode',
|
||||
component: 'toggle',
|
||||
attrs: {
|
||||
label: '',
|
||||
'toggle-indeterminate': true,
|
||||
trueValue: 'grouping',
|
||||
falseValue: 'packing',
|
||||
|
|
|
@ -11,6 +11,7 @@ import VnLv from 'src/components/ui/VnLv.vue';
|
|||
import TravelDescriptorProxy from 'src/pages/Travel/Card/TravelDescriptorProxy.vue';
|
||||
import EntryBuys from './EntryBuys.vue';
|
||||
import VnTitle from 'src/components/common/VnTitle.vue';
|
||||
import VnCheckbox from 'src/components/common/VnCheckbox.vue';
|
||||
import VnToSummary from 'src/components/ui/VnToSummary.vue';
|
||||
|
||||
const route = useRoute();
|
||||
|
@ -65,7 +66,7 @@ onMounted(async () => {
|
|||
<template #body>
|
||||
<QCard class="vn-one">
|
||||
<VnTitle
|
||||
:url="`#/entry/{{ entityId }}/basicData`"
|
||||
:url="`#/entry/${entityId}/basic-data`"
|
||||
:text="t('globals.summary.basicData')"
|
||||
/>
|
||||
<div class="card-group">
|
||||
|
@ -89,33 +90,37 @@ onMounted(async () => {
|
|||
/>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<QCheckbox
|
||||
<VnCheckbox
|
||||
:label="t('entry.summary.ordered')"
|
||||
v-model="entry.isOrdered"
|
||||
:disable="true"
|
||||
size="xs"
|
||||
/>
|
||||
<QCheckbox
|
||||
<VnCheckbox
|
||||
:label="t('globals.confirmed')"
|
||||
v-model="entry.isConfirmed"
|
||||
:disable="true"
|
||||
size="xs"
|
||||
/>
|
||||
<QCheckbox
|
||||
<VnCheckbox
|
||||
:label="t('entry.summary.booked')"
|
||||
v-model="entry.isBooked"
|
||||
:disable="true"
|
||||
size="xs"
|
||||
/>
|
||||
<QCheckbox
|
||||
<VnCheckbox
|
||||
:label="t('entry.summary.excludedFromAvailable')"
|
||||
v-model="entry.isExcludedFromAvailable"
|
||||
:disable="true"
|
||||
size="xs"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</QCard>
|
||||
<QCard class="vn-one" v-if="entry?.travelFk">
|
||||
<VnTitle
|
||||
:url="`#/travel/{{ entry.travel.id }}/summary`"
|
||||
:text="t('globals.summary.basicData')"
|
||||
:url="`#/travel/${entry.travel.id}/summary`"
|
||||
:text="t('Travel')"
|
||||
/>
|
||||
<div class="card-group">
|
||||
<div class="card-content">
|
||||
|
@ -149,22 +154,24 @@ onMounted(async () => {
|
|||
/>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<QCheckbox
|
||||
<VnCheckbox
|
||||
:label="t('entry.summary.travelDelivered')"
|
||||
v-model="entry.travel.isDelivered"
|
||||
:disable="true"
|
||||
size="xs"
|
||||
/>
|
||||
<QCheckbox
|
||||
<VnCheckbox
|
||||
:label="t('entry.summary.travelReceived')"
|
||||
v-model="entry.travel.isReceived"
|
||||
:disable="true"
|
||||
size="xs"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</QCard>
|
||||
<QCard class="vn-max">
|
||||
<VnTitle
|
||||
:url="`#/entry/{{ entityId }}/buys`"
|
||||
:url="`#/entry/${entityId}/buys`"
|
||||
:text="t('entry.summary.buys')"
|
||||
/>
|
||||
<EntryBuys
|
||||
|
@ -188,6 +195,9 @@ onMounted(async () => {
|
|||
display: flex;
|
||||
flex-direction: column;
|
||||
text-overflow: ellipsis;
|
||||
> div {
|
||||
max-height: 24px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 1010px) {
|
||||
|
@ -202,6 +212,6 @@ onMounted(async () => {
|
|||
</style>
|
||||
<i18n>
|
||||
es:
|
||||
Travel data: Datos envío
|
||||
Travel: Envío
|
||||
InvoiceIn data: Datos factura
|
||||
</i18n>
|
||||
|
|
Loading…
Reference in New Issue