diff --git a/src/modules/08_KPI/store.ts b/src/modules/08_KPI/store.ts index b0337f2..86522fd 100644 --- a/src/modules/08_KPI/store.ts +++ b/src/modules/08_KPI/store.ts @@ -4,7 +4,38 @@ import type { DataOptions } from "./interface/index/Main"; export const useKpiDataStore = defineStore("KPIDate", () => { const tabMain = ref("1"); - const dataProfile = ref(null); + const dataProfile = ref({ + profileId: null, + prefix: "", + rank: "", + firstName: "", + lastName: "", + citizenId: "", + position: "", + posMaster: null, + posLevelName: null, + posLevelRank: null, + posLevelId: null, + posTypeName: null, + posTypeRank: null, + posTypeId: null, + posExecutiveName: "", + posExecutivePriority: null, + posExecutiveId: null, + rootId: null, + root: "", + child1Id: null, + child1: null, + child2Id: null, + child2: null, + child3Id: null, + child3: null, + child4Id: null, + child4: null, + node: null, + nodeId: null, + }); + const dataEvaluation = ref({ plannedPoint: 0, rolePoint: 0, @@ -43,12 +74,28 @@ export const useKpiDataStore = defineStore("KPIDate", () => { function convertStatus(val: string) { switch (val) { - case "PENDING": - return "รอดำเนินการ"; - case "INPROGRESS": - return "กําลังดำเนินการ"; - case "DONE": - return "ประเมินเสร็จสิ้น"; + case "NEW": + return "จัดทำข้อตกลง"; + case "REQEDIT": + return "ขอแก้ไขข้อตกลง"; + case "NEW_EVALUATOR": + return "รอผู้ประเมินตรวจสอบข้อตกลง"; + case "NEW_COMMANDER": + return "รอผู้บังคับบัญชาเหนือขึ้นไปตรวจสอบข้อตกลง"; + case "NEW_COMMANDER_HIGH": + return "รอผู้บังคับบัญชาเหนือขึ้นไปอีกชั้นหนึ่งตรวจสอบข้อตกลง"; + case "APPROVE": + return "รายงานความก้าวหน้า"; + case "EVALUATING": + return "รายงานผลสำเร็จของงาน"; + case "EVALUATING_EVALUATOR": + return "รอผู้ประเมินตรวจสอบผล"; + case "EVALUATING_COMMANDER": + return "รอผู้บังคับบัญชาเหนือขึ้นไปตรวจสอบผล"; + case "EVALUATING_COMMANDER_HIGH": + return "รอผู้บังคับบัญชาเหนือขึ้นไปอีกชั้นหนึ่งตรวจสอบผล"; + case "COMPLETE": + return "เสร็จสิ้น"; default: break; } @@ -182,6 +229,85 @@ export const useKpiDataStore = defineStore("KPIDate", () => { "blue-10", ]); + const tabOpen = ref(3); + const isRequestEditForm = ref(false); + const isEditForm = ref(false); + const isEvaluate = ref(false); + function checkStep(status: string, role: string) { + if (role == "REQ") { + switch (status) { + case "NEW": + tabOpen.value = 1; + isEditForm.value = true; + isEvaluate.value = false; + isRequestEditForm.value = false; + break; + case "NEW_EVALUATOR": + tabOpen.value = 1; + isEditForm.value = true; + isEvaluate.value = false; + isRequestEditForm.value = false; + break; + case "NEW_COMMANDER": + tabOpen.value = 1; + isEditForm.value = true; + isEvaluate.value = false; + isRequestEditForm.value = false; + break; + case "NEW_COMMANDER_HIGH": + tabOpen.value = 1; + isEditForm.value = true; + isEvaluate.value = false; + isRequestEditForm.value = false; + break; + case "APPROVE": + tabOpen.value = 1; + isEditForm.value = true; + isEvaluate.value = false; + isRequestEditForm.value = false; + break; + case "EVALUATING": + tabOpen.value = 1; + isEditForm.value = true; + isEvaluate.value = false; + isRequestEditForm.value = false; + break; + case "EVALUATING_EVALUATOR": + tabOpen.value = 1; + isEditForm.value = true; + isEvaluate.value = false; + isRequestEditForm.value = false; + break; + case "EVALUATING_COMMANDER": + tabOpen.value = 1; + isEditForm.value = true; + isEvaluate.value = false; + isRequestEditForm.value = false; + break; + case "EVALUATING_COMMANDER_HIGH": + tabOpen.value = 1; + isEditForm.value = true; + isEvaluate.value = false; + isRequestEditForm.value = false; + break; + case "COMPLETE": + tabOpen.value = 1; + isEditForm.value = true; + isEvaluate.value = false; + isRequestEditForm.value = false; + break; + + default: + tabOpen.value = 1; + isEditForm.value = false; + isEvaluate.value = false; + isRequestEditForm.value = false; + break; + } + } else if (role == "EVALUATOR") { + } + } + return { tabMain, dataProfile, @@ -195,5 +321,6 @@ export const useKpiDataStore = defineStore("KPIDate", () => { defaultCompetencyCoreLevel, defaultCompetencyGroupLevel, ratingColors, + tabOpen, }; });