feat: add product dialog

This commit is contained in:
oat_dev 2024-06-14 14:45:17 +07:00
parent d4ddabcf0e
commit 4ad9d4c274
5 changed files with 246 additions and 0 deletions

View file

@ -0,0 +1,54 @@
<script setup lang="ts">
const remark = defineModel<string>('remark');
const detail = defineModel<string>('detail');
const name = defineModel<string>('name');
const code = defineModel<string>('code');
defineProps<{
dense?: boolean;
outlined?: boolean;
readonly?: boolean;
separator?: boolean;
isType?: boolean;
}>();
</script>
<template>
<div class="row">
<div class="col-4 app-text-muted"> {{ $t(`ข้อมูลราคา`) }}</div>
<div class="col-8 row q-col-gutter-md">
<q-input
:dense="dense"
:outlined="!readonly"
:readonly="readonly"
:borderless="readonly"
hide-bottom-space
class="col-4"
label="ราคาขาย"
v-model="code"
/>
<q-input
:dense="dense"
:outlined="!readonly"
:readonly="readonly"
:borderless="readonly"
hide-bottom-space
class="col-4"
label="ราคาตัวแทน"
v-model="name"
/>
<q-input
:dense="dense"
:outlined="!readonly"
:readonly="readonly"
:borderless="readonly"
hide-bottom-space
class="col-4"
label="ราคาค่าดำเนินการ"
v-model="detail"
/>
</div>
</div>
</template>
<style scoped></style>

View file

@ -0,0 +1,94 @@
<script setup lang="ts">
const remark = defineModel<string>('remark');
const detail = defineModel<string>('detail');
const name = defineModel<string>('name');
const code = defineModel<string>('code');
defineProps<{
dense?: boolean;
outlined?: boolean;
readonly?: boolean;
separator?: boolean;
isType?: boolean;
}>();
</script>
<template>
<div class="row col-10">
<div class="col-4 app-text-muted">
{{ $t(`formDialogTitleInformation`) }}
</div>
<div class="col-8 row q-col-gutter-md">
<q-input
:dense="dense"
:outlined="!readonly"
:readonly="readonly"
:borderless="readonly"
hide-bottom-space
class="col-3"
label="รหัสสินค้า"
v-model="code"
/>
<q-input
:dense="dense"
:outlined="!readonly"
:readonly="readonly"
:borderless="readonly"
hide-bottom-space
class="col-9"
label="ชื่อสินค้า"
v-model="name"
/>
<q-input
:dense="dense"
:outlined="!readonly"
:readonly="readonly"
:borderless="readonly"
hide-bottom-space
type="textarea"
class="col-12"
label="รายละเอียดบริการ"
v-model="detail"
/>
<q-input
:dense="dense"
:outlined="!readonly"
:readonly="readonly"
:borderless="readonly"
hide-bottom-space
type="textarea"
class="col-12"
:label="$t('detail')"
v-model="remark"
/>
<q-input
:dense="dense"
:outlined="!readonly"
:readonly="readonly"
:borderless="readonly"
hide-bottom-space
class="col-4"
label="ระยะเวลาในการดำเนินการ"
v-model="remark"
/>
<q-input
:dense="dense"
:outlined="!readonly"
:readonly="readonly"
:borderless="readonly"
hide-bottom-space
type="textarea"
class="col-12"
:label="$t('formDialogInputRemark')"
v-model="remark"
/>
</div>
</div>
<q-separator
v-if="separator"
class="col-12 q-mt-xl q-mb-md"
style="padding-block: 0.5px"
/>
</template>
<style scoped></style>

View file

@ -5,6 +5,10 @@ const urlProfile = defineModel('urlProfile', {
const profileSubmit = defineModel('profileSubmit');
const statusToggle = defineModel('statusToggle');
defineProps<{
isProduct?: boolean;
}>();
defineEmits<{
(e: 'inputFile'): void;
}>();
@ -18,6 +22,11 @@ defineEmits<{
:src="urlProfile"
style="object-fit: cover; width: 100%; height: 100%"
/>
<q-img
v-else-if="isProduct"
src="shop-add-image.png"
style="object-fit: cover; width: 100%; height: 100%"
/>
<q-icon
v-else
name="mdi-account full-height"