diff --git a/src/modules/15_development/components/BasicInfo.vue b/src/modules/15_development/components/BasicInfo.vue index 75dd64fec..48ae1d24e 100644 --- a/src/modules/15_development/components/BasicInfo.vue +++ b/src/modules/15_development/components/BasicInfo.vue @@ -16,12 +16,18 @@ import { useCounterMixin } from "@/stores/mixin"; const $q = useQuasar(); const route = useRoute(); const mixin = useCounterMixin(); -const { dialogConfirm, showLoader, hideLoader, messageError, success } = mixin; +const { showLoader, hideLoader, messageError } = mixin; -const projectId = ref(route.params.id.toLocaleString()); +/** + * props + */ +const isChangeData = defineModel("isChangeData", { required: true }); const props = defineProps({ nextStep: { type: Function, required: true }, + onCheckChangeData: { type: Function, required: true }, }); + +const projectId = ref(route.params.id.toLocaleString()); const checkRoutePermission = ref( route.name == "developmentDetailPage" ); @@ -73,19 +79,20 @@ function fetchData(id: string) { }) .finally(() => { hideLoader(); + isChangeData.value = false; }); } -/** function บันทึกข้อมูล*/ +/** + * function บันทึกข้อมูล + */ function onSubmit() { - // dialogConfirm($q, () => { showLoader(); http .put(config.API.developmentMainTab("tab1", projectId.value), formData) .then(() => { fetchData(projectId.value); - // success($q, "บันทึกข้อมูลสำเร็จ"); - props.nextStep(); + isChangeData.value = false; }) .catch((err) => { messageError($q, err); @@ -93,10 +100,11 @@ function onSubmit() { .finally(() => { hideLoader(); }); - // }); } -/** function fetch หา Id หน่วยงานที่ Active*/ +/** + * function fetch หา Id หน่วยงานที่ Active + */ function fetchActive() { showLoader(); http @@ -138,16 +146,33 @@ function updateSelected(data: DataTree) { formData.node = data.orgLevel; formData.nodeId = data.orgTreeId; formData.orgRevisionId = data.orgRevisionId; + props.onCheckChangeData(); } -/** ดึงข้อมูลเมื่อโหลดหน้าเสร็จสิ้น */ +/** + * function ไปยัง Tab ค่อไป + */ +function onNextTab() { + props.nextStep(); +} + +/** + * ดึงข้อมูลเมื่อโหลดหน้าเสร็จสิ้น + */ onMounted(async () => { fetchActive(); }); + +/** + * เรียก function ไปใช่หน้าหลัก + */ +defineExpose({ + onSubmit, +});