เพิ่มเงื่อนไขกรอกให้ครบก่อนส่ง

This commit is contained in:
AnandaTon 2023-09-05 21:09:28 +07:00
parent 2143c05a42
commit 0bbf5cde0b
3 changed files with 778 additions and 1099 deletions

View file

@ -6,13 +6,30 @@
<div v-if="routeName == 'addTransfer'">เพิ่มเรื่องขอโอน</div>
<div v-else>รายละเอียดเรื่องขอโอน</div>
</div>
<div class="col-12">
<q-form ref="myform" class="col-12">
<q-card bordered>
<div class="col-12 row q-col-gutter-md q-pa-md">
<div class="col-xs-12 col-sm-12">
<div class="col-12 row q-pa-sm q-col-gutter-sm">
<q-input class="col-12" dense outlined v-model="tranferOrg" label="หน่วยงานที่ขอโอนไป" :readonly="routeName != 'addTransfer'" />
<q-input class="col-12" dense outlined v-model="noteReason" label="เหตุผล" type="textarea" :readonly="routeName != 'addTransfer'" />
<q-input
class="col-12"
dense
outlined
v-model="tranferOrg"
label="หน่วยงานที่ขอโอนไป"
:readonly="routeName != 'addTransfer'"
:rules="[(val:string) => !!val || `${'กรุณากรอกหน่วยงานที่ขอโอนไป'}`]"
/>
<q-input
class="col-12"
dense
outlined
v-model="noteReason"
label="เหตุผล"
type="textarea"
:readonly="routeName != 'addTransfer'"
:rules="[(val:string) => !!val || `${'กรุณากรอกเหตุผล'}`]"
/>
<div class="col-12 row">
<q-uploader
bordered
@ -25,261 +42,16 @@
@added="fileUploadDoc"
/>
</div>
<!-- <q-file
class="col-xs-12 col-sm-12"
outlined
dense
multiple
v-model="file"
label="เอกสารเพิ่มเติม"
hide-bottom-space
accept=".jpg,.png,.pdf,.csv,.doc"
lazy-rules
:rules="[val => val || 'กรุณาเลือกไฟล์เอกสารเพิ่มเติม']"
>
<template v-slot:prepend>
<q-icon name="attach_file" />
</template>
</q-file> -->
</div>
</div>
</div>
<!-- <div class="col-12 row q-col-gutter-md q-pa-md">
<div class="col-xs-12 col-sm-8 row">
<q-card bordered flat>
<div class="q-pa-xs bg-grey-2 row items-center q-py-sm q-px-md justify-center text-bold">อมลการดารงตาแหน</div>
<q-separator />
<div class="col-12 row q-pa-sm q-col-gutter-sm">
<q-input class="col-12" dense outlined v-model="typeServant" label="ประเภทข้าราชการ(สามัญ/ครู)" :readonly="routeName != 'addTransfer'" />
<q-input class="col-12 col-sm-6" dense outlined v-model="position" label="ตําแหน่ง" :readonly="routeName != 'addTransfer'" />
<q-input class="col-12 col-sm-6" dense outlined v-model="level" label="ระดับ" :readonly="routeName != 'addTransfer'" />
<q-input class="col-12 col-sm-6" dense outlined v-model="positionNum" label="ตําแหน่งเลขที่" :readonly="routeName != 'addTransfer'" />
<q-input class="col-12 col-sm-6" dense outlined v-model="groupOrga" label="ฝ่าย/กลุ่มงานที่สังกัด" :readonly="routeName != 'addTransfer'" />
<q-input class="col-12 col-sm-6" dense outlined v-model="affiliation" label="ส่วนที่สังกัด (ถ้ามี)" :readonly="routeName != 'addTransfer'" />
<q-input class="col-12 col-sm-6" dense outlined v-model="affiliationPart" label="ส่วนราชการที่สังกัด" :readonly="routeName != 'addTransfer'" />
<q-input class="col-12 col-sm-6" dense outlined v-model="OrganizationPart" label="หน่วยงานที่สังกัด" :readonly="routeName != 'addTransfer'" />
<q-input class="col-12 col-sm-6" dense outlined v-model="servantAge" label="อายุราชการ" :readonly="routeName != 'addTransfer'" />
<q-input class="col-12 col-sm-6" dense outlined v-model="salary" label="อัตราเงินเดือน" :readonly="routeName != 'addTransfer'" />
<q-input class="col-12 col-sm-6" dense outlined v-model="extraSalary" label="เงินเพิ่มพิเศษ" :readonly="routeName != 'addTransfer'" />
<q-input
class="col-12"
dense
outlined
v-model="positionHistory"
label="ประวัติการดํารงตําแหน่ง (ดึงข้อมูลจากระบบทะเบียนประวัติในส่วนของการแต่งตั้งย้ายเลื่อน)"
:readonly="routeName != 'addTransfer'"
/>
<q-input class="col-12" dense outlined v-model="transfer" label=" ประวัติเกี่ยวกับวินัย" type="textarea" :readonly="routeName != 'addTransfer'" />
</div>
<div class="col-xs-12 col-sm-8 row">
<q-card bordered flat>
<div class="q-pa-xs bg-grey-2 row items-center q-py-sm q-px-md justify-center text-bold">าแหน ระด เลขทาแหน และสงกดทขอโอน</div>
<q-separator />
<div class="col-12 row q-pa-sm q-col-gutter-sm">
<q-input class="col-xs-12 col-sm-6" dense outlined v-model="positionNew" label="ตำแหน่ง" :readonly="routeName != 'addTransfer'" />
<q-input class="col-xs-12 col-sm-6" dense outlined v-model="salaryNew" label="ระดับ" :readonly="routeName != 'addTransfer'" />
<q-input class="col-12 col-sm-6" dense outlined v-model="transfer" label="เลขที่ตําแหน่ง" :readonly="routeName != 'addTransfer'" />
<q-input class="col-12 col-sm-6" dense outlined v-model="note" label="สังกัดที่ขอโอน" :readonly="routeName != 'addTransfer'" />
<q-input class="col-12" dense outlined v-model="note" label="เหตุผลที่ขอโอน" type="textarea" :readonly="routeName != 'addTransfer'" />
</div>
</q-card>
</div>
</q-card>
</div>
<div class="col-xs-12 col-sm-4 row">
<q-card bordered flat>
<div class="q-pa-xs bg-grey-2 row items-center q-py-sm q-px-md justify-center text-bold">เอกสารหลกฐานทแนบ</div>
<q-separator />
<div class="col-12 row q-pa-sm q-col-gutter-sm">
<q-file
class="col-xs-12 col-sm-12"
outlined
dense
v-model="fileEdu"
label="สําเนาหลักฐานการศึกษา (ปริญญาบัตรประกาศนียบัตร)"
hide-bottom-space
lazy-rules
:rules="[val => val || 'กรุณาเลือกไฟล์สําเนาหลักฐานการศึกษา (ปริญญาบัตรประกาศนียบัตร)']"
>
<template v-slot:prepend>
<q-icon name="attach_file" />
</template>
</q-file>
<q-file
class="col-xs-12 col-sm-12"
outlined
dense
v-model="fileKorkor1"
label="สําเนาประวัติราชการ (ก.ก.1)"
hide-bottom-space
lazy-rules
:rules="[val => val || 'กรุณาเลือกไฟล์สําเนาประวัติราชการ (ก.ก.1)']"
>
<template v-slot:prepend>
<q-icon name="attach_file" />
</template>
</q-file>
<q-file class="col-xs-12 col-sm-12" outlined dense v-model="fileEtc" label="สําเนาเอกสารหลักฐานอื่นๆ" hide-bottom-space lazy-rules>
<template v-slot:prepend>
<q-icon name="attach_file" />
</template>
</q-file>
</div>
</q-card>
<div class="col-xs-12 col-sm-12 row">
<q-card bordered flat>
<div class="q-pa-xs bg-grey-2 row items-center q-py-sm q-px-md justify-center text-bold">ความเห</div>
<q-separator />
<div class="col-12 row q-pa-sm q-col-gutter-sm">
<q-input
class="col-12 col-sm-12"
dense
outlined
v-model="note"
label="ความเห็นผู้บังคับบัญชาชั้นต้น (หัวหน้าฝ่าย/กลุ่มงาน)"
type="textarea"
:readonly="routeName != 'addTransfer'"
/>
<q-input
class="col-12 col-sm-12"
dense
outlined
v-model="note"
label="ความเห็นผู้บังคับบัญชาเหนือขึ้นไป (ผู้อํานวยการส่วน) (ถ้ามี)"
type="textarea"
:readonly="routeName != 'addTransfer'"
/>
<q-input
class="col-12 col-sm-12"
dense
outlined
v-model="note"
label="ความเห็นหัวหน้าส่วนราชการผู้ขอโอน (ผอ. กอง)"
type="textarea"
:readonly="routeName != 'addTransfer'"
/>
</div>
</q-card>
</div>
</div>
</div>
<q-separator />
<div class="col-xs-12 col-sm-12 row">
<q-card bordered flat>
<div class="q-pa-xs bg-grey-2 row items-center q-py-sm q-px-md justify-center text-bold">เอกสารหลกฐาน</div>
<q-separator />
<div class="col-12 row q-pa-sm q-col-gutter-sm">
<q-file
class="col-xs-12 col-sm-12"
outlined
dense
v-model="fileEdu"
label="หนังสือถึงหน่วยงานที่รับโอน"
hide-bottom-space
lazy-rules
:rules="[val => val || 'กรุณาเลือกไฟล์หนังสือถึงหน่วยงานที่รับโอน']"
>
<template v-slot:prepend>
<q-icon name="attach_file" />
</template>
</q-file>
<q-file
class="col-xs-12 col-sm-12"
outlined
dense
v-model="fileKorkor1"
label="หนังสือถึงสกจ. เพื่อตรวจสอบพฤติการณ์ทางวินัยและภาระหนี้สิน (เงินกู้สวัสดิการข้าราชการ) ของข้าราชการ"
hide-bottom-space
lazy-rules
:rules="[val => val || 'กรุณาเลือกไฟล์หนังสือถึงสกจ. เพื่อตรวจสอบพฤติการณ์ทางวินัยและภาระหนี้สิน (เงินกู้สวัสดิการข้าราชการ) ของข้าราชการ']"
>
<template v-slot:prepend>
<q-icon name="attach_file" />
</template>
</q-file>
<q-file
class="col-xs-12 col-sm-12"
outlined
dense
v-model="fileEtc"
label="หนังสือถึงสพท. เพื่อตรวจสอบภาระผูกพันกับกรุงเทพมหานครเกี่ยวกับการลาศึกษาอบรมของข้าราชการ"
hide-bottom-space
lazy-rules
>
<template v-slot:prepend>
<q-icon name="attach_file" />
</template>
</q-file>
<q-file
class="col-xs-12 col-sm-12"
outlined
dense
v-model="fileEtc"
label="หนังสือถึงผู้จัดการสหกรณ์ออมทรัพย์กทม. เพื่อตรวจสอบหนี้สินและภาระผูกพันของข้าราชการ"
hide-bottom-space
lazy-rules
>
<template v-slot:prepend>
<q-icon name="attach_file" />
</template>
</q-file>
<q-file
class="col-xs-12 col-sm-12"
outlined
dense
v-model="fileEtc"
label="หนังสือสําคัญการโอนอัตราและจ่ายเงินเดือนสําหรับรับรองการจ่ายเงินเดือนครั้งสุดท้ายและโอนอัตราเงินเดือนตามตัวไปตั้งจ่าย"
hide-bottom-space
lazy-rules
>
<template v-slot:prepend>
<q-icon name="attach_file" />
</template>
</q-file>
<q-file
class="col-xs-12 col-sm-12"
outlined
dense
v-model="fileEtc"
label="แบบประเมินประสิทธิภาพและประสิทธิผลการปฏิบัติงานของข้าราชการพลเรือนสามัญ"
hide-bottom-space
lazy-rules
>
<template v-slot:prepend>
<q-icon name="attach_file" />
</template>
</q-file>
<q-file class="col-xs-12 col-sm-12" outlined dense v-model="fileEtc" label="หนังสือรับรองวันลา" hide-bottom-space lazy-rules>
<template v-slot:prepend>
<q-icon name="attach_file" />
</template>
</q-file>
<q-file class="col-xs-12 col-sm-12" outlined dense v-model="fileEtc" label="หนังสือขอโอนจากกทม. ถึงหน่วยงานที่ประสงค์จะโอน" hide-bottom-space lazy-rules>
<template v-slot:prepend>
<q-icon name="attach_file" />
</template>
</q-file>
<q-file class="col-xs-12 col-sm-12" outlined dense v-model="fileEtc" label="หนังสือตอบรับการโอนจากหน่วยงานที่ประสงค์จะโอน" hide-bottom-space lazy-rules>
<template v-slot:prepend>
<q-icon name="attach_file" />
</template>
</q-file>
<q-file class="col-xs-12 col-sm-12" outlined dense v-model="fileEtc" label="คําสั่งรับโอนจากหน่วยงานที่ประสงค์จะโอน" hide-bottom-space lazy-rules>
<template v-slot:prepend>
<q-icon name="attach_file" />
</template>
</q-file>
</div>
</q-card>
</div>-->
<q-separator v-if="routeName == 'addTransfer'" />
<div class="row col-12 q-pa-md" v-if="routeName == 'addTransfer'">
<q-space />
<q-btn unelevated dense class="q-px-md items-center" color="primary" label="ยื่นเรื่องขอโอน" @click="saveTransfer" />
<q-btn unelevated dense class="q-px-md items-center" color="primary" label="ยื่นเรื่องขอโอน" @click="saveData" />
</div>
</q-card>
</div>
</q-form>
</div>
</div>
</template>
@ -291,11 +63,13 @@ import { useRouter, useRoute } from "vue-router"
import { useCounterMixin } from "@/stores/mixin"
import http from "@/plugins/http"
import config from "@/app.config"
import type { QForm } from "quasar"
const router = useRouter()
const $q = useQuasar()
const mixin = useCounterMixin()
const { date2Thai, dateToISO, success, messageError, showLoader, hideLoader } = mixin
const myform = ref<QForm | null>(null)
const { date2Thai, fails, success, messageError, showLoader, hideLoader } = mixin
const fileDocDataUpload = ref<File[]>([])
const route = useRoute()
const files = ref<any>()
@ -313,6 +87,17 @@ onMounted(() => {
}
})
const saveData = async () => {
console.log(myform.value)
if (myform.value != null) {
await myform.value.validate().then(async (saveDataTest: Boolean) => {
if (saveDataTest) {
saveTransfer()
}
})
}
}
const saveTransfer = () => {
$q.dialog({
title: "ยืนยันการยื่นข้อมูลการโอน",
@ -327,7 +112,9 @@ const saveTransfer = () => {
createTransfer()
})
.onCancel(() => {})
.onDismiss(() => {})
.onDismiss(() => {
fails($q, "กรุณากรอกอัพโหลดเอกสารเพิ่มเติม")
})
}
const createTransfer = async () => {

View file

@ -6,12 +6,20 @@
<div v-if="routeName == 'AddLeave'">เพิ่มเรื่องลาออก</div>
<div v-else>รายละเอียดเรื่องลาออก</div>
</div>
<div class="col-12">
<q-form ref="myform" class="col-12">
<q-card bordered>
<div class="col-12 row q-col-gutter-md q-pa-md">
<div class="col-xs-12 col-sm-12">
<div class="col-12 row q-pa-sm q-col-gutter-sm">
<q-input class="col-8" dense outlined v-model="tranferOrg" label="สถานที่ยื่นขอลาออกจากราชการ" :readonly="routeName != 'AddLeave'" />
<q-input
class="col-8"
dense
outlined
v-model="tranferOrg"
label="สถานที่ยื่นขอลาออกจากราชการ"
:readonly="routeName != 'AddLeave'"
:rules="[(val:string) => !!val || `${'กรุณากรอกสถานที่ยื่นขอลาออกจากราชการ'}`]"
/>
<datepicker class="col-2" menu-class-name="modalfix" v-model="dateCommand" :locale="'th'" autoApply readonly borderless :enableTimePicker="false" week-start="0">
<template #year="{ year }">
{{ year + 543 }}
@ -70,7 +78,16 @@
</q-input>
</template>
</datepicker>
<q-input class="col-12" dense outlined v-model="noteReason" label="เหตุผลที่ลาออกจากราชการ" type="textarea" :readonly="routeName != 'AddLeave'" />
<q-input
class="col-12"
dense
outlined
v-model="noteReason"
label="เหตุผลที่ลาออกจากราชการ"
type="textarea"
:readonly="routeName != 'AddLeave'"
:rules="[val => !!val || `${'กรุณากรอกเหตุผลที่ลาออกจากราชการ'}`]"
/>
<div class="col-12 row">
<q-uploader
@ -88,128 +105,80 @@
</div>
</div>
<q-card bordered class="row col-12 text-dark q-mt-sm">
<div class="bg-grey-1 q-pa-sm col-12 row items-center text-primary">
<div class="q-pl-sm text-weight-bold text-dark">
ผลการพจารณาของผงคบบญชา
</div>
</div>
<q-separator />
<div class="row col-12 q-pa-md">
<div class="col-12 row bg-white q-col-gutter-md">
<div class="col-xs-6 row items-start">
<div class="col-12 text-top">สถานะ</div>
<div class="col-12 text-detail">
{{
dataDetail.commanderReject !== null
? statusOrder(dataDetail.commanderReject)
: "-"
}}
</div>
</div>
<div class="col-xs-6 row items-start">
<div class="col-12 text-top">นสดทายทบย</div>
<div class="col-12 text-detail">
{{
dataDetail.commanderRejectDate !== null
? date2Thai(dataDetail.commanderRejectDate)
: "-"
}}
</div>
</div>
<div class="col-xs-12 row items-start">
<div class="col-12 text-top">ความคดเหนและเหตผล</div>
<div
class="col-12 text-detail"
v-if="dataDetail.commanderReject === false"
>
{{
dataDetail.commanderApproveReason !== null
? dataDetail.commanderApproveReason
: "-"
}}
</div>
<div
class="col-12 text-detail"
v-if="dataDetail.commanderReject === true"
>
{{
dataDetail.commanderRejectReason !== null
? dataDetail.commanderRejectReason
: "-"
}}
</div>
</div>
</div>
</div>
</q-card>
<div class="bg-grey-1 q-pa-sm col-12 row items-center text-primary">
<div class="q-pl-sm text-weight-bold text-dark">ผลการพจารณาของผงคบบญชา</div>
</div>
<q-separator />
<div class="row col-12 q-pa-md">
<div class="col-12 row bg-white q-col-gutter-md">
<div class="col-xs-6 row items-start">
<div class="col-12 text-top">สถานะ</div>
<div class="col-12 text-detail">
{{ dataDetail.commanderReject !== null ? statusOrder(dataDetail.commanderReject) : "-" }}
</div>
</div>
<div class="col-xs-6 row items-start">
<div class="col-12 text-top">นสดทายทบย</div>
<div class="col-12 text-detail">
{{ dataDetail.commanderRejectDate !== null ? date2Thai(dataDetail.commanderRejectDate) : "-" }}
</div>
</div>
<div class="col-xs-12 row items-start">
<div class="col-12 text-top">ความคดเหนและเหตผล</div>
<div class="col-12 text-detail" v-if="dataDetail.commanderReject === false">
{{ dataDetail.commanderApproveReason !== null ? dataDetail.commanderApproveReason : "-" }}
</div>
<div class="col-12 text-detail" v-if="dataDetail.commanderReject === true">
{{ dataDetail.commanderRejectReason !== null ? dataDetail.commanderRejectReason : "-" }}
</div>
</div>
</div>
</div>
</q-card>
<q-card bordered class="row col-12 text-dark q-mt-sm">
<div class="bg-grey-1 q-pa-sm col-12 row items-center text-primary">
<div class="q-pl-sm text-weight-bold text-dark">
ผลการพจารณาของผอำนาจ
</div>
</div>
<q-separator />
<div class="row col-12 q-pa-md">
<div class="col-12 row bg-white q-col-gutter-md">
<div class="col-xs-6 row items-start">
<div class="col-12 text-top">สถานะ</div>
<div class="col-12 text-detail">
{{
dataDetail.oligarchReject !== null
? statusOrder(dataDetail.oligarchReject)
: "-"
}}
</div>
</div>
<div class="col-xs-6 row items-start">
<div class="col-12 text-top">นสดทายทบย</div>
<div class="col-12 text-detail">
{{
dataDetail.oligarchRejectDate !== null
? date2Thai(dataDetail.oligarchRejectDate)
: "-"
}}
</div>
</div>
<div class="col-xs-12 row items-start">
<div class="col-12 text-top">ความคดเหนและเหตผล</div>
<div
class="col-12 text-detail"
v-if="dataDetail.oligarchReject == false"
>
{{
dataDetail.oligarchApproveReason !== null
? dataDetail.oligarchApproveReason
: "-"
}}
</div>
<div
class="col-12 text-detail"
v-else-if="dataDetail.oligarchReject == true"
>
{{
dataDetail.oligarchRejectReason !== null
? dataDetail.oligarchRejectReason
: "-"
}}
</div>
</div>
</div>
</div>
</q-card>
<div class="row col-12 q-pa-md" v-if="routeName != 'AddLeave'">
<q-space />
<q-btn unelevated dense class="q-px-md items-center" color="orange" label="ยกเลิกการลาออก" @click="cancelResing(id.value)" :disable="tranferOrg == '' && noteReason == ''" />
</div>
<q-card bordered class="row col-12 text-dark q-mt-sm">
<div class="bg-grey-1 q-pa-sm col-12 row items-center text-primary">
<div class="q-pl-sm text-weight-bold text-dark">ผลการพจารณาของผอำนาจ</div>
</div>
<q-separator />
<div class="row col-12 q-pa-md">
<div class="col-12 row bg-white q-col-gutter-md">
<div class="col-xs-6 row items-start">
<div class="col-12 text-top">สถานะ</div>
<div class="col-12 text-detail">
{{ dataDetail.oligarchReject !== null ? statusOrder(dataDetail.oligarchReject) : "-" }}
</div>
</div>
<div class="col-xs-6 row items-start">
<div class="col-12 text-top">นสดทายทบย</div>
<div class="col-12 text-detail">
{{ dataDetail.oligarchRejectDate !== null ? date2Thai(dataDetail.oligarchRejectDate) : "-" }}
</div>
</div>
<div class="col-xs-12 row items-start">
<div class="col-12 text-top">ความคดเหนและเหตผล</div>
<div class="col-12 text-detail" v-if="dataDetail.oligarchReject == false">
{{ dataDetail.oligarchApproveReason !== null ? dataDetail.oligarchApproveReason : "-" }}
</div>
<div class="col-12 text-detail" v-else-if="dataDetail.oligarchReject == true">
{{ dataDetail.oligarchRejectReason !== null ? dataDetail.oligarchRejectReason : "-" }}
</div>
</div>
</div>
</div>
</q-card>
<div class="row col-12 q-pa-md" v-if="routeName != 'AddLeave'">
<q-space />
<q-btn unelevated dense class="q-px-md items-center" color="orange" label="ยกเลิกการลาออก" @click="cancelResing" :disable="tranferOrg == '' && noteReason == ''" />
</div>
</div>
<q-separator v-if="routeName == 'AddLeave'" />
<div class="row col-12 q-pa-md" v-if="routeName == 'AddLeave'">
<q-space />
<q-btn unelevated dense class="q-px-md items-center" color="primary" label="ยื่นเรื่องขอลาออก" @click="saveResing" :disable="tranferOrg == '' && noteReason == ''" />
<q-btn unelevated dense class="q-px-md items-center" color="primary" label="ยื่นเรื่องขอลาออก" @click="saveData" :disable="tranferOrg == '' && noteReason == ''" />
</div>
</q-card>
</div>
</q-form>
</div>
</div>
</template>
@ -221,11 +190,13 @@ import { useRouter, useRoute } from "vue-router"
import { useCounterMixin } from "@/stores/mixin"
import http from "@/plugins/http"
import config from "@/app.config"
import type { QForm } from "quasar"
const mixin = useCounterMixin()
const { date2Thai, dateToISO, success, messageError, showLoader, hideLoader } = mixin
const { date2Thai, dateToISO, success, messageError, showLoader, hideLoader, fails } = mixin
const router = useRouter()
const route = useRoute()
const myform = ref<QForm | null>(null)
const $q = useQuasar()
const routeName = router.currentRoute.value.name
const id = ref<string>("")
@ -238,36 +209,36 @@ const noteReason = ref("")
const nameFile = ref<string>("")
const dataDetail = ref<any>({
datetext: "",
activeDate: new Date(),
createdAt: new Date(),
firstName: "",
id: "",
isActive: true,
lastName: "",
location: "",
organizationPositionOld: "",
positionLevelOld: "",
positionNumberOld: "",
positionTypeOld: "",
prefix: "",
profileId: "",
reason: "",
salary: 0,
sendDate: new Date(),
status: "",
statustext: "",
fullname: "",
});
datetext: "",
activeDate: new Date(),
createdAt: new Date(),
firstName: "",
id: "",
isActive: true,
lastName: "",
location: "",
organizationPositionOld: "",
positionLevelOld: "",
positionNumberOld: "",
positionTypeOld: "",
prefix: "",
profileId: "",
reason: "",
salary: 0,
sendDate: new Date(),
status: "",
statustext: "",
fullname: "",
})
const statusOrder = (val: boolean) => {
switch (val) {
case true:
return "ยับยั้งการลาออก";
case false:
return "อนุมัติการลาออก";
}
};
switch (val) {
case true:
return "ยับยั้งการลาออก"
case false:
return "อนุมัติการลาออก"
}
}
onMounted(() => {
if (route.params.id !== undefined) {
@ -275,6 +246,18 @@ onMounted(() => {
fectDataresign(id.value)
}
})
const saveData = async () => {
console.log(myform.value)
if (myform.value != null) {
await myform.value.validate().then(async (saveDataTest: Boolean) => {
if (saveDataTest) {
saveResing()
}
})
}
}
const saveResing = () => {
$q.dialog({
title: "ยืนยันการยื่นข้อมูลแบบสอบถาม",
@ -289,12 +272,14 @@ const saveResing = () => {
createFormresign()
})
.onCancel(() => {})
.onDismiss(() => {})
.onDismiss(() => {
fails($q, "กรุณากรอกอัพโหลดเอกสารเพิ่มเติม")
})
}
const cancelResing = () => {
console.log(id);
console.log(id)
$q.dialog({
title: "ยืนยันการยกเลิกการลาออก",
message: "ต้องการยื่นข้อมูลยกเลิกการลาออกนี้ใช่หรือไม่?",
@ -305,33 +290,30 @@ const cancelResing = () => {
persistent: true,
})
.onOk(async () => {
if (route.params.id !== undefined) {
id.value = route.params.id.toString()
deleteResting(id.value)
}
if (route.params.id !== undefined) {
id.value = route.params.id.toString()
deleteResting(id.value)
}
})
.onCancel(() => {})
.onDismiss(() => {})
}
const deleteResting = async(id :string) => {
const deleteResting = async (id: string) => {
showLoader()
await http
.delete(config.API.resingByid(id))
.then(() => {
success($q, "ยกเลิกการลาออกขอสำเร็จ");
})
.catch((e) => {
messageError($q, e);
})
.finally(() => {
hideLoader();
});
.delete(config.API.resingByid(id))
.then(() => {
success($q, "ยกเลิกการลาออกขอสำเร็จ")
})
.catch(e => {
messageError($q, e)
})
.finally(() => {
hideLoader()
})
}
const createFormresign = async () => {
const formData = new FormData()
const blob = files.value.slice(0, files.value[0].size)
@ -364,8 +346,12 @@ const fectDataresign = async (id: string) => {
.then((res: any) => {
let data = res.data.result
// console.log(data);
;(tranferOrg.value = data.location), (dateCommand.value = data.sendDate), (dateLeave.value = data.activeDate), (noteReason.value = data.reason), (files.value = data.docs) ,(dataDetail.value = data)
;(tranferOrg.value = data.location),
(dateCommand.value = data.sendDate),
(dateLeave.value = data.activeDate),
(noteReason.value = data.reason),
(files.value = data.docs),
(dataDetail.value = data)
})
.catch((e: any) => {
console.log(e)

File diff suppressed because it is too large Load diff