Merge pull request 'HOTFIX: itemFixedPrice' (!755) from hotfix_itemFixedPrice into master
gitea/salix-front/pipeline/head This commit looks good Details

Reviewed-on: #755
Reviewed-by: Javi Gallego <jgallego@verdnatura.es>
This commit is contained in:
Javier Segarra 2024-09-25 21:15:35 +00:00
commit 0b47623011
3 changed files with 56 additions and 78 deletions

View File

@ -1184,7 +1184,7 @@ item:
producer: Producer producer: Producer
landed: Landed landed: Landed
fixedPrice: fixedPrice:
itemId: Item ID itemFk: Item ID
groupingPrice: Grouping price groupingPrice: Grouping price
packingPrice: Packing price packingPrice: Packing price
hasMinPrice: Has min price hasMinPrice: Has min price

View File

@ -1168,7 +1168,7 @@ item:
producer: Productor producer: Productor
landed: F. entrega landed: F. entrega
fixedPrice: fixedPrice:
itemId: ID Artículo itemFk: ID Artículo
groupingPrice: Precio grouping groupingPrice: Precio grouping
packingPrice: Precio packing packingPrice: Precio packing
hasMinPrice: Tiene precio mínimo hasMinPrice: Tiene precio mínimo

View File

@ -36,23 +36,23 @@ const user = state.getUser();
const fixedPrices = ref([]); const fixedPrices = ref([]);
const warehousesOptions = ref([]); const warehousesOptions = ref([]);
const rowsSelected = ref([]); const rowsSelected = ref([]);
const itemFixedPriceFilterRef = ref(); const itemFixedPriceFilterRef = ref();
const params = reactive({}); const params = reactive({});
const defaultColumnAttrs = {
align: 'left',
sortable: true,
};
onMounted(async () => { onMounted(async () => {
stateStore.rightDrawer = true; stateStore.rightDrawer = true;
params.warehouseFk = user.value.warehouseFk; params.warehouseFk = user.value.warehouseFk;
}); });
onUnmounted(() => (stateStore.rightDrawer = false)); onUnmounted(() => (stateStore.rightDrawer = false));
const defaultColumnAttrs = {
align: 'left',
sortable: true,
};
const columns = computed(() => [ const columns = computed(() => [
{ {
label: t('item.fixedPrice.itemId'), label: t('item.fixedPrice.itemFk'),
name: 'itemId', name: 'itemFk',
...defaultColumnAttrs, ...defaultColumnAttrs,
isId: true, isId: true,
cardVisible: true, cardVisible: true,
@ -76,53 +76,28 @@ const columns = computed(() => [
name: 'rate2', name: 'rate2',
...defaultColumnAttrs, ...defaultColumnAttrs,
cardVisible: true, cardVisible: true,
columnField: {
class: 'expand',
component: 'input', component: 'input',
type: 'number', type: 'number',
}, },
columnFilter: {
class: 'expand',
component: 'input',
type: 'number',
},
},
{ {
label: t('item.fixedPrice.packingPrice'), label: t('item.fixedPrice.packingPrice'),
field: 'rate3', field: 'rate3',
name: 'rate3', name: 'rate3',
...defaultColumnAttrs, ...defaultColumnAttrs,
cardVisible: true, cardVisible: true,
columnField: {
class: 'expand',
component: 'input', component: 'input',
type: 'number', type: 'number',
}, },
columnFilter: {
class: 'expand',
component: 'input',
type: 'number',
},
},
{ {
label: t('item.fixedPrice.minPrice'), label: t('item.fixedPrice.minPrice'),
field: 'minPrice', field: 'minPrice',
columnClass: 'shrink',
name: 'minPrice', name: 'minPrice',
...defaultColumnAttrs, ...defaultColumnAttrs,
cardVisible: true, cardVisible: true,
columnField: {
class: 'expand',
component: 'input', component: 'input',
type: 'number', type: 'number',
}, },
columnFilter: {
class: 'expand',
component: 'input',
type: 'number',
},
},
{ {
label: t('item.fixedPrice.started'), label: t('item.fixedPrice.started'),
field: 'started', field: 'started',
@ -162,17 +137,10 @@ const columns = computed(() => [
name: 'warehouseFk', name: 'warehouseFk',
...defaultColumnAttrs, ...defaultColumnAttrs,
columnClass: 'shrink', columnClass: 'shrink',
columnFilter: {
component: 'select', component: 'select',
},
columnField: {
component: 'select',
class: 'expand',
},
attrs: {
options: warehousesOptions, options: warehousesOptions,
}, },
},
{ {
align: 'right', align: 'right',
name: 'tableActions', name: 'tableActions',
@ -458,7 +426,7 @@ function handleOnDataSave({ CrudModelRef }) {
:default-save="false" :default-save="false"
data-key="ItemFixedPrices" data-key="ItemFixedPrices"
url="FixedPrices/filter" url="FixedPrices/filter"
:order="['itemFk ASC']" :order="['description DESC']"
save-url="FixedPrices/crud" save-url="FixedPrices/crud"
:user-params="{ warehouseFk: user.warehouseFk }" :user-params="{ warehouseFk: user.warehouseFk }"
ref="tableRef" ref="tableRef"
@ -492,7 +460,7 @@ function handleOnDataSave({ CrudModelRef }) {
<QCheckbox flat v-model="scope.selected" /> <QCheckbox flat v-model="scope.selected" />
</template> </template>
<template #column-itemId="props"> <template #column-itemFk="props">
<VnSelect <VnSelect
style="max-width: 100px" style="max-width: 100px"
url="Items/withName" url="Items/withName"
@ -518,29 +486,35 @@ function handleOnDataSave({ CrudModelRef }) {
</span> </span>
<span class="subName">{{ row.subName }}</span> <span class="subName">{{ row.subName }}</span>
<ItemDescriptorProxy :id="row.itemFk" /> <ItemDescriptorProxy :id="row.itemFk" />
<FetchedTags style="width: max-content; max-width: 220px" :item="row" /> <FetchedTags :item="row" />
</template> </template>
<template #column-rate2="props"> <template #column-rate2="props">
<QTd class="col">
<VnInput <VnInput
mask="###.##" type="currency"
style="width: 75px"
v-model.number="props.row.rate2" v-model.number="props.row.rate2"
v-on="getRowUpdateInputEvents(props)" v-on="getRowUpdateInputEvents(props)"
> >
<template #append></template> <template #append></template>
</VnInput> </VnInput>
</QTd>
</template> </template>
<template #column-rate3="props"> <template #column-rate3="props">
<QTd class="col">
<VnInput <VnInput
mask="###.##" style="width: 75px"
type="currency"
v-model.number="props.row.rate3" v-model.number="props.row.rate3"
v-on="getRowUpdateInputEvents(props)" v-on="getRowUpdateInputEvents(props)"
> >
<template #append></template> <template #append></template>
</VnInput> </VnInput>
</QTd>
</template> </template>
<template #column-minPrice="props"> <template #column-minPrice="props">
<QTd class="col"> <QTd class="col">
<div class="row" style="width: 115px"> <div class="row">
<QCheckbox <QCheckbox
:model-value="props.row.hasMinPrice" :model-value="props.row.hasMinPrice"
@update:model-value="updateMinPrice($event, props)" @update:model-value="updateMinPrice($event, props)"
@ -549,6 +523,8 @@ function handleOnDataSave({ CrudModelRef }) {
/> />
<VnInput <VnInput
class="col" class="col"
type="currency"
mask="###.##"
:disable="props.row.hasMinPrice === 1" :disable="props.row.hasMinPrice === 1"
v-model.number="props.row.minPrice" v-model.number="props.row.minPrice"
v-on="getRowUpdateInputEvents(props)" v-on="getRowUpdateInputEvents(props)"
@ -577,6 +553,7 @@ function handleOnDataSave({ CrudModelRef }) {
/> />
</template> </template>
<template #column-warehouseFk="props"> <template #column-warehouseFk="props">
<QTd class="col">
<VnSelect <VnSelect
style="max-width: 150px" style="max-width: 150px"
:options="warehousesOptions" :options="warehousesOptions"
@ -586,6 +563,7 @@ function handleOnDataSave({ CrudModelRef }) {
v-model="props.row.warehouseFk" v-model="props.row.warehouseFk"
v-on="getRowUpdateInputEvents(props, false, 'select')" v-on="getRowUpdateInputEvents(props, false, 'select')"
/> />
</QTd>
</template> </template>
<template #column-deleteAction="{ row, rowIndex }"> <template #column-deleteAction="{ row, rowIndex }">
<QIcon <QIcon