From e3aa1d8221b170baa29b6357607fcad87f1fa8fc Mon Sep 17 00:00:00 2001 From: Kittapath Date: Fri, 29 Sep 2023 20:46:39 +0700 Subject: [PATCH] =?UTF-8?q?=E0=B9=81=E0=B8=81=E0=B9=89=E0=B9=83=E0=B8=99?= =?UTF-8?q?=E0=B8=AA=E0=B8=A1=E0=B8=B1=E0=B8=84=E0=B8=A3=E0=B8=AA=E0=B8=AD?= =?UTF-8?q?=E0=B8=9A=E0=B8=84=E0=B8=B1=E0=B8=94=E0=B9=80=E0=B8=A5=E0=B8=B7?= =?UTF-8?q?=E0=B8=AD=E0=B8=81=E0=B8=A5=E0=B8=9A=E0=B8=A3=E0=B8=B2=E0=B8=A2?= =?UTF-8?q?=E0=B8=A5=E0=B8=B0=E0=B9=80=E0=B8=AD=E0=B8=B5=E0=B8=A2=E0=B8=94?= =?UTF-8?q?=E0=B8=9A=E0=B8=B1=E0=B8=95=E0=B8=A3=E0=B8=9B=E0=B8=A3=E0=B8=B0?= =?UTF-8?q?=E0=B8=8A=E0=B8=B2=E0=B8=8A=E0=B8=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/modules/01_exam/components/ExamForm.vue | 212 +++++++++--------- .../01_exam/components/Form/Information.vue | 125 ++--------- .../01_exam/components/Form/Profile.vue | 36 +-- src/modules/01_exam/views/ExamDetail.vue | 16 +- 4 files changed, 158 insertions(+), 231 deletions(-) diff --git a/src/modules/01_exam/components/ExamForm.vue b/src/modules/01_exam/components/ExamForm.vue index f7a2044..6dafff1 100644 --- a/src/modules/01_exam/components/ExamForm.vue +++ b/src/modules/01_exam/components/ExamForm.vue @@ -5,9 +5,9 @@ :status="status" v-model:formInformation="formInformation" v-model:formAddress="formAddress" - v-model:formFamily="formFamily" v-model:formOccupation="formOccupation" /> +
(false) @@ -106,7 +106,7 @@ const examId = ref(route.params.id.toString()) const positionId = ref(route.params.positionId.toString()) const formInformation = ref({}) const formAddress = ref({}) -const formFamily = ref({}) +// const formFamily = ref({}) const formOccupation = ref({}) const saveAuto = ref(false) @@ -166,112 +166,112 @@ const saveData = async () => { if (suc) { await formAddress.value.validate().then(async (suc: boolean) => { if (suc) { - await formFamily.value.validate().then(async (suc: boolean) => { + // await formFamily.value.validate().then(async (suc: boolean) => { + // if (suc) { + await formOccupation.value.validate().then(async (suc: boolean) => { if (suc) { - await formOccupation.value.validate().then(async (suc: boolean) => { - if (suc) { - const type = ref('') - if (defaultOccupation.value.status == 'official') - type.value = defaultOccupation.value.official - if (defaultOccupation.value.status == 'personnel') - type.value = defaultOccupation.value.personnel - if (defaultOccupation.value.status == 'officialsOther') - type.value = defaultOccupation.value.officialsOther - if (defaultOccupation.value.status == 'employee') - type.value = defaultOccupation.value.employee - if (defaultOccupation.value.status == 'other') - type.value = defaultOccupation.value.other - loaderPage(true) - await http - .post(config.API.candidateId(examId.value, positionId.value), { - prefixId: defaultInformation.value.prefixId, - lastName: defaultInformation.value.lastname, - citizenProvinceId: defaultInformation.value.provinceId, - citizenDistrictId: defaultInformation.value.districtId, - dateOfBirth: - defaultInformation.value.birthDate == null - ? null - : dateToISO(defaultInformation.value.birthDate), - citizenDate: - defaultInformation.value.cardIdDate == null - ? null - : dateToISO(defaultInformation.value.cardIdDate), - citizenId: defaultInformation.value.cardid, - firstName: defaultInformation.value.firstname, - relationshipId: defaultInformation.value.relationshipId, - nationality: defaultInformation.value.nationality, - email: defaultInformation.value.email, - mobilePhone: defaultInformation.value.phone, - telephone: defaultInformation.value.tel, - knowledge: defaultInformation.value.knowledge, - occupationType: defaultOccupation.value.status, - occupationCompany: defaultOccupation.value.company, - occupationDepartment: defaultOccupation.value.department, - occupationEmail: defaultOccupation.value.email, - occupationTelephone: defaultOccupation.value.tel, - occupationPosition: type.value, - registAddress: defaultAddress.value.address, - currentAddress: defaultAddress.value.addressC, - registProvinceId: defaultAddress.value.provinceId, - currentProvinceId: defaultAddress.value.provinceIdC, - registDistrictId: defaultAddress.value.districtId, - currentDistrictId: defaultAddress.value.districtIdC, - registSubDistrictId: defaultAddress.value.subdistrictId, - currentSubDistrictId: defaultAddress.value.subdistrictIdC, - registZipCode: defaultAddress.value.code, - currentZipCode: defaultAddress.value.codeC, - registSame: - defaultAddress.value.same == '1' - ? true - : defaultAddress.value.same == '0' - ? false - : null, - marryPrefixId: defaultFamily.value.prefixIdC, - marryFirstName: defaultFamily.value.firstnameC, - marryLastName: defaultFamily.value.lastnameC, - marryOccupation: defaultFamily.value.occupationC, - marryNationality: defaultFamily.value.nationalityC, - fatherPrefixId: defaultFamily.value.prefixIdM, - fatherFirstName: defaultFamily.value.firstnameM, - fatherLastName: defaultFamily.value.lastnameM, - fatherOccupation: defaultFamily.value.occupationM, - fatherNationality: defaultFamily.value.nationalityM, - motherPrefixId: defaultFamily.value.prefixIdF, - motherFirstName: defaultFamily.value.firstnameF, - motherLastName: defaultFamily.value.lastnameF, - motherOccupation: defaultFamily.value.occupationF, - motherNationality: defaultFamily.value.nationalityF, - marry: - defaultFamily.value.same == '1' - ? true - : defaultFamily.value.same == '0' - ? false - : null - }) - .then(async () => { - success($q, 'บันทึกข้อมูลส่วนตัวสำเร็จ') - if (saveAuto.value) await saveForm() - }) - .catch((e) => { - messageError($q, e) - }) - .finally(async () => { - await props.fetchStep() - }) - }else{ - notifyError($q,"กรุณากรอกข้อมูลให้ครบถ้วน") - } - }) - }else{ - notifyError($q,"กรุณากรอกข้อมูลให้ครบถ้วน") - } + const type = ref('') + if (defaultOccupation.value.status == 'official') + type.value = defaultOccupation.value.official + if (defaultOccupation.value.status == 'personnel') + type.value = defaultOccupation.value.personnel + if (defaultOccupation.value.status == 'officialsOther') + type.value = defaultOccupation.value.officialsOther + if (defaultOccupation.value.status == 'employee') + type.value = defaultOccupation.value.employee + if (defaultOccupation.value.status == 'other') + type.value = defaultOccupation.value.other + loaderPage(true) + await http + .post(config.API.candidateId(examId.value, positionId.value), { + prefixId: defaultInformation.value.prefixId, + lastName: defaultInformation.value.lastname, + citizenProvinceId: defaultInformation.value.provinceId, + citizenDistrictId: defaultInformation.value.districtId, + dateOfBirth: + defaultInformation.value.birthDate == null + ? null + : dateToISO(defaultInformation.value.birthDate), + citizenDate: + defaultInformation.value.cardIdDate == null + ? null + : dateToISO(defaultInformation.value.cardIdDate), + citizenId: defaultInformation.value.cardid, + firstName: defaultInformation.value.firstname, + religionId: defaultInformation.value.religionId, + nationality: defaultInformation.value.nationality, + email: defaultInformation.value.email, + mobilePhone: defaultInformation.value.phone, + telephone: defaultInformation.value.tel, + knowledge: defaultInformation.value.knowledge, + occupationType: defaultOccupation.value.status, + occupationCompany: defaultOccupation.value.company, + occupationDepartment: defaultOccupation.value.department, + occupationEmail: defaultOccupation.value.email, + occupationTelephone: defaultOccupation.value.tel, + occupationPosition: type.value, + registAddress: defaultAddress.value.address, + currentAddress: defaultAddress.value.addressC, + registProvinceId: defaultAddress.value.provinceId, + currentProvinceId: defaultAddress.value.provinceIdC, + registDistrictId: defaultAddress.value.districtId, + currentDistrictId: defaultAddress.value.districtIdC, + registSubDistrictId: defaultAddress.value.subdistrictId, + currentSubDistrictId: defaultAddress.value.subdistrictIdC, + registZipCode: defaultAddress.value.code, + currentZipCode: defaultAddress.value.codeC, + registSame: + defaultAddress.value.same == '1' + ? true + : defaultAddress.value.same == '0' + ? false + : null, + marryPrefixId: defaultFamily.value.prefixIdC, + marryFirstName: defaultFamily.value.firstnameC, + marryLastName: defaultFamily.value.lastnameC, + marryOccupation: defaultFamily.value.occupationC, + marryNationality: defaultFamily.value.nationalityC, + fatherPrefixId: defaultFamily.value.prefixIdM, + fatherFirstName: defaultFamily.value.firstnameM, + fatherLastName: defaultFamily.value.lastnameM, + fatherOccupation: defaultFamily.value.occupationM, + fatherNationality: defaultFamily.value.nationalityM, + motherPrefixId: defaultFamily.value.prefixIdF, + motherFirstName: defaultFamily.value.firstnameF, + motherLastName: defaultFamily.value.lastnameF, + motherOccupation: defaultFamily.value.occupationF, + motherNationality: defaultFamily.value.nationalityF, + marry: + defaultFamily.value.same == '1' + ? true + : defaultFamily.value.same == '0' + ? false + : null + }) + .then(async () => { + success($q, 'บันทึกข้อมูลส่วนตัวสำเร็จ') + if (saveAuto.value) await saveForm() + }) + .catch((e) => { + messageError($q, e) + }) + .finally(async () => { + await props.fetchStep() + }) + } else { + notifyError($q, 'กรุณากรอกข้อมูลให้ครบถ้วน') + } }) - }else{ - notifyError($q,"กรุณากรอกข้อมูลให้ครบถ้วน") - } + // }else{ + // notifyError($q,"กรุณากรอกข้อมูลให้ครบถ้วน") + // } + // }) + } else { + notifyError($q, 'กรุณากรอกข้อมูลให้ครบถ้วน') + } }) - }else{ - notifyError($q,"กรุณากรอกข้อมูลให้ครบถ้วน") + } else { + notifyError($q, 'กรุณากรอกข้อมูลให้ครบถ้วน') } }) } diff --git a/src/modules/01_exam/components/Form/Information.vue b/src/modules/01_exam/components/Form/Information.vue index 58f85cc..5c4d4a4 100644 --- a/src/modules/01_exam/components/Form/Information.vue +++ b/src/modules/01_exam/components/Form/Information.vue @@ -56,12 +56,12 @@
@@ -163,99 +163,12 @@ v-model="defaultInformation.cardid" maxlength="13" :rules="[ - (val) => !!val || `${'กรุณากรอก เลขบัตรประจำตัวประชาชน'}`, - (val) => /^[0-9]*$/.test(val) || `${'กรุณากรอกเลขบัตรประจำตัวประชาชนให้ถูกต้อง'}` + (val) => val.length == 13 || `${'กรุณากรอก เลขประจำตัวประชาชน'}`, + (val) => /^[0-9]*$/.test(val) || `${'กรุณากรอกเลขประจำตัวประชาชนให้ถูกต้อง'}` ]" label="เลขบัตรประจำตัวประชาชน" />
-
- -
-
- -
- -
- - - - - -
- + ]" + /> +
-
+