Merge pull request 'HOTFIX: ticketSale keyup.enter' (!1009) from hotfix_ticketSale_enter into master
gitea/salix-front/pipeline/head This commit looks good
Details
gitea/salix-front/pipeline/head This commit looks good
Details
Reviewed-on: #1009 Reviewed-by: Javi Gallego <jgallego@verdnatura.es>
This commit is contained in:
commit
1bbce5f828
|
@ -181,17 +181,34 @@ const resetChanges = async () => {
|
|||
arrayData.fetch({ append: false });
|
||||
tableRef.value.reload();
|
||||
};
|
||||
const rowToUpdate = ref(null);
|
||||
const changeQuantity = async (sale) => {
|
||||
canProceed.value = await isSalePrepared(sale);
|
||||
if (!canProceed.value) return;
|
||||
if (
|
||||
!sale.itemFk ||
|
||||
sale.quantity == null ||
|
||||
edit.value?.oldQuantity === sale.quantity
|
||||
)
|
||||
return;
|
||||
if (!sale.id) return addSale(sale);
|
||||
|
||||
const updateQuantity = async (sale) => {
|
||||
const params = { quantity: sale.quantity };
|
||||
try {
|
||||
await axios.post(`Sales/${sale.id}/updateQuantity`, params);
|
||||
if (!rowToUpdate.value) return;
|
||||
rowToUpdate.value = null;
|
||||
await updateQuantity(sale);
|
||||
} catch (e) {
|
||||
sale.quantity = tableRef.value.CrudModelRef.originalData.find(
|
||||
const { quantity } = tableRef.value.CrudModelRef.originalData.find(
|
||||
(s) => s.id === sale.id
|
||||
).quantity;
|
||||
);
|
||||
sale.quantity = quantity;
|
||||
throw e;
|
||||
}
|
||||
};
|
||||
|
||||
const updateQuantity = async ({ quantity, id }) => {
|
||||
const params = { quantity: quantity };
|
||||
await axios.post(`Sales/${id}/updateQuantity`, params);
|
||||
notify('globals.dataSaved', 'positive');
|
||||
};
|
||||
|
||||
|
@ -219,19 +236,6 @@ const addSale = async (sale) => {
|
|||
window.location.reload();
|
||||
};
|
||||
|
||||
const changeQuantity = async (sale) => {
|
||||
canProceed.value = await isSalePrepared(sale);
|
||||
if (!canProceed.value) return;
|
||||
if (
|
||||
!sale.itemFk ||
|
||||
sale.quantity == null ||
|
||||
edit.value?.oldQuantity === sale.quantity
|
||||
)
|
||||
return;
|
||||
if (!sale.id) return addSale(sale);
|
||||
await updateQuantity(sale);
|
||||
};
|
||||
|
||||
const updateConcept = async (sale) => {
|
||||
canProceed.value = await isSalePrepared(sale);
|
||||
if (!canProceed.value) return;
|
||||
|
@ -768,16 +772,12 @@ watch(
|
|||
</template>
|
||||
<template #column-quantity="{ row }">
|
||||
<VnInput
|
||||
v-if="row.isNew"
|
||||
v-model.number="row.quantity"
|
||||
v-if="row.isNew || isTicketEditable"
|
||||
type="number"
|
||||
@blur="changeQuantity(row)"
|
||||
@focus="edit.oldQuantity = row.quantity"
|
||||
/>
|
||||
<VnInput
|
||||
v-else-if="isTicketEditable"
|
||||
v-model.number="row.quantity"
|
||||
@blur="changeQuantity(row)"
|
||||
@keyup.enter="changeQuantity(row)"
|
||||
@update:model-value="() => (rowToUpdate = row)"
|
||||
@focus="edit.oldQuantity = row.quantity"
|
||||
/>
|
||||
<span v-else>{{ row.quantity }}</span>
|
||||
|
|
Loading…
Reference in New Issue