diff --git a/src/modules/06_evaluate/components/DialogMain.vue b/src/modules/06_evaluate/components/DialogMain.vue new file mode 100644 index 0000000..e450b92 --- /dev/null +++ b/src/modules/06_evaluate/components/DialogMain.vue @@ -0,0 +1,63 @@ + + + + diff --git a/src/modules/06_evaluate/components/EvaluateStepMain.vue b/src/modules/06_evaluate/components/EvaluateStepMain.vue new file mode 100644 index 0000000..7191424 --- /dev/null +++ b/src/modules/06_evaluate/components/EvaluateStepMain.vue @@ -0,0 +1,31 @@ + + + diff --git a/src/modules/06_evaluate/components/TableListEvaluate.vue b/src/modules/06_evaluate/components/TableListEvaluate.vue new file mode 100644 index 0000000..7d5fdf1 --- /dev/null +++ b/src/modules/06_evaluate/components/TableListEvaluate.vue @@ -0,0 +1,124 @@ + + + + diff --git a/src/modules/06_evaluate/interface/evalute.ts b/src/modules/06_evaluate/interface/evalute.ts index 3e52b92..e0194dd 100644 --- a/src/modules/06_evaluate/interface/evalute.ts +++ b/src/modules/06_evaluate/interface/evalute.ts @@ -56,10 +56,16 @@ interface CertificatesForm { issuer: string; } +interface ListMenu { + val: string; + label: string; +} + export type { FormCommand, FormCommandRef, FormSpec, EducationForm, CertificatesForm, + ListMenu, }; diff --git a/src/modules/06_evaluate/router.ts b/src/modules/06_evaluate/router.ts index 560cad3..3e0c639 100644 --- a/src/modules/06_evaluate/router.ts +++ b/src/modules/06_evaluate/router.ts @@ -1,4 +1,7 @@ -const evaluateMain = () => import("@/modules/06_evaluate/views/EvaluateMain.vue"); +const evaluateMain = () => + import("@/modules/06_evaluate/views/EvaluateMain.vue"); +const evaluateStep = () => + import("@/modules/06_evaluate/components/EvaluateStepMain.vue"); export default [ { @@ -10,4 +13,23 @@ export default [ Key: [7], }, }, + + { + path: "/evaluate/add", + name: "evaluate-add", + component: evaluateStep, + meta: { + Auth: true, + Key: [7], + }, + }, + { + path: "/evaluate/detail/:id", + name: "evaluate-detail", + component: evaluateStep, + meta: { + Auth: true, + Key: [7], + }, + }, ]; diff --git a/src/modules/06_evaluate/store.ts b/src/modules/06_evaluate/store.ts index 11efe15..07e6f08 100644 --- a/src/modules/06_evaluate/store.ts +++ b/src/modules/06_evaluate/store.ts @@ -1,7 +1,13 @@ import { defineStore } from "pinia"; import { ref } from "vue"; +import type { QTableProps } from "quasar"; export const useEvaluateStore = defineStore("evaluateStore", () => { + const filterKeyword = ref(""); + const columns = ref([]); + const visibleColumns = ref([]); + const row = ref(); + const tabMenu = ref("1"); const showLoadStatus = ref(false); const step = ref(1); @@ -23,6 +29,11 @@ export const useEvaluateStore = defineStore("evaluateStore", () => { const evaluateId = ref(""); return { + filterKeyword, + columns, + visibleColumns, + row, + tabMenu, step, currentStep, diff --git a/src/modules/06_evaluate/views/EvaluateMain.vue b/src/modules/06_evaluate/views/EvaluateMain.vue index 415973f..d5888cf 100644 --- a/src/modules/06_evaluate/views/EvaluateMain.vue +++ b/src/modules/06_evaluate/views/EvaluateMain.vue @@ -5,8 +5,10 @@ import { useRouter } from "vue-router"; import http from "@/plugins/http"; import config from "@/app.config"; -import Tab1 from "@/modules/06_evaluate/components/Tab1.vue"; // ชำนาญการ -import Tab2 from "@/modules/06_evaluate/components/Tab2.vue"; // ชำนาญการพิเศษ +import type { ListMenu } from "@/modules/06_evaluate/interface/evalute"; + +import TableListEvaluate from "@/modules/06_evaluate/components/TableListEvaluate.vue"; +import DialogMain from "@/modules/06_evaluate/components/DialogMain.vue"; import { useEvaluateStore } from "@/modules/06_evaluate/store"; import { useCounterMixin } from "@/stores/mixin"; @@ -17,12 +19,30 @@ const router = useRouter(); const $q = useQuasar(); const { showLoader, hideLoader, messageError } = mixin; + +const listMenu = ref([ + { + val: "EXPERT", + label: "ประเมินชำนาญการ", + }, + { + val: "SPECIAL_EXPERT", + label: "ประเมินชำนาญการพิเศษ", + }, +]); +const modal = ref(false); +const menu = ref(); + +function onclickAddEvaluate(data: ListMenu) { + modal.value = !modal.value; + menu.value = data; +}