ระบบการพัฒนา => รายการโครงการปรับการแสดงผลแบบฟอร์ม
This commit is contained in:
parent
41a0d80b64
commit
20e99fe23b
13 changed files with 1791 additions and 1319 deletions
|
|
@ -1,5 +1,5 @@
|
|||
<script setup lang="ts">
|
||||
import { ref, onMounted } from "vue";
|
||||
import { ref, onMounted, watch } from "vue";
|
||||
import { useQuasar } from "quasar";
|
||||
import { useRouter, useRoute } from "vue-router";
|
||||
import http from "@/plugins/http";
|
||||
|
|
@ -9,6 +9,8 @@ import config from "@/app.config";
|
|||
import BasicInfo from "@/modules/15_development/components/BasicInfo.vue"; // ข้อมูลเบื้องต้น
|
||||
import Target from "@/modules/15_development/components/Target.vue"; // เป้าหมาย
|
||||
import ProjectDetail from "@/modules/15_development/components/ProjectDetail.vue"; // ลักษณะโครงการ
|
||||
import Budget from "@/modules/15_development/components/Budget.vue"; // งบประมาณ
|
||||
import Risk from "@/modules/15_development/components/Risk.vue"; //ความเสี่ยง
|
||||
import FollowResult from "@/modules/15_development/components/FollowResult.vue"; // การติดตามประเมินผล
|
||||
import Other from "@/modules/15_development/components/Other.vue"; // อื่นๆ
|
||||
// import Record from "@/modules/15_development/components/Record.vue"; // บันทึกผล
|
||||
|
|
@ -16,8 +18,6 @@ import Other from "@/modules/15_development/components/Other.vue"; // อื่
|
|||
/** importStore*/
|
||||
import { useCounterMixin } from "@/stores/mixin";
|
||||
import { useDevelopmentDataStore } from "@/modules/15_development/store/developmentStore";
|
||||
import Budget from "@/modules/15_development/components/Budget.vue";
|
||||
import Risk from "@/modules/15_development/components/Risk.vue";
|
||||
|
||||
/** use*/
|
||||
const $q = useQuasar();
|
||||
|
|
@ -105,6 +105,45 @@ function onFinish(id: string) {
|
|||
onMounted(() => {
|
||||
projectId.value && getStatus(projectId.value);
|
||||
});
|
||||
|
||||
const isChangeData = ref<boolean>(false);
|
||||
/**
|
||||
* function เช็คการแกไข้ข้อมูล
|
||||
*/
|
||||
function onCheckChangeData() {
|
||||
isChangeData.value = true;
|
||||
}
|
||||
|
||||
const childBasicInfoRef = ref<InstanceType<typeof BasicInfo> | null>(null);
|
||||
const childProjectDetailRef = ref<InstanceType<typeof ProjectDetail> | null>(
|
||||
null
|
||||
);
|
||||
const childBudgetRef = ref<InstanceType<typeof Budget> | null>(null);
|
||||
const childRiskRef = ref<InstanceType<typeof Risk> | null>(null);
|
||||
const childFollowResultRef = ref<InstanceType<typeof FollowResult> | null>(
|
||||
null
|
||||
);
|
||||
const childOtherRef = ref<InstanceType<typeof Other> | null>(null);
|
||||
|
||||
watch(tab, (newValue, oldValue) => {
|
||||
console.log(`Count changed from ${oldValue} to ${newValue}`);
|
||||
if (isChangeData.value) {
|
||||
// เรียกใช้ฟังก์ชันของ component ลูก
|
||||
if (oldValue === "BasicInfo") {
|
||||
childBasicInfoRef.value?.onSubmit();
|
||||
} else if (oldValue === "ProjectDetail") {
|
||||
childProjectDetailRef.value?.onSubmit();
|
||||
} else if (oldValue === "Budget") {
|
||||
childBudgetRef.value?.onSubmit();
|
||||
} else if (oldValue === "Risk") {
|
||||
childRiskRef.value?.onSubmit();
|
||||
} else if (oldValue === "FollowResult") {
|
||||
childFollowResultRef.value?.onSubmit();
|
||||
} else if (oldValue === "Other") {
|
||||
childOtherRef.value?.onSubmit();
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
<template>
|
||||
<div class="toptitle text-dark col-12 row items-center">
|
||||
|
|
@ -166,34 +205,72 @@ onMounted(() => {
|
|||
<q-separator />
|
||||
<div class="q-pa-sm" style="padding: 0px">
|
||||
<q-tab-panels v-model="tab" animated>
|
||||
<!-- ข้อมูลเบื้องต้น -->
|
||||
<q-tab-panel style="padding: 0px" name="BasicInfo">
|
||||
<BasicInfo :next-step="nextStep" />
|
||||
</q-tab-panel>
|
||||
<q-tab-panel name="Target">
|
||||
<Target :prev-step="prevStep" :next-step="nextStep"
|
||||
/></q-tab-panel>
|
||||
<q-tab-panel name="ProjectDetail" style="padding: 0px">
|
||||
<ProjectDetail :prev-step="prevStep" :next-step="nextStep" />
|
||||
</q-tab-panel>
|
||||
<q-tab-panel name="Budget" style="padding: 0px">
|
||||
<Budget
|
||||
:status="status"
|
||||
:prev-step="prevStep"
|
||||
<BasicInfo
|
||||
ref="childBasicInfoRef"
|
||||
:next-step="nextStep"
|
||||
:onCheckChangeData="onCheckChangeData"
|
||||
v-model:isChangeData.value="isChangeData"
|
||||
/>
|
||||
</q-tab-panel>
|
||||
<q-tab-panel name="Risk" style="padding: 0px">
|
||||
<Risk :status="status" :prev-step="prevStep" :next-step="nextStep" />
|
||||
|
||||
<!-- เป้าหมาย -->
|
||||
<q-tab-panel name="Target">
|
||||
<Target :prev-step="prevStep" :next-step="nextStep" />
|
||||
</q-tab-panel>
|
||||
<q-tab-panel name="FollowResult">
|
||||
<FollowResult
|
||||
|
||||
<!-- ลักษณะโครงการ -->
|
||||
<q-tab-panel name="ProjectDetail" style="padding: 0px">
|
||||
<ProjectDetail
|
||||
ref="childProjectDetailRef"
|
||||
:prev-step="prevStep"
|
||||
:next-step="nextStep"
|
||||
:onCheckChangeData="onCheckChangeData"
|
||||
v-model:isChangeData.value="isChangeData"
|
||||
/>
|
||||
</q-tab-panel>
|
||||
|
||||
<!-- งบประมาณ -->
|
||||
<q-tab-panel name="Budget" style="padding: 0px">
|
||||
<Budget
|
||||
ref="childBudgetRef"
|
||||
:status="status"
|
||||
:prev-step="prevStep"
|
||||
:next-step="nextStep"
|
||||
:onCheckChangeData="onCheckChangeData"
|
||||
v-model:isChangeData.value="isChangeData"
|
||||
/>
|
||||
</q-tab-panel>
|
||||
|
||||
<!-- ความเสี่ยงและประโยชน์ที่จะได้รับ -->
|
||||
<q-tab-panel name="Risk" style="padding: 0px">
|
||||
<Risk
|
||||
ref="childRiskRef"
|
||||
:prev-step="prevStep"
|
||||
:next-step="nextStep"
|
||||
:onCheckChangeData="onCheckChangeData"
|
||||
v-model:isChangeData.value="isChangeData"
|
||||
/>
|
||||
</q-tab-panel>
|
||||
<q-tab-panel name="FollowResult" style="padding: 0px">
|
||||
<FollowResult
|
||||
ref="childFollowResultRef"
|
||||
:status="status"
|
||||
:prev-step="prevStep"
|
||||
:next-step="nextStep"
|
||||
:onCheckChangeData="onCheckChangeData"
|
||||
v-model:isChangeData.value="isChangeData"
|
||||
/>
|
||||
</q-tab-panel>
|
||||
<q-tab-panel name="Other" style="padding: 0px">
|
||||
<Other :status="status" :prev-step="prevStep" />
|
||||
<Other
|
||||
ref="childOtherRef"
|
||||
:status="status"
|
||||
:prev-step="prevStep"
|
||||
:onCheckChangeData="onCheckChangeData"
|
||||
v-model:isChangeData.value="isChangeData"
|
||||
/>
|
||||
</q-tab-panel>
|
||||
<!-- <q-tab-panel name="Record"> <Record /> </q-tab-panel> -->
|
||||
</q-tab-panels>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue