From efcfda8b0eb0373799849df8414026d56a5e6c60 Mon Sep 17 00:00:00 2001 From: "DESKTOP-1R2VSQH\\Lenovo ThinkPad E490" Date: Fri, 25 Jul 2025 13:17:18 +0700 Subject: [PATCH] fix fetchprofilePosition --- .../06_evaluate/views/EvaluateMain.vue | 47 +- src/modules/11_probation/router.ts | 10 - src/modules/11_probation/views/main.vue | 430 ------------------ .../components/01_SurveyPage.vue | 19 +- .../components/02_ResultPage.vue | 7 +- .../components/03_AssignPage.vue | 6 +- src/stores/data.ts | 5 +- 7 files changed, 49 insertions(+), 475 deletions(-) delete mode 100644 src/modules/11_probation/views/main.vue diff --git a/src/modules/06_evaluate/views/EvaluateMain.vue b/src/modules/06_evaluate/views/EvaluateMain.vue index b9bf856..43d520d 100644 --- a/src/modules/06_evaluate/views/EvaluateMain.vue +++ b/src/modules/06_evaluate/views/EvaluateMain.vue @@ -7,6 +7,7 @@ import http from "@/plugins/http"; import config from "@/app.config"; import { useEvaluateStore } from "@/modules/06_evaluate/store"; import { useCounterMixin } from "@/stores/mixin"; +import { useDataStore } from "@/stores/data"; /** import Components*/ import TableListEvaluate from "@/modules/06_evaluate/components/TableListEvaluate.vue"; // ตารางประเมิน @@ -20,6 +21,7 @@ import type { OptionStatus } from "@/modules/06_evaluate/interface/main"; const $q = useQuasar(); const mixin = useCounterMixin(); const store = useEvaluateStore(); +const dataStore = useDataStore(); const router = useRouter(); const { showLoader, hideLoader, messageError } = mixin; @@ -98,24 +100,33 @@ async function fetchEvaluteList() { /** function เรียกรายการประเมิน*/ const statusSubmit = ref(true); async function getProfileCheck() { - await http - .get(config.API.profilePosition()) - .then(async (res: any) => { - const data = res.data.result; - if ( - data.posTypeRank != 2 || - (data.posTypeRank == 2 && data.posLevelRank >= 4) - ) { - statusSubmit.value = false; - } else { - listMenu.value = await listMenu.value.filter( - (x: ListMenu) => x.level > data.posLevelRank - ); - } - }) - .catch((err) => { - messageError($q, err); - }); + if (!dataStore.dataprofilePosition) { + await http + .get(config.API.profilePosition()) + .then(async (res: any) => { + const data = res.data.result; + checkProfilePosition(data); + }) + .catch((err) => { + messageError($q, err); + }); + } else { + const data = dataStore.dataprofilePosition; + checkProfilePosition(data); + } +} + +function checkProfilePosition(data: any) { + if ( + data.posTypeRank != 2 || + (data.posTypeRank == 2 && data.posLevelRank >= 4) + ) { + statusSubmit.value = false; + } else { + listMenu.value = listMenu.value.filter( + (x: ListMenu) => x.level > data.posLevelRank + ); + } } const selectedStatus = ref([ diff --git a/src/modules/11_probation/router.ts b/src/modules/11_probation/router.ts index 8284c0b..67c9b70 100644 --- a/src/modules/11_probation/router.ts +++ b/src/modules/11_probation/router.ts @@ -1,5 +1,4 @@ // registry -const probationPage = () => import("@/modules/11_probation/views/main.vue"); const probationDetail = () => import("@/modules/11_probation/views/mainDetail.vue"); @@ -34,15 +33,6 @@ const probationAddevaluascore = () => import("@/modules/11_probation/component/addPage/04_addevaluascore.vue"); export default [ - { - path: "/probation", - name: "probationMain", - component: probationPage, - meta: { - Auth: true, - Key: [11], - }, - }, { path: "/probation-detail/:id", name: "probationMainDetail", diff --git a/src/modules/11_probation/views/main.vue b/src/modules/11_probation/views/main.vue deleted file mode 100644 index c27501a..0000000 --- a/src/modules/11_probation/views/main.vue +++ /dev/null @@ -1,430 +0,0 @@ - - - diff --git a/src/modules/15_probationReport/components/01_SurveyPage.vue b/src/modules/15_probationReport/components/01_SurveyPage.vue index 57456f5..ffb598d 100644 --- a/src/modules/15_probationReport/components/01_SurveyPage.vue +++ b/src/modules/15_probationReport/components/01_SurveyPage.vue @@ -56,11 +56,11 @@ async function save() { showLoader(); await http .post(config.API.summarySurveyDetail(store.assignId), data) - .then((res: any) => { + .then(async () => { + await props.getSurveyData?.(); success($q, "บันทึกสำเร็จ"); - props.getSurveyData?.(); }) - .catch((e: any) => { + .catch((e) => { messageError($q, e); }) .finally(() => { @@ -93,17 +93,16 @@ watch( } ); - /** get ค่า เมื่อโหลดหน้า */ onMounted(() => { if (store.tabMain === "SURVEY") { - if (dataSurvey.value !== null) { - answer1.value = dataSurvey.value.answer1; - answer2.value = dataSurvey.value.answer2; - answer3.value = dataSurvey.value.answer3; - status.value = false; - } + if (dataSurvey.value !== null) { + answer1.value = dataSurvey.value.answer1; + answer2.value = dataSurvey.value.answer2; + answer3.value = dataSurvey.value.answer3; + status.value = false; } + } });