From 92901c175311981f8f827282db357ee649aa60f6 Mon Sep 17 00:00:00 2001 From: setthawutttty Date: Tue, 29 Apr 2025 17:16:49 +0700 Subject: [PATCH] =?UTF-8?q?=E0=B9=81=E0=B8=81=E0=B9=89=E0=B8=A2=E0=B8=81?= =?UTF-8?q?=E0=B9=80=E0=B8=A5=E0=B8=B4=E0=B8=81=E0=B8=A5=E0=B8=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/05_Leave/DetailLeaveReject.vue | 53 +++++++++++++++++-- .../09_leave/components/05_Leave/Tab2.vue | 2 +- 2 files changed, 50 insertions(+), 5 deletions(-) diff --git a/src/modules/09_leave/components/05_Leave/DetailLeaveReject.vue b/src/modules/09_leave/components/05_Leave/DetailLeaveReject.vue index 6bf842384..72827dfa2 100644 --- a/src/modules/09_leave/components/05_Leave/DetailLeaveReject.vue +++ b/src/modules/09_leave/components/05_Leave/DetailLeaveReject.vue @@ -14,6 +14,8 @@ import { checkPermission } from "@/utils/permissions"; import type { LeaveType, FormReject, + SeqTypeRow, + RowsType, } from "@/modules/09_leave/interface/response/leave"; import type { FremData } from "@/modules/09_leave/interface/request/leave"; @@ -63,6 +65,11 @@ function upLoadFile() { console.log("upload", filesUpload.value); } +const rows = ref(); +const statusCheck = ref(""); +const isOfficer = ref(false); +const isStaff = ref(false); + /** Form รายละเอียดข้อมูล*/ const formDataReject = reactive({ id: "", //*Id การยื่นขอลา @@ -149,6 +156,7 @@ const formData = reactive({ dear: "", profileType: "", leaveSubTypeName: "", + commanderPosition: "", leaveRangeEnd: "", }); @@ -158,8 +166,9 @@ onMounted(async () => { if (paramsId) { showLoader(); Promise.all([ - fetchDetailDeleteLeave(paramsId), - fetchDetailLeave(paramsId), + await fetchDetailDeleteLeave(paramsId), + await fetchDetailLeave(paramsId), + checkOfficer(), ]).finally(() => { hideLoader(); }); @@ -255,6 +264,7 @@ async function fetchDetailLeave(paramsId: string) { formData.ordainDayBuddhistLentAddress = data.ordainDayBuddhistLentAddress; formData.hajjDayStatus = data.hajjDayStatus; formData.absentDaySummon = data.absentDaySummon; + statusCheck.value = data.status; formData.absentDayLocation = data.absentDayLocation; formData.absentDayRegistorDate = data.absentDayRegistorDate && date2Thai(data.absentDayRegistorDate); @@ -282,10 +292,15 @@ async function fetchDetailLeave(paramsId: string) { formData.approveStep = data.approveStep; formData.dear = data.dear ? data.dear : "-"; formData.profileType = data.profileType; + formData.commanderPosition = data.commanderPosition; formData.leaveSubTypeName = data.leaveSubTypeName; formData.leaveRange = data.leaveRange; formData.leaveRangeEnd = data.leaveRangeEnd; isLoadData.value = true; + rows.value = { + commanders: data.commanders, + approvers: data.approvers, + }; await fectOptionType(); }) .catch((err) => { @@ -421,6 +436,26 @@ async function onClickDownloadFile(id: string, fileName: string, type: string) { hideLoader(); }); } + +async function checkOfficer() { + http + .get( + config.API.checkIsofficer + + `${ + formData.profileType == "OFFICER" + ? "SYS_LEAVE_LIST" + : "SYS_LEAVE_LIST_EMP" + }` + ) + .then(async (res) => { + isOfficer.value = await res.data.result.isOfficer; + isStaff.value = await res.data.result.isStaff; + }) + .catch((e) => { + messageError($q, e); + }) + .finally(() => {}); +}