-
กรรมการ
+
+ รายการชื่อกรรมการ
-
+
+
+
+
+
+ เพิ่มรายชื่อกรรมการ
+
+
+
-
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ col.label }}
+
+
+
+
+
+
+
+
+
+ {{ col.value }}
+
+
+
+
+ ลบข้อมูล
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/modules/11_discipline/interface/request/director.ts b/src/modules/11_discipline/interface/request/director.ts
new file mode 100644
index 000000000..0e2915927
--- /dev/null
+++ b/src/modules/11_discipline/interface/request/director.ts
@@ -0,0 +1,24 @@
+interface FormData {
+ prefix: string;
+ firstname: string;
+ lastname: string;
+ position: string;
+ phone: string;
+ responsibilities: string;
+ email: string;
+}
+interface FormRef {
+ prefix: object | null;
+ firstname: object | null;
+ lastname: object | null;
+ position: object | null;
+ phone: object | null;
+ responsibilities: object | null;
+ email: object | null;
+ [key: string]: any;
+}
+
+export type {
+ FormData,
+ FormRef
+};
\ No newline at end of file
diff --git a/src/modules/11_discipline/interface/response/director.ts b/src/modules/11_discipline/interface/response/director.ts
new file mode 100644
index 000000000..33d3e6a37
--- /dev/null
+++ b/src/modules/11_discipline/interface/response/director.ts
@@ -0,0 +1,12 @@
+interface DirectorRows {
+ no: number;
+ name: string;
+ position: string;
+ responsibilities: string;
+ email: string;
+ phone: string;
+}
+
+export type {
+ DirectorRows
+};
\ No newline at end of file
diff --git a/src/modules/11_discipline/router.ts b/src/modules/11_discipline/router.ts
index d0a715198..8744c5a70 100644
--- a/src/modules/11_discipline/router.ts
+++ b/src/modules/11_discipline/router.ts
@@ -18,14 +18,22 @@ const directorMain = () =>
import(
"@/modules/11_discipline/components/6_BasicInformation/Director/MainPage.vue"
);
+ const directorAdd = () =>
+ import(
+ "@/modules/11_discipline/components/6_BasicInformation/Director/AddPage.vue"
+ );
+ const directorEdit = () =>
+ import(
+ "@/modules/11_discipline/components/6_BasicInformation/Director/EditPage.vue"
+ );
const channelMain = () =>
import(
"@/modules/11_discipline/components/6_BasicInformation/Channel/MainPage.vue"
);
- const channelAdd = () =>
+const channelAdd = () =>
import(
"@/modules/11_discipline/components/6_BasicInformation/Channel/addChannel.vue"
- );
+ );
const complaintAdd = () =>
import("@/modules/11_discipline/components/1_Complaint/AddComplaintPage.vue");
const reportType = () =>
@@ -35,7 +43,8 @@ const InvestigateDisciplinaryAdd = () =>
import(
"@/modules/11_discipline/components/3_InvestigateDisciplinary/addInvestigate.vue"
);
-const orderPage = () => import("@/modules/11_discipline/components/4_Order/OrderPage.vue")
+const orderPage = () =>
+ import("@/modules/11_discipline/components/4_Order/OrderPage.vue");
export default [
{
path: "/discipline/complaints",
@@ -107,6 +116,7 @@ export default [
Role: "coin",
},
},
+ // ข้อมูลพื้นฐาน กรรมการ
{
path: "/discipline/director",
name: "/discipline-director",
@@ -118,9 +128,19 @@ export default [
},
},
{
- path: "/discipline/director",
- name: "/discipline-director",
- component: directorMain,
+ path: "/discipline/director/add",
+ name: "discipline-director-add",
+ component: directorAdd,
+ meta: {
+ Auth: true,
+ Key: [11.6],
+ Role: "coin",
+ },
+ },
+ {
+ path: "/discipline/director/:id",
+ name: "discipline-director-edit",
+ component: directorEdit,
meta: {
Auth: true,
Key: [11.6],
diff --git a/src/modules/11_discipline/stroes/DirectorStore.ts b/src/modules/11_discipline/stroes/DirectorStore.ts
new file mode 100644
index 000000000..9309c983f
--- /dev/null
+++ b/src/modules/11_discipline/stroes/DirectorStore.ts
@@ -0,0 +1,91 @@
+import { defineStore } from "pinia";
+import { ref } from "vue";
+import type { DirectorRows } from "@/modules/11_discipline/interface/response/director";
+import type { QTableProps } from "quasar";
+
+// store ระบบวินัย >> ข้อมูลพื้นฐาน >> กรรมการ
+export const useDisciplineDirectorDataStore = defineStore(
+ "disciplineDirector",
+ () => {
+ //ค้นหา คอลัมน์ คอลัมน์ที่แสดง
+ const visibleColumns = ref
([
+ "no",
+ "name",
+ "position",
+ "responsibilities",
+ "email",
+ "phone",
+ ]);
+
+ // หัวตาราง
+ const columns = ref([
+ {
+ name: "no",
+ align: "left",
+ label: "ลำดับ",
+ sortable: false,
+ field: "no",
+ headerStyle: "font-size: 14px",
+ style: "font-size: 14px",
+ },
+ {
+ name: "name",
+ align: "left",
+ label: "ชื่อ-นามสกุล",
+ sortable: true,
+ field: "name",
+ headerStyle: "font-size: 14px",
+ style: "font-size: 14px",
+ },
+ {
+ name: "position",
+ align: "left",
+ label: "ตำแหน่ง",
+ sortable: true,
+ field: "position",
+ headerStyle: "font-size: 14px",
+ style: "font-size: 14px",
+ },
+ {
+ name: "responsibilities",
+ align: "left",
+ label: "หน้าที่",
+ sortable: true,
+ field: "responsibilities",
+ headerStyle: "font-size: 14px",
+ style: "font-size: 14px",
+ },
+ {
+ name: "email",
+ align: "left",
+ label: "อีเมล",
+ sortable: true,
+ field: "email",
+ headerStyle: "font-size: 14px",
+ style: "font-size: 14px",
+ },
+ {
+ name: "phone",
+ align: "left",
+ label: "เบอร์โทรศัพท์",
+ sortable: true,
+ field: "phone",
+ headerStyle: "font-size: 14px",
+ style: "font-size: 14px",
+ },
+ ]);
+
+ // ข้อมูลในตาราง
+ const rows = ref([]);
+ function fetchData(data: DirectorRows[]) {
+ rows.value = data
+ }
+
+ return {
+ visibleColumns,
+ columns,
+ rows,
+ fetchData
+ };
+ }
+);