ui การเพิ่มโครงสร้าง
This commit is contained in:
parent
2263302976
commit
b4f6c41021
2 changed files with 104 additions and 18 deletions
|
|
@ -62,6 +62,8 @@ const typeOp = ref<DataOption[]>([
|
||||||
},
|
},
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
const selectType = ref<string[]>([]);
|
||||||
|
|
||||||
//ฟอร์มเพิ่มโครงสร้าง
|
//ฟอร์มเพิ่มโครงสร้าง
|
||||||
const formData = reactive<FormDataNewStructure>({
|
const formData = reactive<FormDataNewStructure>({
|
||||||
orgRevisionId: "",
|
orgRevisionId: "",
|
||||||
|
|
@ -69,10 +71,30 @@ const formData = reactive<FormDataNewStructure>({
|
||||||
typeDraft: "",
|
typeDraft: "",
|
||||||
});
|
});
|
||||||
|
|
||||||
/**
|
/** ฟังก์ชันยืนยันการบันทึกการกสร้างโครงสร้าง*/
|
||||||
* ฟังก์ชันยืนยันการบันทึกการกสร้างโครงสร้าง
|
|
||||||
*/
|
|
||||||
function onSubmit() {
|
function onSubmit() {
|
||||||
|
//เช็คการทำสำเนา
|
||||||
|
formData.typeDraft =
|
||||||
|
selectType.value.includes("ORG") &&
|
||||||
|
selectType.value.includes("PERSON") &&
|
||||||
|
selectType.value.includes("POSITION") &&
|
||||||
|
selectType.value.includes("ROLE")
|
||||||
|
? "ORG_POSITION_PERSON_ROLE"
|
||||||
|
: selectType.value.includes("ORG") &&
|
||||||
|
selectType.value.includes("PERSON") &&
|
||||||
|
selectType.value.includes("POSITION")
|
||||||
|
? "ORG_POSITION_PERSON"
|
||||||
|
: selectType.value.includes("ORG") &&
|
||||||
|
selectType.value.includes("POSITION") &&
|
||||||
|
selectType.value.includes("ROLE")
|
||||||
|
? "ORG_POSITION_ROLE"
|
||||||
|
: selectType.value.includes("ORG") &&
|
||||||
|
selectType.value.includes("POSITION")
|
||||||
|
? "ORG_POSITION"
|
||||||
|
: selectType.value.includes("ORG")
|
||||||
|
? "ORG"
|
||||||
|
: "NEW";
|
||||||
|
|
||||||
dialogConfirm(
|
dialogConfirm(
|
||||||
$q,
|
$q,
|
||||||
async () => {
|
async () => {
|
||||||
|
|
@ -102,19 +124,16 @@ function onSubmit() {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/** ฟังก์ชัน ปิด popup และกำหนดฟอร์มเพิ่มโครงสร้างเป็น Default*/
|
||||||
* ฟังก์ชัน ปิด popup และกำหนดฟอร์มเพิ่มโครงสร้างเป็น Default
|
|
||||||
*/
|
|
||||||
function close() {
|
function close() {
|
||||||
modal.value = false;
|
modal.value = false;
|
||||||
formData.orgRevisionId = "";
|
formData.orgRevisionId = "";
|
||||||
formData.orgRevisionName = "";
|
formData.orgRevisionName = "";
|
||||||
formData.typeDraft = "";
|
formData.typeDraft = "";
|
||||||
|
selectType.value = [];
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/** ฟังก์ชันเรียกข้อมูลประวัติโครงสร้าง*/
|
||||||
* ฟังก์ชันเรียกข้อมูลประวัติโครงสร้าง
|
|
||||||
*/
|
|
||||||
function fetchOrgRevision() {
|
function fetchOrgRevision() {
|
||||||
showLoader();
|
showLoader();
|
||||||
http
|
http
|
||||||
|
|
@ -138,15 +157,25 @@ function fetchOrgRevision() {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ฟังก์ชันเลือกทำสำเนา
|
||||||
|
* @param val รายการที่เลือก
|
||||||
|
*/
|
||||||
|
function updateSelectCopy(val: string[]) {
|
||||||
|
if (!val.includes("ORG")) {
|
||||||
|
selectType.value = [];
|
||||||
|
} else if (!val.includes("POSITION")) {
|
||||||
|
selectType.value = ["ORG"];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ดูการเปลี่ยนแปลง modal เมื่อเป็น true
|
* ดูการเปลี่ยนแปลง modal เมื่อเป็น true
|
||||||
*
|
|
||||||
* type ไม่เป็นการสร้างใหม่ให้เรียกข้อมูลประวัติโครงสร้าง
|
* type ไม่เป็นการสร้างใหม่ให้เรียกข้อมูลประวัติโครงสร้าง
|
||||||
*/
|
*/
|
||||||
watch(
|
watch(
|
||||||
() => modal.value,
|
() => modal.value,
|
||||||
() => {
|
() => {
|
||||||
modal.value && (formData.typeDraft = type.value);
|
|
||||||
modal.value && type.value !== "NEW" && fetchOrgRevision();
|
modal.value && type.value !== "NEW" && fetchOrgRevision();
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
@ -161,7 +190,7 @@ watch(
|
||||||
|
|
||||||
<q-card-section>
|
<q-card-section>
|
||||||
<div class="row q-col-gutter-sm">
|
<div class="row q-col-gutter-sm">
|
||||||
<div class="col-6">
|
<div class="col-12">
|
||||||
<q-input
|
<q-input
|
||||||
v-model="formData.orgRevisionName"
|
v-model="formData.orgRevisionName"
|
||||||
ref="orgRevisionNameRef"
|
ref="orgRevisionNameRef"
|
||||||
|
|
@ -173,8 +202,55 @@ watch(
|
||||||
:rules="[(val:string) => !!val || `${'กรุณากรอกชื่อโครงสร้าง'}`]"
|
:rules="[(val:string) => !!val || `${'กรุณากรอกชื่อโครงสร้าง'}`]"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-6">
|
<div class="col-12" v-if="type === 'ADD'">
|
||||||
<q-select
|
เลือกทำสำเนา
|
||||||
|
<div class="column">
|
||||||
|
<div class="col">
|
||||||
|
<q-checkbox
|
||||||
|
v-model="selectType"
|
||||||
|
label="โครงสร้าง"
|
||||||
|
color="primary"
|
||||||
|
val="ORG"
|
||||||
|
@update:model-value="updateSelectCopy"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div class="col">
|
||||||
|
<q-checkbox
|
||||||
|
v-model="selectType"
|
||||||
|
:disable="!selectType.includes('ORG')"
|
||||||
|
label="ตำแหน่ง"
|
||||||
|
color="primary"
|
||||||
|
val="POSITION"
|
||||||
|
@update:model-value="updateSelectCopy"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div class="col">
|
||||||
|
<q-checkbox
|
||||||
|
v-model="selectType"
|
||||||
|
label="คนครอง"
|
||||||
|
color="primary"
|
||||||
|
val="PERSON"
|
||||||
|
:disable="
|
||||||
|
!selectType.includes('ORG') ||
|
||||||
|
!selectType.includes('POSITION')
|
||||||
|
"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div class="col">
|
||||||
|
<q-checkbox
|
||||||
|
v-model="selectType"
|
||||||
|
label="สิทธิ์"
|
||||||
|
color="primary"
|
||||||
|
val="ROLE"
|
||||||
|
:disable="
|
||||||
|
!selectType.includes('ORG') ||
|
||||||
|
!selectType.includes('POSITION')
|
||||||
|
"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- <q-select
|
||||||
for="#type"
|
for="#type"
|
||||||
ref="typeRef"
|
ref="typeRef"
|
||||||
readonly
|
readonly
|
||||||
|
|
@ -190,12 +266,12 @@ watch(
|
||||||
label="ประเภทการโคลน"
|
label="ประเภทการโคลน"
|
||||||
:rules="[(val:string) => !!val || `${'กรุณาเลือกประเภทการโคลน'}`]"
|
:rules="[(val:string) => !!val || `${'กรุณาเลือกประเภทการโคลน'}`]"
|
||||||
lazy-rules
|
lazy-rules
|
||||||
/>
|
/> -->
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</q-card-section>
|
</q-card-section>
|
||||||
<q-separator />
|
<q-separator />
|
||||||
<q-card-actions align="right" class="bg-white text-teal">
|
<q-card-actions align="right">
|
||||||
<q-btn type="submit" :label="`บันทึก`" color="public" />
|
<q-btn type="submit" :label="`บันทึก`" color="public" />
|
||||||
</q-card-actions>
|
</q-card-actions>
|
||||||
</q-form>
|
</q-form>
|
||||||
|
|
|
||||||
|
|
@ -285,7 +285,17 @@ onMounted(async () => {
|
||||||
</q-btn-dropdown>
|
</q-btn-dropdown>
|
||||||
</q-btn-group>
|
</q-btn-group>
|
||||||
|
|
||||||
<q-btn-dropdown
|
<q-btn
|
||||||
|
v-if="checkPermission($route)?.attrOwnership == 'OWNER'"
|
||||||
|
color="green-6"
|
||||||
|
dense
|
||||||
|
unelevated
|
||||||
|
label="เพิ่มโครงสร้าง"
|
||||||
|
@click="ocClickAddStructure('ADD')"
|
||||||
|
class="q-px-md"
|
||||||
|
/>
|
||||||
|
|
||||||
|
<!-- <q-btn-dropdown
|
||||||
v-if="checkPermission($route)?.attrOwnership == 'OWNER'"
|
v-if="checkPermission($route)?.attrOwnership == 'OWNER'"
|
||||||
dense
|
dense
|
||||||
unelevated
|
unelevated
|
||||||
|
|
@ -307,7 +317,7 @@ onMounted(async () => {
|
||||||
</q-item-section>
|
</q-item-section>
|
||||||
</q-item>
|
</q-item>
|
||||||
</q-list>
|
</q-list>
|
||||||
</q-btn-dropdown>
|
</q-btn-dropdown> -->
|
||||||
|
|
||||||
<q-space />
|
<q-space />
|
||||||
<q-btn
|
<q-btn
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue