This commit is contained in:
Viet An
2026-06-18 17:02:58 +07:00
parent 667832078d
commit da4c779bbe
6 changed files with 30 additions and 23 deletions

View File

@@ -16,7 +16,6 @@
:style="{ :style="{
width: $store.viewport <= 1 ? 'calc(100% - 2rem)' : width, width: $store.viewport <= 1 ? 'calc(100% - 2rem)' : width,
height, height,
// maxHeight: 'calc(100vh - var(--bulma-modal-card-spacing))',
}" }"
> >
<header <header

View File

@@ -7,7 +7,7 @@ const props = defineProps({
</script> </script>
<template> <template>
<div class="is-flex is-flex-direction-column is-gap-1"> <div class="is-flex is-flex-direction-column is-gap-2">
<div <div
class="p-4 rounded-md has-background-primary-95 is-flex is-justify-content-space-between is-align-items-center" class="p-4 rounded-md has-background-primary-95 is-flex is-justify-content-space-between is-align-items-center"
> >

View File

@@ -27,29 +27,37 @@ const invoiceProducts = computed(() => {
<div <div
v-for="product in invoiceProducts" v-for="product in invoiceProducts"
:key="product.id" :key="product.id"
class="p-3 has-background-white-ter rounded-md" class="p-4 has-background-white-ter rounded-md is-flex is-gap-2 is-justify-content-space-between is-align-items-flex-end"
> >
<div class="is-flex is-justify-content-space-between is-align-items-flex-end"> <div class="is-flex-grow-1 is-flex is-gap-2">
<NuxtImg
:src="product.variant__image__path"
width="45"
height="45"
style="align-self: flex-start"
/>
<div> <div>
<p class="font-semibold"> <div>
{{ product.variant__product__name }} <p class="font-semibold">
</p> {{ product.variant__product__name }}
<p class="fs-13 has-text-grey-40"> </p>
<span>{{ product.variant__internal_storage__code }}</span> <p class="fs-13 has-text-grey-40">
<span> - </span> <span>{{ product.variant__internal_storage__code }}</span>
<span>{{ product.variant__ram__code }} RAM</span> <span> - </span>
<span> - </span> <span>{{ product.variant__ram__code }} RAM</span>
<span>{{ product.variant__color__name }}</span> <span> - </span>
</p> <span>{{ product.variant__color__name }}</span>
</p>
</div>
<div class="is-flex is-gap-8 fs-13 has-text-grey-30 mt-2"> <div class="is-flex is-gap-8 fs-13 has-text-grey-30 mt-2">
<p>SL: {{ product.amount }}</p> <p>SL: {{ product.amount }}</p>
<p>Đơn giá: {{ $formatNum(product.price, { hasUnit: true }) }}</p> <p>Đơn giá: {{ $formatNum(product.price, { hasUnit: true }) }}</p>
</div> </div>
</div> </div>
<p class="font-semibold">
{{ $formatNum(product.subtotal, { hasUnit: true }) }}
</p>
</div> </div>
<p class="font-semibold">
{{ $formatNum(product.subtotal, { hasUnit: true }) }}
</p>
</div> </div>
</div> </div>
<hr /> <hr />

View File

@@ -63,6 +63,7 @@ const activeTab = ref(tabs[0]);
<Icon <Icon
name="material-symbols:person-outline-rounded" name="material-symbols:person-outline-rounded"
:size="18" :size="18"
class="has-text-grey"
/> />
</span> </span>
<span>{{ invoice.customer_name }}</span> <span>{{ invoice.customer_name }}</span>
@@ -72,6 +73,7 @@ const activeTab = ref(tabs[0]);
<Icon <Icon
name="material-symbols:call-outline-rounded" name="material-symbols:call-outline-rounded"
:size="18" :size="18"
class="has-text-grey"
/> />
</span> </span>
<span>{{ invoice.customer_phone }}</span> <span>{{ invoice.customer_phone }}</span>
@@ -81,9 +83,10 @@ const activeTab = ref(tabs[0]);
<Icon <Icon
name="material-symbols:calendar-today-outline-rounded" name="material-symbols:calendar-today-outline-rounded"
:size="18" :size="18"
class="has-text-grey"
/> />
</span> </span>
<span>{{ $dayjs(invoice.create_time).format("LL") }}</span> <span>{{ $dayjs(invoice.create_time).format("LT, LL") }}</span>
</p> </p>
</div> </div>
<div class="px-6 py-4 has-background-primary-95 rounded-lg mt-6"> <div class="px-6 py-4 has-background-primary-95 rounded-lg mt-6">

View File

@@ -81,10 +81,7 @@ provide("pos", {
<template v-if="activeCartId && carts?.length > 0"> <template v-if="activeCartId && carts?.length > 0">
<CartTabs /> <CartTabs />
<div class="fixed-grid has-1-cols-mobile has-12-cols has-background-white is-clipped"> <div class="fixed-grid has-1-cols-mobile has-12-cols has-background-white is-clipped">
<div <div class="grid is-gap-0">
class="grid"
style="row-gap: 0"
>
<div :class="['cell', store.viewport < 3 ? 'is-col-span-12' : 'is-col-span-8']"> <div :class="['cell', store.viewport < 3 ? 'is-col-span-12' : 'is-col-span-8']">
<div class="card"> <div class="card">
<div class="card-content"> <div class="card-content">

View File

@@ -497,7 +497,7 @@ export default /** @type {const} */ ([
url_detail: "data-detail/Invoice_Detail/", url_detail: "data-detail/Invoice_Detail/",
params: { params: {
values: values:
"id,code,invoice,variant,variant__code,variant__product,variant__product__name,variant__color,variant__color__name,variant__ram__code,variant__ram__capacity,variant__internal_storage__code,variant__internal_storage__capacity,variant__price,variant__image__code,imei_sold,price,status,note,deleted,create_time,update_time", "id,code,invoice,variant,variant__code,variant__product,variant__product__name,variant__color,variant__color__name,variant__ram__code,variant__ram__capacity,variant__internal_storage__code,variant__internal_storage__capacity,variant__price,variant__image__path,imei_sold,price,status,note,deleted,create_time,update_time",
}, },
}, },
{ {