From 8982c3da6e8308d167b3a1146b60c1466d98b078 Mon Sep 17 00:00:00 2001 From: AnandaTon Date: Fri, 1 Dec 2023 16:56:43 +0700 Subject: [PATCH] =?UTF-8?q?API=20=E0=B8=AA=E0=B8=A3=E0=B9=89=E0=B8=B2?= =?UTF-8?q?=E0=B8=87=E0=B8=84=E0=B8=B3=E0=B8=82=E0=B8=AD=E0=B8=81=E0=B8=B2?= =?UTF-8?q?=E0=B8=A3=E0=B8=A5=E0=B8=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/leave/api.leave.ts | 36 +- .../05_leave/componenst/Forms/01_SickForm.vue | 106 ++- .../05_leave/componenst/Forms/03_Birth.vue | 602 ++++++++---------- .../componenst/Forms/04_HelpWifeBirthForm.vue | 126 ++-- .../componenst/Forms/05_VacationForm.vue | 124 ++-- .../componenst/Forms/06_OrdinationForm.vue | 138 ++-- .../05_leave/componenst/Forms/07_HajjForm.vue | 76 +-- .../componenst/Forms/08_MilitaryForm.vue | 130 ++-- .../componenst/Forms/09_StudyForm.vue | 157 +++-- .../componenst/Forms/10_TrainForm.vue | 132 ++-- .../Forms/11_WorkInternationalForm.vue | 105 ++- .../componenst/Forms/12_FollowSpouseForm.vue | 167 +++-- .../Forms/13_RehabilitationForm.vue | 87 +-- .../05_leave/componenst/Forms/Form.vue | 4 +- .../05_leave/interface/request/AddAbsence.ts | 103 +-- .../05_leave/interface/request/BirthForm.ts | 26 +- .../interface/request/FollowSpouseForm.ts | 38 +- .../interface/request/HelpWifeForm.ts | 34 +- .../05_leave/interface/request/SickForm.ts | 25 +- .../interface/request/VacationForm.ts | 32 +- .../request/WorkInternationalForm.ts | 17 +- src/modules/05_leave/views/AddPage.vue | 386 +++++------ 22 files changed, 1243 insertions(+), 1408 deletions(-) diff --git a/src/api/leave/api.leave.ts b/src/api/leave/api.leave.ts index 28a776b..f678737 100644 --- a/src/api/leave/api.leave.ts +++ b/src/api/leave/api.leave.ts @@ -1,22 +1,22 @@ -import env from "../index"; +import env from "../index" -const retirementResign = `${env.API_URI}/retirement`; -const leave = `${env.API_URI}/leave`; +const retirementResign = `${env.API_URI}/retirement` +const leave = `${env.API_URI}/leave` export default { - listUser: () => `${retirementResign}/resign/user`, - listResign: () => `${retirementResign}/resign`, - resingByid: (id: string) => `${retirementResign}/resign/${id}`, - questionnaireByid: (id: string) => - `${retirementResign}/resign/questionnaire/${id}`, - listquestionnaire: () => `${retirementResign}/resign/questionnaire`, - // คำถาม - questionList: () => `${retirementResign}/resign/questionnaire/question`, + listUser: () => `${retirementResign}/resign/user`, + listResign: () => `${retirementResign}/resign`, + resingByid: (id: string) => `${retirementResign}/resign/${id}`, + questionnaireByid: (id: string) => `${retirementResign}/resign/questionnaire/${id}`, + listquestionnaire: () => `${retirementResign}/resign/questionnaire`, + // คำถาม + questionList: () => `${retirementResign}/resign/questionnaire/question`, - /**รายการลา */ - leaveType: () => `${leave}/type`, - leaveCalendar: () => `${leave}/user/calendar`, - leaveTableList: () => `${leave}/user/table`, - leaveCanceById: (id: string) => `${leave}/user/delete/${id}`, - leaveStats: () => `${leave}/user/summary`, -}; + /**รายการลา */ + leaveType: () => `${leave}/type`, + leaveCalendar: () => `${leave}/user/calendar`, + leaveTableList: () => `${leave}/user/table`, + leaveCanceById: (id: string) => `${leave}/user/delete/${id}`, + leaveStats: () => `${leave}/user/summary`, + leaveUser: () => `${leave}/user`, +} diff --git a/src/modules/05_leave/componenst/Forms/01_SickForm.vue b/src/modules/05_leave/componenst/Forms/01_SickForm.vue index b7c0dd4..db4ec26 100644 --- a/src/modules/05_leave/componenst/Forms/01_SickForm.vue +++ b/src/modules/05_leave/componenst/Forms/01_SickForm.vue @@ -6,7 +6,7 @@ import { useCounterMixin } from "@/stores/mixin" const $q = useQuasar() const mixin = useCounterMixin() -const { date2Thai, calculateDurationYmd } = mixin +const { date2Thai, calculateDurationYmd, dialogConfirm } = mixin const edit = ref(true) /** รับ props มาจากหน้าหลัก */ @@ -23,57 +23,54 @@ const props = defineProps({ /** ข้อมูล v-model ของฟอร์ม */ const formData = reactive({ - leaveNo: "", - startLeaveDate: null, - endLeaveDate: null, + leaveWrote: "", + leaveStartDate: null, + leaveEndDate: null, halfDay: "day", - contractTel: "", leaveTotal: "", leaveLast: "", - leaveContactTel: "", - leaveContactLocation: "", + leaveNumber: "", + leaveAddress: "", leaveDetail: "", - file: [], + leaveDocument: [], }) /** ตัวแปร ref สำหรับแสดง validate */ -const leaveNoRef = ref(null) -const startLeaveDateRef = ref(null) -const endLeaveDateRef = ref(null) +const leaveWroteRef = ref(null) +const leaveStartDateRef = ref(null) +const leaveEndDateRef = ref(null) const halfDayRef = ref(null) -const contractTelRef = ref(null) const leaveTotalRef = ref(null) const leaveLastRef = ref(null) -const leaveContactTelRef = ref(null) -const leaveContactLocationRef = ref(null) +const leaveNumberRef = ref(null) +const leaveAddressRef = ref(null) const leaveDetailRef = ref(null) -const fileRef = ref(null) +const leaveDocumentRef = ref(null) /** maping ref เข้าตัวแปรเพื่อเตรียมตรวจสอบ */ const FormRef: FormRef = { - leaveNo: leaveNoRef, - startLeaveDate: startLeaveDateRef, - endLeaveDate: endLeaveDateRef, + leaveWrote: leaveWroteRef, + leaveStartDate: leaveStartDateRef, + leaveEndDate: leaveEndDateRef, halfDay: halfDayRef, - contractTel: contractTelRef, leaveTotal: leaveTotalRef, - leaveContactTel: leaveContactTelRef, - leaveContactLocation: leaveContactLocationRef, + leaveNumber: leaveNumberRef, + leaveAddress: leaveAddressRef, leaveDetail: leaveDetailRef, - file: fileRef, + leaveDocument: leaveDocumentRef, } /** ตรวจสอบว่ามีการส่งข้อมูลเข้ามาที่ฟอร์มไหม เมื่อมีการส่งจะ map ข้อมูลเข้า v-model ของฟอร์ม */ watch(props.data, async () => { // console.log("data==>", props.data) - formData.leaveNo = props.data.leaveNo - formData.startLeaveDate = props.data.startLeaveDate - formData.endLeaveDate = props.data.endLeaveDate + formData.leaveWrote = props.data.leaveWrote + formData.leaveStartDate = props.data.leaveStartDate + formData.leaveEndDate = props.data.leaveEndDate formData.contractTel = props.data.contractTel formData.leaveTotal = props.data.leaveTotal - formData.leaveContactTel = props.data.leaveContactTel + formData.leaveNumber = props.data.leaveNumber formData.leaveDetail = props.data.leaveDetail - formData.file = props.data.file + formData.leaveDocument = props.data.leaveDocument }) /** ส่วนของการประกาศและเลือกไฟล์เอกสารประกอบ */ @@ -85,12 +82,12 @@ async function fileUploadDoc(files: any) { } /** - * function รีเซทค่า startLeaveDate เเละ endLeaveDate + * function รีเซทค่า leaveStartDate เเละ leaveEndDate */ function resetDate() { if (formData.halfDay === "half_day_morning" || formData.halfDay === "half_day_afternoon") { - formData.startLeaveDate = null - formData.endLeaveDate = null + formData.leaveStartDate = null + formData.leaveEndDate = null } console.log("testnull") } @@ -108,21 +105,20 @@ function onValidate() { } } if (hasError.every(result => result === true)) { - props.onSubmit() + props.onSubmit(formData) } } const isReadOnly = computed(() => { const conditionHalfDay = formData.halfDay === "half_day_morning" || formData.halfDay === "half_day_afternoon" if (conditionHalfDay) { - formData.endLeaveDate = formData.startLeaveDate // Set formData.endLeaveDate to null + formData.leaveEndDate = formData.leaveStartDate // Set formData.leaveEndDate to null formData.leaveTotal = "0.5 วัน " } else { formData.leaveTotal = null } return conditionHalfDay }) -console.log(isReadOnly.value) @@ -136,13 +132,13 @@ console.log(isReadOnly.value)
@@ -196,14 +192,14 @@ console.log(isReadOnly.value)