- ผูก api ออกคำสั่งให้ครบ loop

- แก้ label
This commit is contained in:
Warunee Tamkoo 2023-08-21 18:31:23 +07:00
parent b1c37ad2e0
commit 8f16fadeea
9 changed files with 196 additions and 86 deletions

View file

@ -203,20 +203,22 @@ onMounted(async () => {
fecthTypeOption("noData");
}
});
watch(byOrder, async () => {
await http
.get(config.API.approverOC(byOrder.value))
.then((res: any) => {
CommandOption.value = res.data.result;
console.log(CommandOption.value);
// console.log(CommandOption.value);
})
.catch((e: any) => {
console.log(e);
});
});
watch(nameCommand, async () => {
console.log(nameCommand.value);
console.log(positionCommand.value);
// console.log(nameCommand.value);
// console.log(positionCommand.value);
if (positionCommand.value === "" || positionCommand.value === undefined) {
positionCommand.value = nameCommand.value.positionName;
@ -250,12 +252,13 @@ const fecthTypeOption = async (actions: string) => {
hideLoader();
});
};
const fetchdetailOrder = async () => {
let orderIdString = orderId.toString();
await http
.get(config.API.detailOrder(orderIdString))
.then((res: any) => {
console.log(typeOrderOption.value);
// console.log(typeOrderOption.value);
const data = res.data.result;
typeOrder.value = typeOrderOption.value.find(
@ -268,7 +271,7 @@ const fetchdetailOrder = async () => {
byOrder.value = data.orderBy;
nameCommand.value = data.signatoryBy;
positionCommand.value = data.signatoryPosition;
console.log(nameCommand.value);
// console.log("nameCommand===>",nameCommand.value);
examRound.value = data.examRound;
conclusionRegisterNo.value = data.conclusionRegisterNo;
@ -307,6 +310,19 @@ const fecthExamRoundOption = async () => {
};
const submit = async () => {
console.log("nameCommand ===>", nameCommand.value);
let signBy = null;
if (!nameCommand.value.length) {
signBy = await nameCommand.value.name;
} else {
const name2 = await CommandOption.value.find((x: any) => x.id == nameCommand.value.id);
signBy = await name2?.name;
console.log("signBy", signBy);
}
const orderByOrganizationName = await byOrderOption.value.find((x:any)=>x.id == byOrder.value)?.name;
const formdata = {
orderTypeValue: typeOrder.value.id,
orderTitle: nameOrder.value,
@ -315,13 +331,30 @@ const submit = async () => {
orderYear: dateYear.value,
orderDate: dateCommand.value,
orderBy: byOrder.value,
orderByOrganizationName: orderByOrganizationName,
registerPosition: "",
signatoryBy:
nameCommand.value.id === undefined
? nameCommand.value
: nameCommand.value.id,
signatoryBy: signBy,
signatoryPosition: positionCommand.value,
};
// {
// "orderTypeValue": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
// "orderTitle": "string",
// "orderNo": "string",
// "orderYear": 0,
// "orderDate": "2023-08-21T09:46:54.354Z",
// "orderBy": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
// "orderByOrganizationName": "string",
// "signatoryBy": "string",
// "signatoryPosition": "string",
// "examRound": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
// "registerPosition": "string",
// "conclusionRegisterNo": "string",
// "conclusionRegisterDate": "2023-08-21T09:46:54.354Z",
// "conclusionResultNo": "string",
// "conclusionResultDate": "2023-08-21T09:46:54.354Z"
// }
if (
typeOrder.value.commandCode == "C-PM-01" ||
typeOrder.value.commandCode == "C-PM-02" ||
@ -448,7 +481,7 @@ const updateOrder = async (formData: Object, orderId: string) => {
.then((res) => {
console.log(res);
next();
success($q, "แก้ไขข้อมูลสำเร็จ");
success($q, "บันทึกข้อมูลสำเร็จ");
})
.catch((e) => {
messageError($q, e);
@ -486,7 +519,8 @@ const getClass = (val: boolean) => {
</div>
<div class="row col-xs-7 col-md-3 q-col-gutter-x-xs">
<div class="col-6">
<q-input :class="getClass(true)" outlined dense lazy-rules v-model="command" hide-bottom-space :label="`${'คำสั่งเลขที่'}`"/>
<q-input :class="getClass(true)" outlined dense lazy-rules v-model="command" hide-bottom-space
:label="`${'คำสั่งเลขที่'}`" />
</div>
<label class="col-1 flex justify-center items-center text-bold">/</label>
<div class="col-5">
@ -527,7 +561,7 @@ const getClass = (val: boolean) => {
<selector :class="getClass(true)" outlined dense lazy-rules v-model="byOrder"
:rules="[(val: string) => !!val || `${'กรุณาเลือกคำสั่งโดย'}`]" emit-value hide-bottom-space
:label="`${'คำสั่งโดย'}`" map-options option-label="name" :options="byOrderOption" option-value="id" use-input
input-debounce="0" @update:model-value="(nameCommand = ''), (positionCommand = '')" />
input-debounce="0" @update:model-value="(nameCommand = ''), (positionCommand = ''), (console.log(byOrder))" />
</div>
<div class="col-xs-12 col-md-6">
<selector :class="getClass(true)" outlined dense lazy-rules v-model="nameCommand"
@ -1009,7 +1043,7 @@ const getClass = (val: boolean) => {
:rules="[(val) => !!val || `${'กรุณากรอกให้ดำรงตำแหน่ง ณ'}`]" :label="`${'ให้ดำรงตำแหน่ง ณ'}`"
hide-bottom-space />
</div>
<div class="col-xs-12 col-md-4">
<q-input :class="getClass(true)" outlined dense lazy-rules v-model="experimentOc" :rules="[
(val) =>
@ -1019,58 +1053,58 @@ const getClass = (val: boolean) => {
</div>
<div class="col-md-4"></div>
<div class="col-xs-12 col-md-4">
<datepicker menu-class-name="modalfix" v-model="experimentformDate" :locale="'th'" autoApply borderless
:enableTimePicker="false" week-start="0">
<template #year="{ year }">
{{ year + 543 }}
</template>
<template #year-overlay-value="{ value }">
{{ parseInt(value + 543) }}
</template>
<template #trigger>
<q-input outlined dense class="full-width datepicker" :model-value="experimentformDate != null
? date2Thai(experimentformDate)
: null
" :label="`${'ทดลองปฏิบัติหน้าที่ราชการตั้งแต่วันที่ '}`" :rules="[
<div class="col-xs-12 col-md-4">
<datepicker menu-class-name="modalfix" v-model="experimentformDate" :locale="'th'" autoApply borderless
:enableTimePicker="false" week-start="0">
<template #year="{ year }">
{{ year + 543 }}
</template>
<template #year-overlay-value="{ value }">
{{ parseInt(value + 543) }}
</template>
<template #trigger>
<q-input outlined dense class="full-width datepicker" :model-value="experimentformDate != null
? date2Thai(experimentformDate)
: null
" :label="`${'ทดลองปฏิบัติหน้าที่ราชการตั้งแต่วันที่ '}`" :rules="[
(val) =>
!!val ||
`${'กรุณาเลือกลงวันที่ทดลองปฏิบัติหน้าที่ราชการตั้งแต่วันที่ '}`,
]">
<template v-slot:prepend>
<q-icon name="event" class="cursor-pointer" style="color: var(--q-primary)">
</q-icon>
</template>
</q-input>
</template>
</datepicker>
</div>
<template v-slot:prepend>
<q-icon name="event" class="cursor-pointer" style="color: var(--q-primary)">
</q-icon>
</template>
</q-input>
</template>
</datepicker>
</div>
<div class="col-xs-12 col-md-4">
<datepicker menu-class-name="modalfix" v-model="experimenttoDate" :locale="'th'" autoApply borderless
:enableTimePicker="false" week-start="0">
<template #year="{ year }">
{{ year + 543 }}
</template>
<template #year-overlay-value="{ value }">
{{ parseInt(value + 543) }}
</template>
<template #trigger>
<q-input outlined dense class="full-width datepicker" :model-value="experimenttoDate != null ? date2Thai(experimenttoDate) : null
" :label="`${'ทดลองปฏิบัติหน้าที่ราชการถึงวันที่ '}`" :rules="[
<div class="col-xs-12 col-md-4">
<datepicker menu-class-name="modalfix" v-model="experimenttoDate" :locale="'th'" autoApply borderless
:enableTimePicker="false" week-start="0">
<template #year="{ year }">
{{ year + 543 }}
</template>
<template #year-overlay-value="{ value }">
{{ parseInt(value + 543) }}
</template>
<template #trigger>
<q-input outlined dense class="full-width datepicker" :model-value="experimenttoDate != null ? date2Thai(experimenttoDate) : null
" :label="`${'ทดลองปฏิบัติหน้าที่ราชการถึงวันที่ '}`" :rules="[
(val) =>
!!val ||
`${'กรุณาเลือกลงวันที่ทดลองปฏิบัติหน้าที่ราชการถึงวันที่ '}`,
]">
<template v-slot:prepend>
<q-icon name="event" class="cursor-pointer" style="color: var(--q-primary)">
</q-icon>
</template>
</q-input>
</template>
</datepicker>
</div>
<div class="col-md-4"></div>
<template v-slot:prepend>
<q-icon name="event" class="cursor-pointer" style="color: var(--q-primary)">
</q-icon>
</template>
</q-input>
</template>
</datepicker>
</div>
<div class="col-md-4"></div>
<div class="col-xs-12 col-md-4">
<selector :class="getClass(true)" outlined dense lazy-rules v-model="chairman"
@ -1097,7 +1131,9 @@ const getClass = (val: boolean) => {
typeOrder.commandCode === 'C-PM-12'
">
<div class="col-xs-12 col-md-4">
<q-input :class="getClass(true)" outlined dense lazy-rules v-model="committeeOc" :rules="[(val) => !!val || `${'กรุณาเลือกชื่อหน่วยงาน (อนุสนธิคำสั่ง)'}`]" :label="`${'ชื่อหน่วยงาน (อนุสนธิคำสั่ง)'}`" hide-bottom-space />
<q-input :class="getClass(true)" outlined dense lazy-rules v-model="committeeOc"
:rules="[(val) => !!val || `${'กรุณาเลือกชื่อหน่วยงาน (อนุสนธิคำสั่ง)'}`]"
:label="`${'ชื่อหน่วยงาน (อนุสนธิคำสั่ง)'}`" hide-bottom-space />
<!-- <selector :class="getClass(true)" outlined dense lazy-rules v-model="committeeOc"
:rules="[(val: string) => !!val || `${'กรุณาเลือกหน่วยงาน (อนุสนธิคำสั่ง)'}`]" hide-bottom-space
@ -1105,7 +1141,9 @@ const getClass = (val: boolean) => {
:options="committeeOcOption" option-value="id" use-input input-debounce="0" /> -->
</div>
<div class="col-xs-12 col-md-4">
<q-input :class="getClass(true)" outlined dense lazy-rules v-model="committeeOrder" :rules="[(val) => !!val || `${'กรุณาเลือกอนุสนธิคำสั่งที่'}`]" :label="`${'อนุสนธิคำสั่งที่'}`" hide-bottom-space />
<q-input :class="getClass(true)" outlined dense lazy-rules v-model="committeeOrder"
:rules="[(val) => !!val || `${'กรุณาเลือกอนุสนธิคำสั่งที่'}`]" :label="`${'อนุสนธิคำสั่งที่'}`"
hide-bottom-space />
<!-- <selector :class="getClass(true)" outlined dense lazy-rules v-model="committeeOrder"
:rules="[(val: string) => !!val || `${'กรุณาเลือกอนุสนธิคำสั่งที่'}`]" hide-bottom-space
@ -1137,7 +1175,8 @@ const getClass = (val: boolean) => {
<!-- C-PM-13 -->
<div class="row col-6 q-col-gutter-x-lg q-col-gutter-y-md" v-if="typeOrder.commandCode === 'C-PM-13'">
<div class="col-xs-12 col-md-12">
<q-input :class="getClass(true)" outlined dense lazy-rules v-model="receiveOc" :rules="[(val) => !!val || `${'กรุณาเลือกชื่อหน่วยงาน'}`]" :label="`${'ชื่อหน่วยงาน'}`" hide-bottom-space />
<q-input :class="getClass(true)" outlined dense lazy-rules v-model="receiveOc"
:rules="[(val) => !!val || `${'กรุณาเลือกชื่อหน่วยงาน'}`]" :label="`${'ชื่อหน่วยงาน'}`" hide-bottom-space />
<!-- <selector :class="getClass(true)" outlined dense lazy-rules v-model="receiveOc"
:rules="[(val: string) => !!val || `${'กรุณาเลือกหน่วยงาน'}`]" hide-bottom-space
@ -1222,6 +1261,8 @@ const getClass = (val: boolean) => {
</div>
</template>
<style>.q-field--with-bottom {
<style>
.q-field--with-bottom {
padding-bottom: 0px;
}</style>
}
</style>