Merge branch 'master' of https://gitea.verdnatura.es/verdnatura/salix-front into test
gitea/salix-front/pipeline/pr-dev There was a failure building this commit Details
gitea/salix-front/pipeline/head This commit looks good Details

This commit is contained in:
Alex Moreno 2025-01-28 12:12:08 +01:00
commit ad5056a783
6 changed files with 46 additions and 59 deletions

View File

@ -166,7 +166,7 @@ function emitStoreData() {
async function paginate() { async function paginate() {
const { page, rowsPerPage, sortBy, descending } = pagination.value; const { page, rowsPerPage, sortBy, descending } = pagination.value;
if (!props.url) return; if (!arrayData.store.url) return;
isLoading.value = true; isLoading.value = true;
await arrayData.loadMore(); await arrayData.loadMore();

View File

@ -48,14 +48,14 @@ const itemPackingTypesOptions = ref([]);
> >
<template #form="{ data }"> <template #form="{ data }">
<VnRow> <VnRow>
<VnInput v-model="data.code" :label="t('shared.code')" /> <VnInput v-model="data.code" :label="t('itemType.shared.code')" />
<VnInput v-model="data.name" :label="t('shared.name')" /> <VnInput v-model="data.name" :label="t('itemType.shared.name')" />
</VnRow> </VnRow>
<VnRow> <VnRow>
<VnSelect <VnSelect
url="Workers/search" url="Workers/search"
v-model="data.workerFk" v-model="data.workerFk"
:label="t('shared.worker')" :label="t('itemType.shared.worker')"
sort-by="nickname ASC" sort-by="nickname ASC"
:fields="['id', 'nickname']" :fields="['id', 'nickname']"
option-label="nickname" option-label="nickname"
@ -83,7 +83,7 @@ const itemPackingTypesOptions = ref([]);
> >
<VnSelect <VnSelect
v-model="data.categoryFk" v-model="data.categoryFk"
:label="t('shared.category')" :label="t('itemType.shared.category')"
:options="categoriesOptions" :options="categoriesOptions"
option-value="id" option-value="id"
option-label="name" option-label="name"
@ -93,27 +93,30 @@ const itemPackingTypesOptions = ref([]);
<VnRow> <VnRow>
<VnSelect <VnSelect
v-model="data.temperatureFk" v-model="data.temperatureFk"
:label="t('shared.temperature')" :label="t('itemType.shared.temperature')"
:options="temperaturesOptions" :options="temperaturesOptions"
option-value="code" option-value="code"
option-label="name" option-label="name"
hide-selected hide-selected
/> />
<VnInput v-model="data.life" :label="t('shared.life')" /> <VnInput v-model="data.life" :label="t('itemType.summary.life')" />
</VnRow> </VnRow>
<VnRow> <VnRow>
<VnSelect <VnSelect
v-model="data.itemPackingTypeFk" v-model="data.itemPackingTypeFk"
:label="t('shared.itemPackingType')" :label="t('itemType.shared.itemPackingType')"
:options="itemPackingTypesOptions" :options="itemPackingTypesOptions"
option-value="code" option-value="code"
option-label="description" option-label="description"
hide-selected hide-selected
/> />
<VnInput v-model="data.maxRefs" :label="t('shared.maxRefs')" /> <VnInput v-model="data.maxRefs" :label="t('itemType.shared.maxRefs')" />
</VnRow> </VnRow>
<VnRow> <VnRow>
<QCheckbox v-model="data.isFragile" :label="t('shared.fragile')" /> <QCheckbox
v-model="data.isFragile"
:label="t('itemType.shared.fragile')"
/>
</VnRow> </VnRow>
</template> </template>
</FormModel> </FormModel>

View File

@ -50,15 +50,15 @@ const setData = (entity) => (data.value = useCardDescription(entity.code, entity
@on-fetch="setData" @on-fetch="setData"
> >
<template #body="{ entity }"> <template #body="{ entity }">
<VnLv :label="t('shared.code')" :value="entity.code" /> <VnLv :label="t('itemType.shared.code')" :value="entity.code" />
<VnLv :label="t('shared.name')" :value="entity.name" /> <VnLv :label="t('itemType.shared.name')" :value="entity.name" />
<VnLv :label="t('shared.worker')"> <VnLv :label="t('itemType.shared.worker')">
<template #value> <template #value>
<span class="link">{{ entity.worker?.firstName }}</span> <span class="link">{{ entity.worker?.firstName }}</span>
<WorkerDescriptorProxy :id="entity.worker?.id" /> <WorkerDescriptorProxy :id="entity.worker?.id" />
</template> </template>
</VnLv> </VnLv>
<VnLv :label="t('shared.category')" :value="entity.category?.name" /> <VnLv :label="t('itemType.shared.category')" :value="entity.category?.name" />
</template> </template>
</CardDescriptor> </CardDescriptor>
</template> </template>

View File

@ -76,13 +76,6 @@ itemTags:
searchbar: searchbar:
label: Search item label: Search item
info: Search by item id info: Search by item id
itemType:
shared:
code: Code
name: Name
worker: Worker
category: Category
temperature: Temperature
item: item:
params: params:
daysOnward: Days onward daysOnward: Days onward

View File

@ -76,13 +76,6 @@ itemTags:
searchbar: searchbar:
label: Buscar artículo label: Buscar artículo
info: Buscar por id de artículo info: Buscar por id de artículo
itemType:
shared:
code: Código
name: Nombre
worker: Trabajador
category: Reino
temperature: Temperatura
params: params:
state: asfsdf state: asfsdf
item: item:

View File

@ -179,33 +179,31 @@ const entriesTableRows = computed(() => {
return entries.value; return entries.value;
}); });
const entriesTotalHb = computed(() => const entriesTotals = computed(() => {
entriesTableRows.value.reduce((acc, { hb }) => acc + hb, 0) const totals = {
); hb: 0,
freightValue: 0,
packageValue: 0,
cc: 0,
pallet: 0,
m3: 0,
};
const entriesTotalFreight = computed(() => entriesTableRows.value.forEach((row) => {
toCurrency( for (const key in totals) {
entriesTableRows.value.reduce((acc, { freightValue }) => acc + freightValue, 0) totals[key] += row[key] || 0;
) }
); });
const entriesTotalPackageValue = computed(() => return {
toCurrency( hb: totals.hb.toFixed(2),
entriesTableRows.value.reduce((acc, { packageValue }) => acc + packageValue, 0) freight: toCurrency(totals.freightValue),
) packageValue: toCurrency(totals.packageValue),
); cc: totals.cc.toFixed(2),
pallet: totals.pallet.toFixed(2),
const entriesTotalCc = computed(() => m3: totals.m3.toFixed(2),
entriesTableRows.value.reduce((acc, { cc }) => acc + cc, 0) };
); });
const entriesTotalPallet = computed(() =>
entriesTableRows.value.reduce((acc, { pallet }) => acc + pallet, 0)
);
const entriesTotalM3 = computed(() =>
entriesTableRows.value.reduce((acc, { m3 }) => acc + m3, 0)
);
const getTravelEntries = async (id) => { const getTravelEntries = async (id) => {
const { data } = await axios.get(`Travels/${id}/getEntries`); const { data } = await axios.get(`Travels/${id}/getEntries`);
@ -368,12 +366,12 @@ const getLink = (param) => `#/travel/${entityId.value}/${param}`;
<QTd></QTd> <QTd></QTd>
<QTd></QTd> <QTd></QTd>
<QTd></QTd> <QTd></QTd>
<QTd class="text-bold">{{ entriesTotalHb }}</QTd> <QTd class="text-bold">{{ entriesTotals.hb }}</QTd>
<QTd class="text-bold">{{ entriesTotalFreight }}</QTd> <QTd class="text-bold">{{ entriesTotals.freight }}</QTd>
<QTd class="text-bold">{{ entriesTotalPackageValue }}</QTd> <QTd class="text-bold">{{ entriesTotals.packageValue }}</QTd>
<QTd class="text-bold">{{ entriesTotalCc }}</QTd> <QTd class="text-bold">{{ entriesTotals.cc }}</QTd>
<QTd class="text-bold">{{ entriesTotalPallet }}</QTd> <QTd class="text-bold">{{ entriesTotals.pallet }}</QTd>
<QTd class="text-bold">{{ entriesTotalM3 }}</QTd> <QTd class="text-bold">{{ entriesTotals.m3 }}</QTd>
</template> </template>
</QTable> </QTable>
</QCard> </QCard>