refactor code ส่วนของเครื่องราชฯ
This commit is contained in:
parent
33c2b338a2
commit
1ed9faebf2
11 changed files with 326 additions and 149 deletions
|
|
@ -37,10 +37,11 @@ const options = ref([
|
|||
|
||||
onMounted(async () => {
|
||||
if (route.params.id) {
|
||||
// มี params id ให้ เรียกข้อมูลของรอบการเสนอขอ
|
||||
await fetchData();
|
||||
}
|
||||
});
|
||||
|
||||
// เรียกข้อมูลของรอบการเสนอขอ
|
||||
const fetchData = async () => {
|
||||
edit.value = true;
|
||||
showLoader();
|
||||
|
|
@ -77,7 +78,70 @@ const fileUploadDoc = async (files: any) => {
|
|||
const updateYear = async (e: number) => {
|
||||
yearly.value = e;
|
||||
};
|
||||
// แก้ไขข้อมูล
|
||||
|
||||
// คลิกบันทึก
|
||||
const checkSave = () => {
|
||||
if (myForm.value !== null) {
|
||||
myForm.value.validate().then(async (success) => {
|
||||
if (success) {
|
||||
dialogConfirm($q, () => SaveData());
|
||||
} else if (Number(datelast.value) !== 0) {
|
||||
dialogMessageNotify($q, "กรุณาเลือกรอบการเสนอขอพระราชทานเครื่องราชฯ");
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
// บันทึกข้อมูล
|
||||
const SaveData = async () => {
|
||||
if (edit.value) {
|
||||
await editData(id.value);
|
||||
} else {
|
||||
await addData();
|
||||
clickBack();
|
||||
}
|
||||
};
|
||||
// อัพเดทวันที่เริ่มต้น และ สิ้นสุด
|
||||
const updateDateRange = () => {
|
||||
if (roundInsig.value.value == 1) {
|
||||
dateStart.value = new Date(new Date().getFullYear(), 9, 1);
|
||||
dateEnd.value = new Date(new Date().getFullYear() + 1, 3, 29);
|
||||
} else if (roundInsig.value.value == 2) {
|
||||
dateStart.value = new Date(new Date().getFullYear(), 3, 29);
|
||||
dateEnd.value = new Date(new Date().getFullYear(), 4, 29);
|
||||
}
|
||||
};
|
||||
// เพิ่มข้อมูลรอบการเสนอขอพระราชทานเครื่องราชฯ
|
||||
const addData = async () => {
|
||||
const formData = new FormData();
|
||||
const name = `รอบการเสนอขอพระราชทานเครื่องราชรอบที่ ${
|
||||
roundInsig.value.value
|
||||
} ปี ${yearly.value + 543} `;
|
||||
formData.append("name", name);
|
||||
formData.append("year", yearly.value.toString());
|
||||
formData.append("amount", datelast.value.toString());
|
||||
formData.append("round", roundInsig.value.value);
|
||||
if (dateStart.value !== null) {
|
||||
formData.append("startDate", dateToISO(dateStart.value));
|
||||
}
|
||||
if (dateEnd.value !== null) {
|
||||
formData.append("endDate", dateToISO(dateEnd.value));
|
||||
}
|
||||
formData.append("file", files.value);
|
||||
showLoader();
|
||||
await http
|
||||
.post(config.API.listRoundInsignia(), formData)
|
||||
.then(() => {
|
||||
success($q, "บันทึกข้อมูลสำเร็จ");
|
||||
})
|
||||
.catch((e) => {
|
||||
messageError($q, e);
|
||||
})
|
||||
.finally(async () => {
|
||||
hideLoader();
|
||||
});
|
||||
};
|
||||
// แก้ไขข้อมูล
|
||||
const editData = async (id: string) => {
|
||||
const formData = new FormData();
|
||||
const name = `รอบการเสนอขอพระราชทานเครื่องราชรอบที่ ${
|
||||
|
|
@ -108,66 +172,6 @@ const editData = async (id: string) => {
|
|||
clickBack();
|
||||
});
|
||||
};
|
||||
const checkSave = () => {
|
||||
if (myForm.value !== null) {
|
||||
myForm.value.validate().then(async (success) => {
|
||||
if (success) {
|
||||
dialogConfirm($q, () => SaveData());
|
||||
} else {
|
||||
dialogMessageNotify($q, "กรุณาเลือกรอบการเสนอขอพระราชทานเครื่องราชฯ");
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
const SaveData = async () => {
|
||||
if (edit.value) {
|
||||
await editData(id.value);
|
||||
} else {
|
||||
await addData();
|
||||
clickBack();
|
||||
}
|
||||
};
|
||||
|
||||
const updateDateRange = () => {
|
||||
if (roundInsig.value.value == 1) {
|
||||
dateStart.value = new Date(new Date().getFullYear(), 9, 1);
|
||||
dateEnd.value = new Date(new Date().getFullYear() + 1, 3, 29);
|
||||
} else if (roundInsig.value.value == 2) {
|
||||
dateStart.value = new Date(new Date().getFullYear(), 3, 29);
|
||||
dateEnd.value = new Date(new Date().getFullYear(), 4, 29);
|
||||
}
|
||||
};
|
||||
|
||||
const addData = async () => {
|
||||
const formData = new FormData();
|
||||
const name = `รอบการเสนอขอพระราชทานเครื่องราชรอบที่ ${
|
||||
roundInsig.value.value
|
||||
} ปี ${yearly.value + 543} `;
|
||||
formData.append("name", name);
|
||||
formData.append("year", yearly.value.toString());
|
||||
formData.append("amount", datelast.value.toString());
|
||||
formData.append("round", roundInsig.value.value);
|
||||
if (dateStart.value !== null) {
|
||||
formData.append("startDate", dateToISO(dateStart.value));
|
||||
}
|
||||
if (dateEnd.value !== null) {
|
||||
formData.append("endDate", dateToISO(dateEnd.value));
|
||||
}
|
||||
formData.append("file", files.value);
|
||||
|
||||
showLoader();
|
||||
await http
|
||||
.post(config.API.listRoundInsignia(), formData)
|
||||
.then(() => {
|
||||
success($q, "บันทึกข้อมูลสำเร็จ");
|
||||
})
|
||||
.catch((e) => {
|
||||
messageError($q, e);
|
||||
})
|
||||
.finally(async () => {
|
||||
hideLoader();
|
||||
});
|
||||
};
|
||||
|
||||
const clickBack = () => {
|
||||
router.push({ name: "insigniaProposals" });
|
||||
|
|
@ -329,6 +333,11 @@ const clickBack = () => {
|
|||
v-model="datelast"
|
||||
label="จำนวนวันแจ้งเตือนก่อนวันสิ้นสุด"
|
||||
mask="###"
|
||||
:rules="[
|
||||
(val) =>
|
||||
!!val || `${'กรุณากรอกจำนวนวันแจ้งเตือนก่อนวันสิ้นสุด'}`,
|
||||
]"
|
||||
lazy-rules
|
||||
/>
|
||||
|
||||
<q-file
|
||||
|
|
|
|||
|
|
@ -82,7 +82,6 @@ const columns = ref<QTableProps["columns"]>([
|
|||
style: "font-size: 14px",
|
||||
},
|
||||
]);
|
||||
|
||||
// ข้อมูลตาราง (จำลอง)
|
||||
const rows = ref<FormProprsalsRound2[]>([]);
|
||||
|
||||
|
|
@ -118,11 +117,11 @@ const fetchData = async () => {
|
|||
hideLoader();
|
||||
});
|
||||
};
|
||||
|
||||
// redirect หน้าข้อมูลรอบการเสนอข้อ
|
||||
const clickEdit = (col: any) => {
|
||||
router.push(`/insignia/round-add/${col.period_id}`);
|
||||
};
|
||||
|
||||
// ยืนยันการลบรอบการเสนอขอ
|
||||
const clickDelete = (id: string) => {
|
||||
dialogRemove($q, async () => {
|
||||
showLoader();
|
||||
|
|
@ -144,15 +143,15 @@ const clickDelete = (id: string) => {
|
|||
const clickAdd = () => {
|
||||
router.push({ name: "roundAdd" });
|
||||
};
|
||||
|
||||
// คำนวณราชชื่อผู้ได้รับเครื่องราช
|
||||
const clickListInsignia = async (propsId: string) => {
|
||||
dialogConfirm(
|
||||
$q,
|
||||
async () => {
|
||||
await getRequest(propsId);
|
||||
},
|
||||
"ยืนยันการคำนวณราชชื่อผู้ได้รับเครื่องราช",
|
||||
"ต้องการยืนยันการคำนวณราชชื่อผู้ได้รับเครื่องราชนี้หรือไม่ ?"
|
||||
"ยืนยันการคำนวณราชชื่อผู้ได้รับเครื่องราชฯ",
|
||||
"ต้องการยืนยันการคำนวณราชชื่อผู้ได้รับเครื่องราชฯนี้หรือไม่ ?"
|
||||
);
|
||||
};
|
||||
// เรียกจาก API ข้อมูลผู้ได้รับเครื่องราชฯ
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue