diff --git a/src/modules/05_placement/components/probation/FormAssign.vue b/src/modules/05_placement/components/probation/FormAssign.vue index 2242da3c3..104ea7f16 100644 --- a/src/modules/05_placement/components/probation/FormAssign.vue +++ b/src/modules/05_placement/components/probation/FormAssign.vue @@ -66,20 +66,26 @@ const OPgroup = ref< >([]); const dataEdit = async (id: string) => { - showLoader(); - const data = putDataEdit(id); - await http - .put(config.API.saveEditAssign(id), data) - .then(() => {}) - .catch(() => {}) - .finally(async () => { - status.value = false; - getAssign(); - hideLoader(); - }); + await myForm.value.validate().then((result: boolean) => { + if (result) { + showLoader(); + const data = putDataEdit(id); + http + .put(config.API.saveEditAssign(id), data) + .then(() => {}) + .catch(() => {}) + .finally(async () => { + status.value = false; + getAssign(); + hideLoader(); + }); + }else { + dialogMessageNotify($q, "กรุณากรอกข้อมูลให้ครบ"); + } + }); }; const saveEdit = (id: string) => { - dialogConfirm($q, () => dataEdit(id)); + dialogConfirm($q, async () => await dataEdit(id)); }; const edit = () => { status.value = true; @@ -392,7 +398,7 @@ const putDataEdit = (id: string) => { const assign_director = [ { - personal_id: caretaker1.value.personal_id, + personal_id: caretaker1.value.id != null ? caretaker1.value.id:caretaker1.value.personal_id, role: "mentor", dated: date2.value instanceof Date @@ -400,15 +406,7 @@ const putDataEdit = (id: string) => { : dateToISO(new Date(date2.value)), }, { - personal_id: caretaker2.value.personal_id, - role: "mentor", - dated: - date3.value instanceof Date - ? dateToISO(date3.value) - : dateToISO(new Date(date3.value)), - }, - { - personal_id: commander.value.personal_id, + personal_id: commander.value.id != null ? commander.value.id:commander.value.personal_id, role: "commander", dated: date4.value instanceof Date @@ -416,10 +414,20 @@ const putDataEdit = (id: string) => { : dateToISO(new Date(date4.value)), }, { - personal_id: chairman.value.personal_id, + personal_id: chairman.value.id != null ? chairman.value.id:chairman.value.personal_id, role: "chairman", }, ]; + if (caretaker2.value) { + assign_director.push({ + personal_id: caretaker2.value.id != null ? caretaker2.value.id:caretaker2.value.personal_id, + role: "mentor", + dated: + date3.value instanceof Date + ? dateToISO(date3.value) + : dateToISO(new Date(date3.value)), + }); + } const data = { personal_id: GUID, fullname: fullname.value, @@ -658,8 +666,11 @@ const getAssign = async () => { date_finish.value = data.assign.date_finish; date1.value = data.assign.experimenter_dated; if (data.mentors.length > 1) { + date2.value = data.mentors[0].dated; + caretaker1.value = data.mentors[0]; date3.value = data.mentors[1].dated; caretaker2.value = data.mentors[1]; + } else { date2.value = data.mentors[0].dated; caretaker1.value = data.mentors[0]; @@ -1000,7 +1011,6 @@ watch(knowledge.value, () => { 2 ผู้ดูแลการทดลองปฏิบัติหน้าที่ราชการ (อาจมีได้มากกว่า 1 คน) -
{ :disable="!caretaker2" :readonly="status != true" dense - s + :rules=" + caretaker2 + ? [(val) => !!val || 'กรุณาเลือกวันที่'] + : [] + " borderless :outlined="status == true" class="full-width datepicker" - :model-value="date3 != null ? date2Thai(date3) : null" + :model-value="caretaker2 != null ? date2Thai(date3) : null" label="ลงวันที่" >