This commit is contained in:
Viet An
2026-05-25 15:23:12 +07:00
parent 5f2a98977b
commit 6685a43360
48 changed files with 732 additions and 2901 deletions

View File

@@ -1,31 +1,9 @@
<script setup>
import Products from "@/components/imports/Products.vue";
const { $snackbar } = useNuxtApp();
</script>
<template>
<div class="fixed-grid has-12-cols">
<div class="grid">
<div class="cell is-col-span-12">
<button @click="$snackbar('heyo', 'Success')">click</button>
<hr />
<div class="is-flex">
<div class="size-16 has-background-black"></div>
<div class="size-16 has-background-black-bis"></div>
<div class="size-16 has-background-black-ter"></div>
<div class="size-16 has-background-grey-darker"></div>
<div class="size-16 has-background-grey-dark"></div>
<div class="size-16 has-background-grey"></div>
<div class="size-16 has-background-grey-light"></div>
<div class="size-16 has-background-grey-lighter"></div>
<div class="size-16 has-background-grey-lightest"></div>
<div class="size-16 has-background-white-ter"></div>
<div class="size-16 has-background-white-bis"></div>
<div class="size-16 has-background-white"></div>
</div>
<div class="is-flex">
<div class="size-16 has-background-grey"></div>
</div>
</div>
<div class="cell is-col-span-12">
<Products />
</div>

View File

@@ -30,16 +30,14 @@ const body = ref($copy(defaultBody.value));
const productVariant = ref();
onMounted(async () => {
if (props.variantId) {
const variant = await $getdata(
"Product_Variant",
undefined,
{
const variant = await $getdata("Product_Variant", {
first: true,
params: {
filter: { id: props.variantId },
values:
"id,code,product,product__name,product__os,product__manufacturer,product__battery,product__screen,product__cpu,product__gpu,product__camera_system,product__sim,product__network_technology,product__charging_technology,product__external_storage,product__ip_rating,product__design,color,color__code,color__name,color__hex_code,ram,ram__code,ram__capacity,internal_storage,internal_storage__code,internal_storage__capacity,image,image__path,price,note,create_time,update_time",
},
true,
);
});
productVariant.value = variant;
@@ -64,6 +62,10 @@ onMounted(async () => {
}
});
watch(body, (newVal) => {
console.dir("body changed", newVal);
});
const isDirty = computed(() => !isEqual(body.value, defaultBody.value));
function selected(field, data) {

View File

@@ -27,16 +27,14 @@ const productVariant = ref();
onMounted(async () => {
// if props.variant (edit), fetch data to fill in body
if (props.variantId) {
const variant = await $getdata(
"Product_Variant",
undefined,
{
const variant = await $getdata("Product_Variant", {
first: true,
params: {
filter: { id: props.variantId },
values:
"id,code,product,product__name,product__os,product__manufacturer,product__battery,product__screen,product__cpu,product__gpu,product__camera_system,product__sim,product__network_technology,product__charging_technology,product__external_storage,product__ip_rating,product__design,color,color__code,color__name,color__hex_code,ram,ram__code,ram__capacity,internal_storage,internal_storage__code,internal_storage__capacity,image,image__path,price,note,create_time,update_time",
},
true,
);
});
productVariant.value = variant;