Merge commit 'dc3e62dc68' into develop
This commit is contained in:
commit
027e668fa6
8 changed files with 194 additions and 75 deletions
|
|
@ -47,8 +47,10 @@ const files = ref<any>(); //ไฟล์รับ
|
||||||
const filesReturn = ref<any>(); //ไฟล์คืน
|
const filesReturn = ref<any>(); //ไฟล์คืน
|
||||||
const OrganazationId = ref<string>(""); //id หน่วยงานที่รับ
|
const OrganazationId = ref<string>(""); //id หน่วยงานที่รับ
|
||||||
const OrganazationId2 = ref<string>(""); //id หน่วยงานที่คือ
|
const OrganazationId2 = ref<string>(""); //id หน่วยงานที่คือ
|
||||||
|
const OrgListMain = ref<DataOption[]>([]); ////รายการหน่วยงาน
|
||||||
const OrgList = ref<DataOption[]>([]); //รายการหน่วยงาน
|
const OrgList = ref<DataOption[]>([]); //รายการหน่วยงาน
|
||||||
const OrgList2 = ref<DataOption[]>([]); ////รายการหน่วยงาน
|
const OrgList2 = ref<DataOption[]>([]); //รายการหน่วยงาน
|
||||||
|
|
||||||
const Datereceive = ref<Date | null>(); //วันที่รับ
|
const Datereceive = ref<Date | null>(); //วันที่รับ
|
||||||
const Datereturn = ref<Date | null>(); //วันที่คืน
|
const Datereturn = ref<Date | null>(); //วันที่คืน
|
||||||
const nullii = ref<any>(null);
|
const nullii = ref<any>(null);
|
||||||
|
|
@ -119,6 +121,16 @@ function onSubmit(type: string, id: string) {
|
||||||
* function เรียกหน่วยงาน
|
* function เรียกหน่วยงาน
|
||||||
*/
|
*/
|
||||||
async function fetchOrgList() {
|
async function fetchOrgList() {
|
||||||
|
const newData = [
|
||||||
|
{
|
||||||
|
id: "00000000-0000-0000-0000-000000000000",
|
||||||
|
name: "สำนักนายกรัฐมนตรี",
|
||||||
|
},
|
||||||
|
];
|
||||||
|
// OrgListMain.value = newData;
|
||||||
|
// OrgList.value = newData;
|
||||||
|
// OrgList2.value = newData;
|
||||||
|
|
||||||
showLoader();
|
showLoader();
|
||||||
await http
|
await http
|
||||||
.get(config.API.activeOrganization)
|
.get(config.API.activeOrganization)
|
||||||
|
|
@ -133,8 +145,11 @@ async function fetchOrgList() {
|
||||||
name: item.orgName,
|
name: item.orgName,
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
OrgList.value = dataSystem;
|
|
||||||
OrgList2.value = dataSystem;
|
newData.push(...dataSystem);
|
||||||
|
OrgListMain.value = newData;
|
||||||
|
OrgList.value = newData;
|
||||||
|
OrgList2.value = newData;
|
||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
messageError($q, err);
|
messageError($q, err);
|
||||||
|
|
@ -148,14 +163,49 @@ async function fetchOrgList() {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* function ค้นหาข้อมูลใน select
|
||||||
|
* @param val คำค้นหา
|
||||||
|
* @param update Function
|
||||||
|
*/
|
||||||
|
function filterOption(val: string, update: Function, type: string) {
|
||||||
|
switch (type) {
|
||||||
|
case "receive":
|
||||||
|
update(() => {
|
||||||
|
OrgList.value = OrgListMain.value.filter(
|
||||||
|
(v: DataOption) => v.name.indexOf(val) > -1
|
||||||
|
);
|
||||||
|
});
|
||||||
|
break;
|
||||||
|
case "return":
|
||||||
|
update(() => {
|
||||||
|
OrgList2.value = OrgListMain.value.filter(
|
||||||
|
(v: DataOption) => v.name.indexOf(val) > -1
|
||||||
|
);
|
||||||
|
});
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* class inpui
|
||||||
|
* @param val ค่าสถานะ
|
||||||
|
*/
|
||||||
|
function classInput(val: boolean) {
|
||||||
|
return {
|
||||||
|
"full-width cursor-pointer ": val,
|
||||||
|
"full-width cursor-pointer inputgreen": !val,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* callback function จะทำงานเมื่อ modal มีการเปลี่ยนแปลง
|
* callback function จะทำงานเมื่อ modal มีการเปลี่ยนแปลง
|
||||||
*/
|
*/
|
||||||
watch(
|
watch(
|
||||||
() => props.modal,
|
() => props.modal,
|
||||||
() => {
|
async () => {
|
||||||
if (props.modal == true) {
|
if (props.modal == true) {
|
||||||
fetchOrgList();
|
await fetchOrgList();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
@ -167,15 +217,16 @@ watch(props, () => {
|
||||||
if (props.dataModal) {
|
if (props.dataModal) {
|
||||||
Datereceive.value = props.dataModal.dateReceiveInsignia;
|
Datereceive.value = props.dataModal.dateReceiveInsignia;
|
||||||
Datereturn.value = props.dataModal.dateReturnInsignia;
|
Datereturn.value = props.dataModal.dateReturnInsignia;
|
||||||
OrganazationId.value = props.dataModal.orgReceiveInsignia;
|
OrganazationId.value = props.dataModal.orgReceiveInsigniaId;
|
||||||
filesCheck.value = props.dataModal.docReceiveInsignia;
|
filesCheck.value = props.dataModal.docReceiveInsignia;
|
||||||
filesReturnCheck.value = props.dataModal.docReturnInsignia;
|
filesReturnCheck.value = props.dataModal.docReturnInsignia;
|
||||||
OrganazationId2.value =
|
OrganazationId2.value =
|
||||||
Datereturn.value != null
|
Datereturn.value != null
|
||||||
? props.dataModal.orgReturnInsignia == null ||
|
? props.dataModal.orgReturnInsigniaId === null ||
|
||||||
props.dataModal.orgReturnInsignia == "-"
|
props.dataModal.orgReturnInsigniaId === "-" ||
|
||||||
|
props.dataModal.orgReturnInsigniaId === ""
|
||||||
? "00000000-0000-0000-0000-000000000000"
|
? "00000000-0000-0000-0000-000000000000"
|
||||||
: props.dataModal.orgReturnInsignia
|
: props.dataModal.orgReturnInsigniaId
|
||||||
: "";
|
: "";
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
@ -183,7 +234,7 @@ watch(props, () => {
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<q-dialog v-model="props.modal" persistent>
|
<q-dialog v-model="props.modal" persistent>
|
||||||
<q-card style="min-width: 900px">
|
<q-card style="width: 1200px; max-width: 200vw">
|
||||||
<q-form
|
<q-form
|
||||||
greedy
|
greedy
|
||||||
@submit.prevent
|
@submit.prevent
|
||||||
|
|
@ -226,12 +277,12 @@ watch(props, () => {
|
||||||
outlined
|
outlined
|
||||||
:rules="[(val:string) => !!val || 'กรุณาเลือกวันที่ได้รับ']"
|
:rules="[(val:string) => !!val || 'กรุณาเลือกวันที่ได้รับ']"
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
class="inputgreen"
|
|
||||||
:model-value="
|
:model-value="
|
||||||
Datereceive != null ? date2Thai(Datereceive) : null
|
Datereceive != null ? date2Thai(Datereceive) : null
|
||||||
"
|
"
|
||||||
:label="`${'วันที่ได้รับ'}`"
|
:label="`${'วันที่ได้รับ'}`"
|
||||||
:disable="dateCheckReceive !== null"
|
:class="classInput(dateCheckReceive !== null)"
|
||||||
|
:readonly="dateCheckReceive !== null"
|
||||||
>
|
>
|
||||||
<template v-slot:prepend>
|
<template v-slot:prepend>
|
||||||
<q-icon
|
<q-icon
|
||||||
|
|
@ -271,6 +322,7 @@ watch(props, () => {
|
||||||
:rules="[(val:string) => val || 'กรุณาเลือกไฟล์หลักฐานการรับ']"
|
:rules="[(val:string) => val || 'กรุณาเลือกไฟล์หลักฐานการรับ']"
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
:disable="dateCheckReceive !== null"
|
:disable="dateCheckReceive !== null"
|
||||||
|
class="inputgreen"
|
||||||
>
|
>
|
||||||
<template v-slot:prepend>
|
<template v-slot:prepend>
|
||||||
<q-icon name="attach_file" color="primary" />
|
<q-icon name="attach_file" color="primary" />
|
||||||
|
|
@ -288,12 +340,16 @@ watch(props, () => {
|
||||||
emit-value
|
emit-value
|
||||||
map-options
|
map-options
|
||||||
outlined
|
outlined
|
||||||
|
use-input
|
||||||
v-model="OrganazationId"
|
v-model="OrganazationId"
|
||||||
lazy-rules
|
lazy-rules
|
||||||
:label="`หน่วยงานที่รับ`"
|
:label="`หน่วยงานที่รับ`"
|
||||||
:rules="[(val:string) => !!val || 'กรุณาเลือกหน่วยงานที่รับ']"
|
:rules="[(val:string) => !!val || 'กรุณาเลือกหน่วยงานที่รับ']"
|
||||||
:disable="dateCheckReceive !== null"
|
:class="classInput(dateCheckReceive !== null)"
|
||||||
class="inputgreen"
|
:readonly="dateCheckReceive !== null"
|
||||||
|
@filter="(inputValue:string,
|
||||||
|
doneFn:Function) => filterOption(inputValue, doneFn,'receive'
|
||||||
|
) "
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -328,7 +384,6 @@ watch(props, () => {
|
||||||
dense
|
dense
|
||||||
borderless
|
borderless
|
||||||
outlined
|
outlined
|
||||||
class="inputgreen"
|
|
||||||
:rules="[(val:string) => !!val || 'กรุณาเลือกวันที่คืน']"
|
:rules="[(val:string) => !!val || 'กรุณาเลือกวันที่คืน']"
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
:model-value="
|
:model-value="
|
||||||
|
|
@ -337,7 +392,8 @@ watch(props, () => {
|
||||||
:label="`${'วันที่คืน'}`"
|
:label="`${'วันที่คืน'}`"
|
||||||
clearable
|
clearable
|
||||||
@clear="clearReturnDate"
|
@clear="clearReturnDate"
|
||||||
:disable="dateCheckReturn !== null"
|
:class="classInput(dateCheckReturn !== null)"
|
||||||
|
:readonly="dateCheckReturn !== null"
|
||||||
>
|
>
|
||||||
<template v-slot:prepend>
|
<template v-slot:prepend>
|
||||||
<q-icon
|
<q-icon
|
||||||
|
|
@ -377,6 +433,7 @@ watch(props, () => {
|
||||||
:rules="[(val:string) => val || 'กรุณาเลือกไฟล์หลักฐานการคืน']"
|
:rules="[(val:string) => val || 'กรุณาเลือกไฟล์หลักฐานการคืน']"
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
:disable="dateCheckReturn !== null"
|
:disable="dateCheckReturn !== null"
|
||||||
|
class="inputgreen"
|
||||||
>
|
>
|
||||||
<template v-slot:prepend>
|
<template v-slot:prepend>
|
||||||
<q-icon name="attach_file" color="primary" />
|
<q-icon name="attach_file" color="primary" />
|
||||||
|
|
@ -396,10 +453,15 @@ watch(props, () => {
|
||||||
outlined
|
outlined
|
||||||
v-model="OrganazationId2"
|
v-model="OrganazationId2"
|
||||||
lazy-rules
|
lazy-rules
|
||||||
|
use-input
|
||||||
:label="`หน่วยงานที่คืน`"
|
:label="`หน่วยงานที่คืน`"
|
||||||
:rules="[(val:string) => !!val || 'กรุณาเลือกหน่วยงานที่คืน']"
|
:rules="[(val:string) => !!val || 'กรุณาเลือกหน่วยงานที่คืน']"
|
||||||
:disable="dateCheckReturn !== null"
|
:class="classInput(dateCheckReturn !== null)"
|
||||||
class="inputgreen"
|
:readonly="dateCheckReturn !== null"
|
||||||
|
@filter="(inputValue:string,
|
||||||
|
doneFn:Function) => filterOption(inputValue, doneFn,'return'
|
||||||
|
|
||||||
|
) "
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -152,8 +152,6 @@ function findlist(id: string = "", idCard: string) {
|
||||||
} else {
|
} else {
|
||||||
notifyError($q, "ไม่พบข้อมูลเลขประจำตัวประชาชนนี้");
|
notifyError($q, "ไม่พบข้อมูลเลขประจำตัวประชาชนนี้");
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(res);
|
|
||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
messageError($q, err);
|
messageError($q, err);
|
||||||
|
|
@ -236,6 +234,8 @@ function onSubmit() {
|
||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
messageError($q, err);
|
messageError($q, err);
|
||||||
|
})
|
||||||
|
.finally(() => {
|
||||||
hideLoader();
|
hideLoader();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
@ -269,6 +269,17 @@ function filterSelector(val: string, update: Function, name: string) {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* class inpui
|
||||||
|
* @param val ค่าสถานะ
|
||||||
|
*/
|
||||||
|
function classInput(val: boolean) {
|
||||||
|
return {
|
||||||
|
"full-width cursor-pointer ": val,
|
||||||
|
"full-width cursor-pointer inputgreen": !val,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* callback function จำทำงานเมื่อ props.modal = true เปิด popup เพิ่มรายชื่อบันทึกผล
|
* callback function จำทำงานเมื่อ props.modal = true เปิด popup เพิ่มรายชื่อบันทึกผล
|
||||||
*/
|
*/
|
||||||
|
|
@ -334,9 +345,9 @@ watch(props, () => {
|
||||||
v-model="employeeClass"
|
v-model="employeeClass"
|
||||||
:label="`ขรก.สามัญ/ลูกจ้างประจำ`"
|
:label="`ขรก.สามัญ/ลูกจ้างประจำ`"
|
||||||
@update:model-value="selectType"
|
@update:model-value="selectType"
|
||||||
:disable="status !== ''"
|
:class="classInput(status !== '')"
|
||||||
|
:readonly="status !== ''"
|
||||||
lazy-rules
|
lazy-rules
|
||||||
class="inputgreen"
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-12 text-weight-bold text-grey">
|
<div class="col-12 text-weight-bold text-grey">
|
||||||
|
|
@ -344,12 +355,17 @@ watch(props, () => {
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-12 col-sm-4">
|
<div class="col-xs-12 col-sm-4">
|
||||||
<q-input
|
<q-input
|
||||||
:disable="
|
:readonly="
|
||||||
disbleStatus || status == 'DONE' || status == 'PENDING'
|
disbleStatus || status == 'DONE' || status == 'PENDING'
|
||||||
"
|
"
|
||||||
|
:class="
|
||||||
|
classInput(
|
||||||
|
disbleStatus || status == 'DONE' || status == 'PENDING'
|
||||||
|
)
|
||||||
|
"
|
||||||
|
:disable="employeeClass == ''"
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
outlined
|
outlined
|
||||||
class="inputgreen"
|
|
||||||
v-model="cardid"
|
v-model="cardid"
|
||||||
dense
|
dense
|
||||||
lazy-rules
|
lazy-rules
|
||||||
|
|
@ -368,12 +384,12 @@ watch(props, () => {
|
||||||
|
|
||||||
<div class="col-xs-6 col-sm-4">
|
<div class="col-xs-6 col-sm-4">
|
||||||
<q-input
|
<q-input
|
||||||
disable
|
:disable="employeeClass == ''"
|
||||||
|
readonly
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
outlined
|
outlined
|
||||||
dense
|
dense
|
||||||
lazy-rules
|
lazy-rules
|
||||||
class="inputgreen"
|
|
||||||
borderless
|
borderless
|
||||||
v-model="fullName"
|
v-model="fullName"
|
||||||
:label="`${'ชื่อ-นามสกุล'}`"
|
:label="`${'ชื่อ-นามสกุล'}`"
|
||||||
|
|
@ -382,12 +398,12 @@ watch(props, () => {
|
||||||
|
|
||||||
<div class="col-xs-12 col-sm-4">
|
<div class="col-xs-12 col-sm-4">
|
||||||
<q-input
|
<q-input
|
||||||
disable
|
:disable="employeeClass == ''"
|
||||||
|
readonly
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
outlined
|
outlined
|
||||||
dense
|
dense
|
||||||
lazy-rules
|
lazy-rules
|
||||||
class="inputgreen"
|
|
||||||
borderless
|
borderless
|
||||||
v-model="position"
|
v-model="position"
|
||||||
:label="`ตำเเหน่ง`"
|
:label="`ตำเเหน่ง`"
|
||||||
|
|
@ -402,8 +418,10 @@ watch(props, () => {
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-12 col-sm-6">
|
<div class="col-xs-12 col-sm-6">
|
||||||
<q-input
|
<q-input
|
||||||
:disable="disbleStatus || status == 'DONE'"
|
:readonly="disbleStatus || status == 'DONE'"
|
||||||
:rules="[
|
:class="classInput(disbleStatus || status == 'DONE')"
|
||||||
|
:disable="employeeClass == ''"
|
||||||
|
:rules="disbleStatus || status == 'DONE' ? [] : [
|
||||||
(val:string) =>
|
(val:string) =>
|
||||||
!!val ||
|
!!val ||
|
||||||
'กรุณากรอกหมายเลขประกาศนีย์บัตรกำกับเครื่องราชอิสริยาภรณ์',
|
'กรุณากรอกหมายเลขประกาศนีย์บัตรกำกับเครื่องราชอิสริยาภรณ์',
|
||||||
|
|
@ -415,12 +433,13 @@ watch(props, () => {
|
||||||
v-model="Advertise"
|
v-model="Advertise"
|
||||||
lazy-rules
|
lazy-rules
|
||||||
label="หมายเลขประกาศนีย์บัตรกำกับเครื่องราชอิสริยาภรณ์"
|
label="หมายเลขประกาศนีย์บัตรกำกับเครื่องราชอิสริยาภรณ์"
|
||||||
class="inputgreen"
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-12 col-sm-6">
|
<div class="col-xs-12 col-sm-6">
|
||||||
<q-select
|
<q-select
|
||||||
:disable="disbleStatus || status == 'DONE'"
|
:readonly="disbleStatus || status == 'DONE'"
|
||||||
|
:class="classInput(disbleStatus || status == 'DONE')"
|
||||||
|
:disable="employeeClass == ''"
|
||||||
v-model="brand"
|
v-model="brand"
|
||||||
dense
|
dense
|
||||||
outlined
|
outlined
|
||||||
|
|
@ -432,12 +451,10 @@ watch(props, () => {
|
||||||
option-label="name"
|
option-label="name"
|
||||||
:options="filterinsigniaOp2"
|
:options="filterinsigniaOp2"
|
||||||
option-value="id"
|
option-value="id"
|
||||||
:readonly="false"
|
|
||||||
use-input
|
use-input
|
||||||
:borderless="false"
|
:borderless="false"
|
||||||
class="inputgreen"
|
|
||||||
style="min-width: 150px"
|
style="min-width: 150px"
|
||||||
:rules="[
|
:rules="disbleStatus || status == 'DONE' ? [] :[
|
||||||
(val:string) => !!val || 'กรุณากรอกชื่อชั้นตราเครื่องราชอิสริยาภรณ์',
|
(val:string) => !!val || 'กรุณากรอกชื่อชั้นตราเครื่องราชอิสริยาภรณ์',
|
||||||
]"
|
]"
|
||||||
@filter="(inputValue:string,doneFn:Function) =>
|
@filter="(inputValue:string,doneFn:Function) =>
|
||||||
|
|
@ -463,12 +480,13 @@ watch(props, () => {
|
||||||
</template>
|
</template>
|
||||||
<template #trigger>
|
<template #trigger>
|
||||||
<q-input
|
<q-input
|
||||||
:disable="disbleStatus || status == 'DONE'"
|
:readonly="disbleStatus || status == 'DONE'"
|
||||||
|
:class="classInput(disbleStatus || status == 'DONE')"
|
||||||
|
:disable="employeeClass == ''"
|
||||||
dense
|
dense
|
||||||
borderless
|
borderless
|
||||||
outlined
|
outlined
|
||||||
:rules="[(val:string) => !!val || 'กรุณาเลือกวันที่']"
|
:rules="disbleStatus || status == 'DONE' ? [] :[(val:string) => !!val || 'กรุณาเลือกวันที่']"
|
||||||
class="inputgreen"
|
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
:model-value="
|
:model-value="
|
||||||
receivedate != null ? date2Thai(receivedate) : undefined
|
receivedate != null ? date2Thai(receivedate) : undefined
|
||||||
|
|
@ -477,6 +495,7 @@ watch(props, () => {
|
||||||
>
|
>
|
||||||
<template v-if="receivedate" v-slot:append>
|
<template v-if="receivedate" v-slot:append>
|
||||||
<q-icon
|
<q-icon
|
||||||
|
v-if="!disbleStatus && status !== 'DONE'"
|
||||||
name="cancel"
|
name="cancel"
|
||||||
@click.stop.prevent="receivedate = null"
|
@click.stop.prevent="receivedate = null"
|
||||||
class="cursor-pointer"
|
class="cursor-pointer"
|
||||||
|
|
@ -496,9 +515,10 @@ watch(props, () => {
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-12 col-sm-6">
|
<div class="col-xs-12 col-sm-6">
|
||||||
<q-input
|
<q-input
|
||||||
:disable="disbleStatus || status == 'DONE'"
|
:readonly="disbleStatus || status == 'DONE'"
|
||||||
:rules="[(val:string) => !!val || 'กรุณากรอกทะเบียนฐานันดร']"
|
:class="classInput(disbleStatus || status == 'DONE')"
|
||||||
class="inputgreen"
|
:disable="employeeClass == ''"
|
||||||
|
:rules="disbleStatus || status == 'DONE' ? [] : [(val:string) => !!val || 'กรุณากรอกทะเบียนฐานันดร']"
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
dense
|
dense
|
||||||
borderless
|
borderless
|
||||||
|
|
@ -510,10 +530,16 @@ watch(props, () => {
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-12 col-sm-6">
|
<div class="col-xs-12 col-sm-6">
|
||||||
<q-input
|
<q-input
|
||||||
:disable="
|
:readonly="
|
||||||
disbleStatus || status == 'DONE' || status == 'PENDING'
|
disbleStatus || status == 'DONE' || status == 'PENDING'
|
||||||
"
|
"
|
||||||
:rules="[(val:string) => !!val || 'กรุณากรอกสังกัด']"
|
:class="
|
||||||
|
classInput(
|
||||||
|
disbleStatus || status == 'DONE' || status == 'PENDING'
|
||||||
|
)
|
||||||
|
"
|
||||||
|
:disable="employeeClass == ''"
|
||||||
|
:rules="disbleStatus || status == 'DONE' || status == 'PENDING' ? [] :[(val:string) => !!val || 'กรุณากรอกสังกัด']"
|
||||||
class="inputgreen"
|
class="inputgreen"
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
dense
|
dense
|
||||||
|
|
@ -526,11 +552,16 @@ watch(props, () => {
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-12 col-sm-6">
|
<div class="col-xs-12 col-sm-6">
|
||||||
<q-input
|
<q-input
|
||||||
:disable="
|
:readonly="
|
||||||
disbleStatus || status == 'DONE' || status == 'PENDING'
|
disbleStatus || status == 'DONE' || status == 'PENDING'
|
||||||
"
|
"
|
||||||
:rules="[(val:string) => !!val || 'กรุณากรอกสังกัด']"
|
:class="
|
||||||
class="inputgreen"
|
classInput(
|
||||||
|
disbleStatus || status == 'DONE' || status == 'PENDING'
|
||||||
|
)
|
||||||
|
"
|
||||||
|
:disable="employeeClass == ''"
|
||||||
|
:rules="disbleStatus || status == 'DONE' || status == 'PENDING' ? [] :[(val:string) => !!val || 'กรุณากรอกสังกัด']"
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
dense
|
dense
|
||||||
borderless
|
borderless
|
||||||
|
|
@ -554,6 +585,8 @@ watch(props, () => {
|
||||||
:enableTimePicker="false"
|
:enableTimePicker="false"
|
||||||
week-start="0"
|
week-start="0"
|
||||||
:readonly="disbleStatus || status == 'DONE'"
|
:readonly="disbleStatus || status == 'DONE'"
|
||||||
|
:class="classInput(disbleStatus || status == 'DONE')"
|
||||||
|
:disable="employeeClass == ''"
|
||||||
>
|
>
|
||||||
<template #year="{ year }">
|
<template #year="{ year }">
|
||||||
{{ year + 543 }}
|
{{ year + 543 }}
|
||||||
|
|
@ -563,12 +596,13 @@ watch(props, () => {
|
||||||
</template>
|
</template>
|
||||||
<template #trigger>
|
<template #trigger>
|
||||||
<q-input
|
<q-input
|
||||||
:disable="disbleStatus || status == 'DONE'"
|
:readonly="disbleStatus || status == 'DONE'"
|
||||||
|
:class="classInput(disbleStatus || status == 'DONE')"
|
||||||
|
:disable="employeeClass == ''"
|
||||||
dense
|
dense
|
||||||
borderless
|
borderless
|
||||||
outlined
|
outlined
|
||||||
:rules="[(val:string) => !!val || 'กรุณาเลือกวันที่']"
|
:rules="disbleStatus || status == 'DONE' ? []:[(val:string) => !!val || 'กรุณาเลือกวันที่']"
|
||||||
class="inputgreen"
|
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
:model-value="
|
:model-value="
|
||||||
announceDate != null ? date2Thai(announceDate) : undefined
|
announceDate != null ? date2Thai(announceDate) : undefined
|
||||||
|
|
@ -577,6 +611,7 @@ watch(props, () => {
|
||||||
>
|
>
|
||||||
<template v-if="announceDate" v-slot:append>
|
<template v-if="announceDate" v-slot:append>
|
||||||
<q-icon
|
<q-icon
|
||||||
|
v-if="!disbleStatus && status !== 'DONE'"
|
||||||
name="cancel"
|
name="cancel"
|
||||||
@click.stop.prevent="announceDate = null"
|
@click.stop.prevent="announceDate = null"
|
||||||
class="cursor-pointer"
|
class="cursor-pointer"
|
||||||
|
|
@ -596,58 +631,62 @@ watch(props, () => {
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-12 col-sm-4">
|
<div class="col-xs-12 col-sm-4">
|
||||||
<q-input
|
<q-input
|
||||||
:disable="disbleStatus || status == 'DONE'"
|
:readonly="disbleStatus || status == 'DONE'"
|
||||||
|
:class="classInput(disbleStatus || status == 'DONE')"
|
||||||
|
:disable="employeeClass == ''"
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
outlined
|
outlined
|
||||||
dense
|
dense
|
||||||
lazy-rules
|
lazy-rules
|
||||||
class="inputgreen"
|
|
||||||
borderless
|
borderless
|
||||||
v-model="volume"
|
v-model="volume"
|
||||||
:label="`เล่มที่`"
|
:label="`เล่มที่`"
|
||||||
:rules="[(val:string) => !!val || 'กรุณากรอกเล่มที่']"
|
:rules="disbleStatus || status == 'DONE' ? []:[(val:string) => !!val || 'กรุณากรอกเล่มที่']"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-12 col-sm-4">
|
<div class="col-xs-12 col-sm-4">
|
||||||
<q-input
|
<q-input
|
||||||
:disable="disbleStatus || status == 'DONE'"
|
:readonly="disbleStatus || status == 'DONE'"
|
||||||
|
:class="classInput(disbleStatus || status == 'DONE')"
|
||||||
|
:disable="employeeClass == ''"
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
outlined
|
outlined
|
||||||
dense
|
dense
|
||||||
lazy-rules
|
lazy-rules
|
||||||
class="inputgreen"
|
|
||||||
borderless
|
borderless
|
||||||
v-model="episode"
|
v-model="episode"
|
||||||
:label="`ตอนที่`"
|
:label="`ตอนที่`"
|
||||||
:rules="[(val:string) => !!val || 'กรุณากรอกตอนที่']"
|
:rules="disbleStatus || status == 'DONE' ? []:[(val:string) => !!val || 'กรุณากรอกตอนที่']"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-12 col-sm-6">
|
<div class="col-xs-12 col-sm-6">
|
||||||
<q-input
|
<q-input
|
||||||
:disable="disbleStatus || status == 'DONE'"
|
:readonly="disbleStatus || status == 'DONE'"
|
||||||
|
:class="classInput(disbleStatus || status == 'DONE')"
|
||||||
|
:disable="employeeClass == ''"
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
outlined
|
outlined
|
||||||
dense
|
dense
|
||||||
lazy-rules
|
lazy-rules
|
||||||
class="inputgreen"
|
|
||||||
borderless
|
borderless
|
||||||
v-model="duty"
|
v-model="duty"
|
||||||
:label="`หน้าที่`"
|
:label="`หน้าที่`"
|
||||||
:rules="[(val:string) => !!val || 'กรุณากรอกหน้าที่']"
|
:rules="disbleStatus || status == 'DONE' ? []:[(val:string) => !!val || 'กรุณากรอกหน้าที่']"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-12 col-sm-6">
|
<div class="col-xs-12 col-sm-6">
|
||||||
<q-input
|
<q-input
|
||||||
:disable="disbleStatus || status == 'DONE'"
|
:readonly="disbleStatus || status == 'DONE'"
|
||||||
|
:class="classInput(disbleStatus || status == 'DONE')"
|
||||||
|
:disable="employeeClass == ''"
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
outlined
|
outlined
|
||||||
dense
|
dense
|
||||||
lazy-rules
|
lazy-rules
|
||||||
class="inputgreen"
|
|
||||||
borderless
|
borderless
|
||||||
v-model="announced"
|
v-model="announced"
|
||||||
:label="`ลำดับที่`"
|
:label="`ลำดับที่`"
|
||||||
:rules="[(val:string) => !!val || 'กรุณากรอกลำดับที่']"
|
:rules="disbleStatus || status == 'DONE' ? []:[(val:string) => !!val || 'กรุณากรอกลำดับที่']"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-12 q-my-xs"><q-separator size="2px" /></div>
|
<div class="col-12 q-my-xs"><q-separator size="2px" /></div>
|
||||||
|
|
@ -674,11 +713,12 @@ watch(props, () => {
|
||||||
<template #trigger>
|
<template #trigger>
|
||||||
<q-input
|
<q-input
|
||||||
:disable="disbleStatus"
|
:disable="disbleStatus"
|
||||||
|
:readonly="disbleStatus"
|
||||||
|
:class="classInput(disbleStatus)"
|
||||||
dense
|
dense
|
||||||
borderless
|
borderless
|
||||||
outlined
|
outlined
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
class="inputgreen"
|
|
||||||
:model-value="
|
:model-value="
|
||||||
invoiceDate != null ? date2Thai(invoiceDate) : undefined
|
invoiceDate != null ? date2Thai(invoiceDate) : undefined
|
||||||
"
|
"
|
||||||
|
|
@ -701,9 +741,10 @@ watch(props, () => {
|
||||||
<div class="col-xs-12 col-sm-6">
|
<div class="col-xs-12 col-sm-6">
|
||||||
<q-select
|
<q-select
|
||||||
:disable="disbleStatus"
|
:disable="disbleStatus"
|
||||||
|
:readonly="disbleStatus"
|
||||||
|
:class="classInput(disbleStatus)"
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
:options="paymentOp"
|
:options="paymentOp"
|
||||||
class="inputgreen"
|
|
||||||
dense
|
dense
|
||||||
borderless
|
borderless
|
||||||
option-label="label"
|
option-label="label"
|
||||||
|
|
@ -719,6 +760,8 @@ watch(props, () => {
|
||||||
<div v-if="payment === 'จัดส่งทางไปรษณีย์'" class="col-12">
|
<div v-if="payment === 'จัดส่งทางไปรษณีย์'" class="col-12">
|
||||||
<q-input
|
<q-input
|
||||||
:disable="disbleStatus"
|
:disable="disbleStatus"
|
||||||
|
:readonly="disbleStatus"
|
||||||
|
:class="classInput(disbleStatus)"
|
||||||
label="ที่อยู่ที่จ่าย"
|
label="ที่อยู่ที่จ่าย"
|
||||||
dense
|
dense
|
||||||
lazy-rules
|
lazy-rules
|
||||||
|
|
@ -726,7 +769,6 @@ watch(props, () => {
|
||||||
outlined
|
outlined
|
||||||
v-model="addressPayment"
|
v-model="addressPayment"
|
||||||
type="textarea"
|
type="textarea"
|
||||||
class="inputgreen"
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -62,6 +62,17 @@ function onSubmit() {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* class inpui
|
||||||
|
* @param val ค่าสถานะ
|
||||||
|
*/
|
||||||
|
function classInput(val: boolean) {
|
||||||
|
return {
|
||||||
|
"full-width cursor-pointer ": val,
|
||||||
|
"full-width cursor-pointer inputgreen": !val,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
watch(props, () => {
|
watch(props, () => {
|
||||||
if (props.modal === true) {
|
if (props.modal === true) {
|
||||||
amount.value = props.insigniadata.total;
|
amount.value = props.insigniadata.total;
|
||||||
|
|
@ -91,13 +102,13 @@ watch(props, () => {
|
||||||
<q-input
|
<q-input
|
||||||
hide-bottom-space
|
hide-bottom-space
|
||||||
outlined
|
outlined
|
||||||
class="inputgreen"
|
|
||||||
v-model="title"
|
v-model="title"
|
||||||
dense
|
dense
|
||||||
lazy-rules
|
lazy-rules
|
||||||
type="text"
|
type="text"
|
||||||
label="เครื่องราชฯ"
|
label="เครื่องราชฯ"
|
||||||
disable
|
:class="classInput(true)"
|
||||||
|
readonly
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-12 col-sm-6">
|
<div class="col-xs-12 col-sm-6">
|
||||||
|
|
|
||||||
|
|
@ -343,7 +343,6 @@ onMounted(() => {
|
||||||
outlined
|
outlined
|
||||||
dense
|
dense
|
||||||
lazy-rules
|
lazy-rules
|
||||||
class="inputgreen"
|
|
||||||
borderless
|
borderless
|
||||||
v-model="fullName"
|
v-model="fullName"
|
||||||
:label="`${'ชื่อ-นามสกุล'}`"
|
:label="`${'ชื่อ-นามสกุล'}`"
|
||||||
|
|
@ -362,7 +361,7 @@ onMounted(() => {
|
||||||
<q-input
|
<q-input
|
||||||
:rules="[(val:string) => !!val || 'กรุณาเลือกเครื่องราชฯ']"
|
:rules="[(val:string) => !!val || 'กรุณาเลือกเครื่องราชฯ']"
|
||||||
v-model="brand"
|
v-model="brand"
|
||||||
disable
|
readonly
|
||||||
dense
|
dense
|
||||||
outlined
|
outlined
|
||||||
lazy-rules
|
lazy-rules
|
||||||
|
|
|
||||||
|
|
@ -89,6 +89,8 @@ interface ResponseRecordLists {
|
||||||
status: string;
|
status: string;
|
||||||
typePayment: string;
|
typePayment: string;
|
||||||
volumeNo: string;
|
volumeNo: string;
|
||||||
|
orgReceiveInsigniaId: string;
|
||||||
|
orgReturnInsigniaId: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
interface ResponseProfile {
|
interface ResponseProfile {
|
||||||
|
|
|
||||||
|
|
@ -112,11 +112,13 @@ export const useResultDataStore = defineStore("insigniaResult", () => {
|
||||||
typepay: e.typePayment,
|
typepay: e.typePayment,
|
||||||
address: e.address,
|
address: e.address,
|
||||||
dateReceiveInsignia: e.dateReceiveInsignia,
|
dateReceiveInsignia: e.dateReceiveInsignia,
|
||||||
dateReturnInsignia: e.dateReturnInsignia,
|
|
||||||
docReceiveInsignia: e.docReceiveInsignia,
|
docReceiveInsignia: e.docReceiveInsignia,
|
||||||
docReturnInsignia: e.docReturnInsignia,
|
|
||||||
orgReceiveInsignia: e.orgReceiveInsignia,
|
orgReceiveInsignia: e.orgReceiveInsignia,
|
||||||
|
orgReceiveInsigniaId: e.orgReceiveInsigniaId,
|
||||||
|
dateReturnInsignia: e.dateReturnInsignia,
|
||||||
|
docReturnInsignia: e.docReturnInsignia,
|
||||||
orgReturnInsignia: e.orgReturnInsignia,
|
orgReturnInsignia: e.orgReturnInsignia,
|
||||||
|
orgReturnInsigniaId: e.orgReturnInsigniaId,
|
||||||
}));
|
}));
|
||||||
|
|
||||||
rows.value = alllist;
|
rows.value = alllist;
|
||||||
|
|
|
||||||
|
|
@ -557,7 +557,6 @@ onMounted(async () => {
|
||||||
map-options
|
map-options
|
||||||
:options="columns"
|
:options="columns"
|
||||||
option-value="name"
|
option-value="name"
|
||||||
|
|
||||||
style="min-width: 140px"
|
style="min-width: 140px"
|
||||||
class="col-xs-12 col-sm-3 col-md-2"
|
class="col-xs-12 col-sm-3 col-md-2"
|
||||||
/>
|
/>
|
||||||
|
|
@ -686,6 +685,7 @@ onMounted(async () => {
|
||||||
label="คืนเครื่องราชฯ"
|
label="คืนเครื่องราชฯ"
|
||||||
@click="editData(props.row.id)"
|
@click="editData(props.row.id)"
|
||||||
color="blue"
|
color="blue"
|
||||||
|
size="sm"
|
||||||
/>
|
/>
|
||||||
</q-td>
|
</q-td>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -267,7 +267,6 @@ onMounted(() => {
|
||||||
map-options
|
map-options
|
||||||
:options="columns"
|
:options="columns"
|
||||||
option-value="name"
|
option-value="name"
|
||||||
|
|
||||||
style="min-width: 140px"
|
style="min-width: 140px"
|
||||||
/>
|
/>
|
||||||
</q-toolbar>
|
</q-toolbar>
|
||||||
|
|
@ -320,9 +319,11 @@ onMounted(() => {
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div v-else-if="col.name == 'fullName'">
|
<div v-else-if="col.name == 'fullName'">
|
||||||
{{ props.row.prefix ? props.row.prefix : ""
|
{{
|
||||||
}}{{ props.row.firstName ? props.row.firstName : "" }}
|
props.row.firstName
|
||||||
{{ props.row.lastName ? props.row.lastName : "" }}
|
? `${props.row.prefix}${props.row.firstName}${props.row.lastName}`
|
||||||
|
: "-"
|
||||||
|
}}
|
||||||
</div>
|
</div>
|
||||||
<div v-else-if="col.name === 'org'" class="table_ellipsis">
|
<div v-else-if="col.name === 'org'" class="table_ellipsis">
|
||||||
{{ col.value ? col.value : "-" }}
|
{{ col.value ? col.value : "-" }}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue