fix: refs #6769 Fixes item diary #573

Merged
guillermo merged 3 commits from 6769-itemDiaryFix into master 2024-07-26 11:18:48 +00:00
4 changed files with 51 additions and 28 deletions

View File

@ -15,7 +15,7 @@ const props = defineProps({
default: null,
},
warehouseFk: {
type: Boolean,
type: Number,
default: null,
},
});
@ -23,7 +23,7 @@ const props = defineProps({
const { t } = useI18n();
const regularizeFormData = reactive({
itemFk: props.itemFk,
itemFk: Number(props.itemFk),
warehouseFk: props.warehouseFk,
quantity: null,
});
@ -53,6 +53,7 @@ const onDataSaved = (data) => {
<QInput
:label="t('Type the visible quantity')"
v-model.number="data.quantity"
type="number"
autofocus
/>
</VnRow>
@ -60,7 +61,7 @@ const onDataSaved = (data) => {
<div class="col">
<VnSelect
:label="t('Warehouse')"
v-model="data.warehouseFk"
v-model.number="data.warehouseFk"
:options="warehousesOptions"
option-value="id"
option-label="name"

View File

@ -209,27 +209,29 @@ input::-webkit-inner-spin-button {
max-width: 100%;
}
/* ===== Scrollbar CSS ===== /
guillermo marked this conversation as resolved Outdated
Outdated
Review

Esto se usa para VnTable, si no se quiere de manera global, no se debe borrar.

Solución(añadir una clase que use el contenedor de q-table):

.q-table__container {
    /* ===== Scrollbar CSS ===== /
    / Firefox */

    * {
        scrollbar-width: auto;
        scrollbar-color: var(--vn-label-color) transparent;
    }

    /* Chrome, Edge, and Safari */
    *::-webkit-scrollbar {
        width: 10px;
        height: 10px;
    }

    *::-webkit-scrollbar-thumb {
        background-color: var(--vn-label-color);
        border-radius: 10px;
    }

    *::-webkit-scrollbar-track {
        background: transparent;
    }
}
Esto se usa para VnTable, si no se quiere de manera global, no se debe borrar. Solución(añadir una clase que use el contenedor de q-table): ``` .q-table__container { /* ===== Scrollbar CSS ===== / / Firefox */ * { scrollbar-width: auto; scrollbar-color: var(--vn-label-color) transparent; } /* Chrome, Edge, and Safari */ *::-webkit-scrollbar { width: 10px; height: 10px; } *::-webkit-scrollbar-thumb { background-color: var(--vn-label-color); border-radius: 10px; } *::-webkit-scrollbar-track { background: transparent; } } ```
/ Firefox */
.q-table__container {
/* ===== Scrollbar CSS ===== /
/ Firefox */
* {
* {
scrollbar-width: auto;
scrollbar-color: var(--vn-label-color) transparent;
}
}
/* Chrome, Edge, and Safari */
*::-webkit-scrollbar {
/* Chrome, Edge, and Safari */
*::-webkit-scrollbar {
width: 10px;
height: 10px;
}
}
*::-webkit-scrollbar-thumb {
*::-webkit-scrollbar-thumb {
background-color: var(--vn-label-color);
border-radius: 10px;
}
}
*::-webkit-scrollbar-track {
*::-webkit-scrollbar-track {
background: transparent;
}
}
.q-table {

View File

@ -1,5 +1,5 @@
<script setup>
import { onMounted, computed, onUnmounted, reactive, ref } from 'vue';
import { onMounted, computed, onUnmounted, reactive, ref, nextTick } from 'vue';
import { useI18n } from 'vue-i18n';
import { useRoute } from 'vue-router';
@ -113,18 +113,36 @@ const getBadgeAttrs = (_date) => {
return attrs;
};
const scrollToToday = async () => {
guillermo marked this conversation as resolved
Review

Ho he provat conectat a dev en el item 1 que si que te una linea de hui no fa el scroll

Ho he provat conectat a dev en el item 1 que si que te una linea de hui no fa el scroll
await nextTick();
const today = Date.vnNew();
today.setHours(0, 0, 0, 0);
const todayCell = document.querySelector(`td[data-date="${today.toISOString()}"]`);
if (todayCell) {
todayCell.scrollIntoView({ behavior: 'smooth', block: 'center' });
}
};
const formatDateForAttribute = (dateValue) => {
if (dateValue instanceof Date) return date.formatDate(dateValue, 'YYYY-MM-DD');
return dateValue;
};
const originTypeMap = {
entry: {
descriptor: EntryDescriptorProxy,
icon: 'vn:entry',
color: 'green',
},
ticket: {
descriptor: TicketDescriptorProxy,
icon: 'vn:ticket',
color: 'red',
},
order: {
descriptor: OrderDescriptorProxy,
icon: 'vn:basket',
color: 'yellow',
},
};
@ -143,6 +161,7 @@ onMounted(async () => {
else if (user.value) warehouseFk.value = user.value.warehouseFk;
itemsBalanceFilter.where.warehouseFk = warehouseFk.value;
await fetchItemBalances();
await scrollToToday();
});
onUnmounted(() => (stateStore.rightDrawer = false));
@ -215,7 +234,7 @@ onUnmounted(() => (stateStore.rightDrawer = false));
</QTd>
</template>
<template #body-cell-date="{ row }">
<QTd @click.stop>
<QTd @click.stop :data-date="formatDateForAttribute(row.shipped)">
guillermo marked this conversation as resolved
Review

Esto no hace nada en todo caso seria:

:data-date="(value) => row.shipped = formatDateForAttribute(row.shipped)">
Esto no hace nada en todo caso seria: ``` :data-date="(value) => row.shipped = formatDateForAttribute(row.shipped)"> ```
Review

Si que hace, si no no funciona el scroll

Si que hace, si no no funciona el scroll
<QBadge
v-bind="getBadgeAttrs(row.shipped)"
class="q-ma-none"
@ -237,12 +256,13 @@ onUnmounted(() => (stateStore.rightDrawer = false));
>
{{ row.originId }}
</component>
<span class="link">
<QIcon
:name="originTypeMap[row.originType]?.icon"
class="fill-icon q-mr-sm"
size="xs"
size="sm"
:color="originTypeMap[row.originType]?.color"
/>
<span class="link">
{{ row.originId }}
</span>
</QTd>

View File

@ -145,7 +145,7 @@ const refetch = async () => await cardDescriptorRef.value.getData();
</QItem>
</template>
<template #before>
<VnImg :id="entityId" collection="user" size="160x160" class="photo">
<VnImg :id="entityId" collection="user" size="520x520" class="photo">
<template #error>
<div
class="absolute-full picture text-center q-pa-md flex flex-center"