feat: add shared to create product
This commit is contained in:
parent
be1559ac4f
commit
186d0ee726
3 changed files with 25 additions and 3 deletions
|
|
@ -15,6 +15,7 @@ const process = defineModel<number>('process');
|
||||||
const name = defineModel<string>('name');
|
const name = defineModel<string>('name');
|
||||||
const code = defineModel<string>('code');
|
const code = defineModel<string>('code');
|
||||||
const expenseType = defineModel<string>('expenseType');
|
const expenseType = defineModel<string>('expenseType');
|
||||||
|
const shared = defineModel<boolean>('shared');
|
||||||
|
|
||||||
const codeOption = ref<{ id: string; name: string }[]>([]);
|
const codeOption = ref<{ id: string; name: string }[]>([]);
|
||||||
|
|
||||||
|
|
@ -73,7 +74,7 @@ const detailEditorImageDrop = createEditorImageDrop(detail);
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="row col-12">
|
<div class="row col-12">
|
||||||
<div class="col-12 q-pb-sm text-weight-bold text-body1 row items-center">
|
<div class="col-12 q-pb-sm row items-center">
|
||||||
<q-icon
|
<q-icon
|
||||||
flat
|
flat
|
||||||
size="xs"
|
size="xs"
|
||||||
|
|
@ -82,7 +83,21 @@ const detailEditorImageDrop = createEditorImageDrop(detail);
|
||||||
name="mdi-office-building-outline"
|
name="mdi-office-building-outline"
|
||||||
style="background-color: var(--surface-3)"
|
style="background-color: var(--surface-3)"
|
||||||
/>
|
/>
|
||||||
{{ $t(`form.field.basicInformation`) }}
|
<span class="text-body1 text-weight-bold">
|
||||||
|
{{ $t(`form.field.basicInformation`) }}
|
||||||
|
</span>
|
||||||
|
<section class="q-px-md">
|
||||||
|
<label :style="{ opacity: readonly ? '.5' : undefined }">
|
||||||
|
<input
|
||||||
|
id="input-shared"
|
||||||
|
class="q-pr-sm"
|
||||||
|
type="checkbox"
|
||||||
|
v-model="shared"
|
||||||
|
:disabled="readonly"
|
||||||
|
/>
|
||||||
|
{{ $t('general.shared') }}
|
||||||
|
</label>
|
||||||
|
</section>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-12 row q-col-gutter-sm">
|
<div class="col-12 row q-col-gutter-sm">
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,6 @@ import TotalProductCardComponent from 'components/04_product-service/TotalProduc
|
||||||
import FormServiceWork from 'components/04_product-service/FormServiceWork.vue';
|
import FormServiceWork from 'components/04_product-service/FormServiceWork.vue';
|
||||||
import WorkNameManagement from 'components/04_product-service/WorkNameManagement.vue';
|
import WorkNameManagement from 'components/04_product-service/WorkNameManagement.vue';
|
||||||
import useOptionStore from 'stores/options';
|
import useOptionStore from 'stores/options';
|
||||||
import FormServiceProperties from 'components/04_product-service/FormServiceProperties.vue';
|
|
||||||
import InfoForm from 'components/02_personnel-management/InfoForm.vue';
|
import InfoForm from 'components/02_personnel-management/InfoForm.vue';
|
||||||
import NoData from 'components/NoData.vue';
|
import NoData from 'components/NoData.vue';
|
||||||
import PaginationComponent from 'components/PaginationComponent.vue';
|
import PaginationComponent from 'components/PaginationComponent.vue';
|
||||||
|
|
@ -268,6 +267,7 @@ const formProduct = ref<ProductCreate>({
|
||||||
name: '',
|
name: '',
|
||||||
code: '',
|
code: '',
|
||||||
image: undefined,
|
image: undefined,
|
||||||
|
shared: false,
|
||||||
});
|
});
|
||||||
|
|
||||||
const currWorkflow = ref<WorkflowTemplate>();
|
const currWorkflow = ref<WorkflowTemplate>();
|
||||||
|
|
@ -996,6 +996,7 @@ const prevProduct = ref<ProductCreate>({
|
||||||
name: '',
|
name: '',
|
||||||
code: '',
|
code: '',
|
||||||
image: undefined,
|
image: undefined,
|
||||||
|
shared: false,
|
||||||
});
|
});
|
||||||
|
|
||||||
async function assignFormDataProduct(data: Product) {
|
async function assignFormDataProduct(data: Product) {
|
||||||
|
|
@ -1023,6 +1024,7 @@ async function assignFormDataProduct(data: Product) {
|
||||||
vatIncluded: data.vatIncluded,
|
vatIncluded: data.vatIncluded,
|
||||||
selectedImage: data.selectedImage,
|
selectedImage: data.selectedImage,
|
||||||
document: data.document,
|
document: data.document,
|
||||||
|
shared: data.shared,
|
||||||
};
|
};
|
||||||
if (prevProduct.value.document)
|
if (prevProduct.value.document)
|
||||||
formProductDocument.value = prevProduct.value.document;
|
formProductDocument.value = prevProduct.value.document;
|
||||||
|
|
@ -1056,6 +1058,7 @@ function clearFormProduct() {
|
||||||
expenseType: '',
|
expenseType: '',
|
||||||
calcVat: true,
|
calcVat: true,
|
||||||
vatIncluded: true,
|
vatIncluded: true,
|
||||||
|
shared: false,
|
||||||
};
|
};
|
||||||
imageProduct.value = undefined;
|
imageProduct.value = undefined;
|
||||||
dialogProduct.value = false;
|
dialogProduct.value = false;
|
||||||
|
|
@ -3776,6 +3779,7 @@ watch(
|
||||||
v-model:code="formProduct.code"
|
v-model:code="formProduct.code"
|
||||||
v-model:process="formProduct.process"
|
v-model:process="formProduct.process"
|
||||||
v-model:expense-type="formProduct.expenseType"
|
v-model:expense-type="formProduct.expenseType"
|
||||||
|
v-model:shared="formProduct.shared"
|
||||||
dense
|
dense
|
||||||
separator
|
separator
|
||||||
/>
|
/>
|
||||||
|
|
@ -3970,6 +3974,7 @@ watch(
|
||||||
v-model:code="formProduct.code"
|
v-model:code="formProduct.code"
|
||||||
v-model:process="formProduct.process"
|
v-model:process="formProduct.process"
|
||||||
v-model:expense-type="formProduct.expenseType"
|
v-model:expense-type="formProduct.expenseType"
|
||||||
|
v-model:shared="formProduct.shared"
|
||||||
disableCode
|
disableCode
|
||||||
dense
|
dense
|
||||||
separator
|
separator
|
||||||
|
|
|
||||||
|
|
@ -178,6 +178,7 @@ export interface Product {
|
||||||
imageUrl: string;
|
imageUrl: string;
|
||||||
installmentNo: number;
|
installmentNo: number;
|
||||||
document?: string[];
|
document?: string[];
|
||||||
|
shared: boolean;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface ProductCreate {
|
export interface ProductCreate {
|
||||||
|
|
@ -198,6 +199,7 @@ export interface ProductCreate {
|
||||||
document?: string[];
|
document?: string[];
|
||||||
image?: File;
|
image?: File;
|
||||||
status?: Status;
|
status?: Status;
|
||||||
|
shared: boolean;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface ProductUpdate {
|
export interface ProductUpdate {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue