forked from verdnatura/salix-front
Merge pull request 'Se hace corrección en el desplegable' (#9) from features/ms_19_desplegable_detalle_2 into dev
Reviewed-on: hyervoni/salix-front-mindshore#9
This commit is contained in:
commit
2755e3c20e
|
@ -83,6 +83,7 @@ const options = [
|
||||||
</QTooltip>
|
</QTooltip>
|
||||||
</QBtn>
|
</QBtn>
|
||||||
</RouterLink>
|
</RouterLink>
|
||||||
|
|
||||||
<RouterLink :to="{ name: `${module}Summary`, params: { id: entity.id } }">
|
<RouterLink :to="{ name: `${module}Summary`, params: { id: entity.id } }">
|
||||||
<QBtn
|
<QBtn
|
||||||
class="link"
|
class="link"
|
||||||
|
@ -93,31 +94,21 @@ const options = [
|
||||||
round
|
round
|
||||||
size="md"
|
size="md"
|
||||||
>
|
>
|
||||||
<QMenu auto-close>
|
<QTooltip>
|
||||||
<QList dense v-for="option in options" :key="option">
|
{{ t('components.cardDescriptor.summary') }}
|
||||||
<QItem v-ripple clickable>
|
</QTooltip>
|
||||||
{{ option }}
|
|
||||||
</QItem>
|
|
||||||
</QList>
|
|
||||||
</QMenu>
|
|
||||||
</QBtn>
|
</QBtn>
|
||||||
</RouterLink>
|
</RouterLink>
|
||||||
|
|
||||||
<QBtn
|
<QBtn color="white" dense flat icon="more_vert" round size="md">
|
||||||
color="white"
|
|
||||||
dense
|
|
||||||
flat
|
|
||||||
icon="more_vert"
|
|
||||||
round
|
|
||||||
size="md"
|
|
||||||
v-if="slots.menu"
|
|
||||||
>
|
|
||||||
<QTooltip>
|
<QTooltip>
|
||||||
{{ t('components.cardDescriptor.moreOptions') }}
|
{{ t('components.cardDescriptor.moreOptions') }}
|
||||||
</QTooltip>
|
</QTooltip>
|
||||||
<QMenu>
|
<QMenu>
|
||||||
<QList>
|
<QList dense v-for="option in options" :key="option">
|
||||||
<slot name="menu" :entity="entity" />
|
<QItem v-ripple clickable>
|
||||||
|
{{ option }}
|
||||||
|
</QItem>
|
||||||
</QList>
|
</QList>
|
||||||
</QMenu>
|
</QMenu>
|
||||||
</QBtn>
|
</QBtn>
|
||||||
|
|
|
@ -1,21 +1,35 @@
|
||||||
<script setup>
|
<script setup>
|
||||||
|
import { ref, watch } from 'vue';
|
||||||
|
|
||||||
const $props = defineProps({
|
const $props = defineProps({
|
||||||
id: { type: Number, default: null },
|
id: { type: Number, default: null },
|
||||||
|
isSelected: { type: Boolean, default: false },
|
||||||
title: { type: String, default: null },
|
title: { type: String, default: null },
|
||||||
});
|
});
|
||||||
|
const checkSelect = ref(false);
|
||||||
|
|
||||||
|
watch(
|
||||||
|
() => $props.isSelected,
|
||||||
|
(value, prevValue) => {
|
||||||
|
checkSelect.value = value;
|
||||||
|
}
|
||||||
|
);
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<QCard class="card q-mb-md cursor-pointer q-hoverable bg-white-7 q-pa-lg">
|
<QCard class="card q-mb-md cursor-pointer q-hoverable bg-white-7 q-pa-lg">
|
||||||
<div>
|
<div>
|
||||||
<slot name="title">
|
<slot name="title">
|
||||||
<div class="flex">
|
<div class="flex justify-between">
|
||||||
<div class="title text-primary text-weight-bold text-h5">
|
<div class="flex">
|
||||||
{{ $props.title ?? `#${$props.id}` }}
|
<div class="title text-primary text-weight-bold text-h5">
|
||||||
</div>
|
{{ $props.title }}
|
||||||
<div class="q_chip">
|
</div>
|
||||||
<QChip outline color="grey" size="sm">ID: 12345</QChip>
|
<QChip outline color="grey" size="sm">
|
||||||
|
ID: {{ $props.id }}
|
||||||
|
</QChip>
|
||||||
</div>
|
</div>
|
||||||
|
<QCheckbox v-model="checkSelect" />
|
||||||
</div>
|
</div>
|
||||||
</slot>
|
</slot>
|
||||||
<div class="card-list-body">
|
<div class="card-list-body">
|
||||||
|
@ -36,12 +50,6 @@ const $props = defineProps({
|
||||||
margin-right: 25px;
|
margin-right: 25px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.q_chip {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
justify-content: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.card-list-body {
|
.card-list-body {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<script setup>
|
<script setup>
|
||||||
import { onMounted, onUnmounted } from 'vue';
|
import { onMounted, onUnmounted, ref } from 'vue';
|
||||||
import { useI18n } from 'vue-i18n';
|
import { useI18n } from 'vue-i18n';
|
||||||
import { useRouter } from 'vue-router';
|
import { useRouter } from 'vue-router';
|
||||||
import { useQuasar } from 'quasar';
|
import { useQuasar } from 'quasar';
|
||||||
|
@ -12,10 +12,11 @@ import InvoiceOutFilter from './InvoiceOutFilter.vue';
|
||||||
import VnLv from 'src/components/ui/VnLv.vue';
|
import VnLv from 'src/components/ui/VnLv.vue';
|
||||||
import CardList2 from 'src/components/ui/CardList2.vue';
|
import CardList2 from 'src/components/ui/CardList2.vue';
|
||||||
|
|
||||||
const stateStore = useStateStore();
|
|
||||||
const router = useRouter();
|
|
||||||
const quasar = useQuasar();
|
|
||||||
const { t } = useI18n();
|
const { t } = useI18n();
|
||||||
|
const manageCheckboxes = ref(false);
|
||||||
|
const quasar = useQuasar();
|
||||||
|
const router = useRouter();
|
||||||
|
const stateStore = useStateStore();
|
||||||
|
|
||||||
onMounted(() => (stateStore.rightDrawer = true));
|
onMounted(() => (stateStore.rightDrawer = true));
|
||||||
onUnmounted(() => (stateStore.rightDrawer = false));
|
onUnmounted(() => (stateStore.rightDrawer = false));
|
||||||
|
@ -38,19 +39,19 @@ function viewSummary(id) {
|
||||||
<template v-if="stateStore.isHeaderMounted()">
|
<template v-if="stateStore.isHeaderMounted()">
|
||||||
<Teleport to="#searchbar">
|
<Teleport to="#searchbar">
|
||||||
<VnSearchbar
|
<VnSearchbar
|
||||||
data-key="InvoiceOutList"
|
|
||||||
:label="t('Search invoice')"
|
|
||||||
:info="t('You can search by invoice reference')"
|
:info="t('You can search by invoice reference')"
|
||||||
|
:label="t('Search invoice')"
|
||||||
|
data-key="InvoiceOutList"
|
||||||
/>
|
/>
|
||||||
</Teleport>
|
</Teleport>
|
||||||
<Teleport to="#actions-append">
|
<Teleport to="#actions-append">
|
||||||
<div class="row q-gutter-x-sm">
|
<div class="row q-gutter-x-sm">
|
||||||
<QBtn
|
<QBtn
|
||||||
flat
|
|
||||||
@click="stateStore.toggleRightDrawer()"
|
@click="stateStore.toggleRightDrawer()"
|
||||||
round
|
|
||||||
dense
|
dense
|
||||||
|
flat
|
||||||
icon="menu"
|
icon="menu"
|
||||||
|
round
|
||||||
>
|
>
|
||||||
<QTooltip bottom anchor="bottom right">
|
<QTooltip bottom anchor="bottom right">
|
||||||
{{ t('globals.collapseMenu') }}
|
{{ t('globals.collapseMenu') }}
|
||||||
|
@ -67,17 +68,23 @@ function viewSummary(id) {
|
||||||
<QPage class="column items-center q-pa-md">
|
<QPage class="column items-center q-pa-md">
|
||||||
<div class="card-list">
|
<div class="card-list">
|
||||||
<VnPaginate
|
<VnPaginate
|
||||||
data-key="InvoiceOutList"
|
|
||||||
url="InvoiceOuts/filter"
|
|
||||||
order="issued DESC, id DESC"
|
|
||||||
auto-load
|
auto-load
|
||||||
|
data-key="InvoiceOutList"
|
||||||
|
order="issued DESC, id DESC"
|
||||||
|
url="InvoiceOuts/filter"
|
||||||
>
|
>
|
||||||
<template #body="{ rows }">
|
<template #body="{ rows }">
|
||||||
|
<div class="flex justify-around q-mb-md">
|
||||||
|
<QCheckbox label="Marcar todo" v-model="manageCheckboxes" />
|
||||||
|
<QBtn label="Descargar" color="primary" type="submit" />
|
||||||
|
</div>
|
||||||
<CardList2
|
<CardList2
|
||||||
v-for="row of rows"
|
:id="row.id"
|
||||||
|
:isSelected="manageCheckboxes"
|
||||||
:key="row.id"
|
:key="row.id"
|
||||||
:title="row.ref"
|
:title="row.ref"
|
||||||
@click="navigate(row.id)"
|
@click="navigate(row.id)"
|
||||||
|
v-for="row of rows"
|
||||||
>
|
>
|
||||||
<template #list-items>
|
<template #list-items>
|
||||||
<VnLv label="ID" :value="row.id" />
|
<VnLv label="ID" :value="row.id" />
|
||||||
|
|
Loading…
Reference in New Issue