From 7b0aefe2cd1500f2c1b0b4d21403d4c66d08c4c8 Mon Sep 17 00:00:00 2001 From: AnandaTon Date: Fri, 8 Dec 2023 15:41:18 +0700 Subject: [PATCH] =?UTF-8?q?=E0=B9=80=E0=B8=9E=E0=B8=B4=E0=B9=88=E0=B8=A1?= =?UTF-8?q?=20api=20check=20=E0=B8=9F=E0=B8=AD=E0=B8=A3=E0=B9=8C=E0=B8=A1?= =?UTF-8?q?=E0=B8=A5=E0=B8=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../05_leave/componenst/Forms/01_SickForm.vue | 29 +++++++-- .../05_leave/componenst/Forms/03_Birth.vue | 31 +++++++-- .../componenst/Forms/04_HelpWifeBirthForm.vue | 28 ++++++++- .../componenst/Forms/05_VacationForm.vue | 33 ++++++++-- .../componenst/Forms/06_OrdinationForm.vue | 27 +++++++- .../05_leave/componenst/Forms/07_HajjForm.vue | 30 ++++++++- .../componenst/Forms/08_MilitaryForm.vue | 28 ++++++++- .../componenst/Forms/09_StudyForm.vue | 36 ++++++++--- .../componenst/Forms/10_TrainForm.vue | 27 +++++++- .../Forms/11_WorkInternationalForm.vue | 30 ++++++++- .../componenst/Forms/12_FollowSpouseForm.vue | 37 ++++++++--- .../Forms/13_RehabilitationForm.vue | 26 +++++++- .../05_leave/componenst/Forms/Form.vue | 18 +++--- src/modules/05_leave/store.ts | 63 ++++++++++++++++++- src/modules/05_leave/views/AddPage.vue | 2 +- 15 files changed, 386 insertions(+), 59 deletions(-) diff --git a/src/modules/05_leave/componenst/Forms/01_SickForm.vue b/src/modules/05_leave/componenst/Forms/01_SickForm.vue index 826ddca..c3d1f27 100644 --- a/src/modules/05_leave/componenst/Forms/01_SickForm.vue +++ b/src/modules/05_leave/componenst/Forms/01_SickForm.vue @@ -13,7 +13,7 @@ const dataStore = useLeaveStore() const $q = useQuasar() const mixin = useCounterMixin() const router = useRouter() -const { date2Thai, dateToISO, dialogConfirm, success, messageError } = mixin +const { date2Thai, dateToISO, dialogConfirm, success, messageError, fails } = mixin const edit = ref(true) /** รับ props มาจากหน้าหลัก */ @@ -147,8 +147,6 @@ async function saveFormData() { formData.append("leaveAddress", formDataSick.leaveAddress) formData.append("leaveNumber", formDataSick.leaveNumber) formData.append("leaveDetail", formDataSick.leaveDetail) - formData.append("leaveTotal", formDataSick.leaveTotal) - formData.append("leaveLast", formDataSick.leaveLast) await http .post(config.API.leaveUser(), formData) .then((res: any) => { @@ -160,6 +158,28 @@ async function saveFormData() { }) } +/** + * check ว่าลาได้ไหม จาก api + * @param formData + */ +const isLeave = ref(true) +async function FetchCheck() { + await http + .post(config.API.leaveCheck(), { type: dataStore.typeId ?? null, StartLeaveDate: formDataSick.leaveStartDate ?? null, EndLeaveDate: formDataSick.leaveEndDate ?? null }) + .then((res: any) => { + const data = res.data.result + isLeave.value = data.isLeave + if (data.isLeave === true) { + formDataSick.leaveTotal = data.totalDate - data.sumDateWork - data.sumDateHoliday + } else { + fails($q, "ไม่สามารถลาได้") + } + }) + .catch((e: any) => { + messageError($q, e) + }) +} + /** * ฟังก์ชั่นแปลงครึ่งวัน/ทั้งวัน */ @@ -253,6 +273,7 @@ const isReadOnly = computed(() => { :enableTimePicker="false" week-start="0" :readonly="isReadOnly" + @update:model-value="FetchCheck()" :min-date="formDataSick.leaveStartDate ? new Date(formDataSick.leaveStartDate.getTime() + 24 * 60 * 60 * 1000) : null" >