diff --git a/src/modules/03_retire/router.ts b/src/modules/03_retire/router.ts index d664f2b..68edb28 100644 --- a/src/modules/03_retire/router.ts +++ b/src/modules/03_retire/router.ts @@ -2,11 +2,11 @@ * Router ขอโอน */ -const Main = () => import("@/modules/03_retire/views/main.vue") +const Main = () => import("@/modules/03_retire/views/Main.vue") -const AddRetire = () => import("@/modules/03_retire/views/addRetire.vue") +const AddRetire = () => import("@/modules/03_retire/views/AddRetire.vue") -const ResultQuestionair = () => import("@/modules/03_retire/views/result.vue") +const ResultQuestionair = () => import("@/modules/03_retire/views/Result.vue") export default [ { diff --git a/src/modules/04_checkin/router.ts b/src/modules/04_checkin/router.ts index 7888fc7..5f514e7 100644 --- a/src/modules/04_checkin/router.ts +++ b/src/modules/04_checkin/router.ts @@ -2,8 +2,8 @@ * Router Checkin */ -const Checkin = () => import("@/modules/04_checkin/views/checkIn.vue"); -const History = () => import("@/modules/04_checkin/views/history.vue"); +const Checkin = () => import("@/modules/04_checkin/views/CheckIn.vue"); +const History = () => import("@/modules/04_checkin/views/History.vue"); /* const Checkout = () => import("@/modules/04_checkin/views/Checkout.vue"); */ diff --git a/src/modules/04_checkin/views/Checkin.vue b/src/modules/04_checkin/views/Checkin.vue index 66feb24..8652ee2 100644 --- a/src/modules/04_checkin/views/Checkin.vue +++ b/src/modules/04_checkin/views/Checkin.vue @@ -65,7 +65,7 @@ @@ -86,7 +86,8 @@
@@ -123,7 +124,7 @@
- +
สถานที่ทำงาน
@@ -214,7 +215,8 @@ const coordinates = ref('13° 43’ 45” N 100° 31’ 26” E'); const workplace = ref('in-place'); const model = ref(null); const options = ref(['ปฏิบัติงานที่บ้าน', 'ลืมลงเวลาปฏิบัติงาน', 'ไปประชุม/อบรม/สัมมนา/ปฏิบัติงานที่บ้านนอกสถานที่', 'ขออนุญาตออกนอกสถานที่']); -const checkIn = ref(true); + +const checkIn = ref(true); //เช็คการเช็คอิน ถ้าลงเวลาครั้งแรกเป็นเช็คอิน(สีเขียว) true แต่ถ้าครั้ง 2 เป็นเช็คเอ้าท์(สีแดง) false const camera = ref(false); const dialogTime = ref(false); diff --git a/src/modules/04_checkin/views/history.vue b/src/modules/04_checkin/views/history.vue index 663d699..c541812 100644 --- a/src/modules/04_checkin/views/history.vue +++ b/src/modules/04_checkin/views/history.vue @@ -60,7 +60,7 @@
- + @@ -81,7 +81,6 @@
-
@@ -89,7 +88,7 @@ import type { QTableProps } from "quasar"; import { ref } from "vue"; import { useRouter } from "vue-router"; -import Table from "@/modules/04_checkin/componenst/tableHistory.vue" +import Table from "@/modules/04_checkin/componenst/TableHistory.vue" const router = useRouter(); diff --git a/src/modules/05_leave/componenst/Calendar.vue b/src/modules/05_leave/componenst/Calendar.vue new file mode 100644 index 0000000..cfbf25c --- /dev/null +++ b/src/modules/05_leave/componenst/Calendar.vue @@ -0,0 +1,264 @@ + + + + diff --git a/src/modules/05_leave/componenst/ListCalendar.vue b/src/modules/05_leave/componenst/ListCalendar.vue new file mode 100644 index 0000000..12d52ee --- /dev/null +++ b/src/modules/05_leave/componenst/ListCalendar.vue @@ -0,0 +1,97 @@ + + \ No newline at end of file diff --git a/src/modules/05_leave/componenst/Table.vue b/src/modules/05_leave/componenst/Table.vue new file mode 100644 index 0000000..d74ef45 --- /dev/null +++ b/src/modules/05_leave/componenst/Table.vue @@ -0,0 +1,225 @@ + + + diff --git a/src/modules/05_leave/interface/request/Calendar.ts b/src/modules/05_leave/interface/request/Calendar.ts new file mode 100644 index 0000000..38deeda --- /dev/null +++ b/src/modules/05_leave/interface/request/Calendar.ts @@ -0,0 +1,77 @@ +interface DataNumObject { + id: number; + count: number; + name: string; + color: string; +} + +interface DataDateAddObject { + year: number; + holidayDate: Date | string; + name: string; + isSpecial: boolean; +} + +interface DataDateMonthObject { + month: number; + year: number; +} + +//ข้อมูล +interface RequestItemsObject { + createdAt?: Date; + createdFullName: string; + createdUserId: string; + holidayDate: Date | string; + id: string; + isSpecial: boolean; + lastUpdateFullName: string; + lastUpdateUserId: string; + lastUpdatedAt?: Date; + name: string; + originalDate: Date; +} + +interface DataDateRowObject { + holidayDate: Date; + name: string; + isSpecial: boolean; + id: string; +} + +interface DataDateListsObject { + id: string; + dateRange: [Date, Date]; + dataRangeRow: DataDateRowObject[]; + detail: string; + isSpecial: boolean; +} + +//columns +interface Columns { + [index: number]: { + name: string; + align?: string; + label: string; + sortable?: boolean; + field: string | ((row: any) => any); + headerStyle?: string; + style?: string; + }; +} + +interface TabsObject { + label: string; + value: string; +} + +export type { + DataNumObject, + DataDateAddObject, + DataDateMonthObject, + RequestItemsObject, + DataDateRowObject, + DataDateListsObject, + Columns, + TabsObject, +}; diff --git a/src/modules/05_leave/router.ts b/src/modules/05_leave/router.ts index 3ab342b..f0c2ffc 100644 --- a/src/modules/05_leave/router.ts +++ b/src/modules/05_leave/router.ts @@ -1,3 +1,18 @@ /** * Router leave */ +const leave = () => import("@/modules/05_leave/views/Main.vue"); + +/* const Checkout = () => import("@/modules/04_checkin/views/Checkout.vue"); + */ +export default [ + { + path: "/leave", + name: "leave", + component: leave, + meta: { + Auth: true, + Key: [7], + }, + } +] \ No newline at end of file diff --git a/src/modules/05_leave/views/Main.vue b/src/modules/05_leave/views/Main.vue new file mode 100644 index 0000000..5513eb1 --- /dev/null +++ b/src/modules/05_leave/views/Main.vue @@ -0,0 +1,230 @@ + + + \ No newline at end of file diff --git a/src/router/index.ts b/src/router/index.ts index ae5a142..3d71f48 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -4,8 +4,9 @@ const MainLayout = () => import("@/views/MainLayout.vue") const Dashboard = () => import("@/modules/01_dashboard/views/Dashboard.vue") import ModuleTransfer from "@/modules/02_transfer/router.ts" -import ModuleLeave from "@/modules/03_retire/router" +import ModuleRetire from "@/modules/03_retire/router" import ModuleCheckin from "@/modules/04_checkin/router.ts" +import ModuleLeave from "@/modules/05_leave/router.ts" // TODO: ใช้หรือไม่? import keycloak from "@/plugins/keycloak" @@ -27,8 +28,9 @@ const router = createRouter({ }, }, ...ModuleTransfer, - ...ModuleLeave, - ...ModuleCheckin + ...ModuleRetire, + ...ModuleCheckin, + ...ModuleLeave ], }, ], diff --git a/src/views/MainLayout.vue b/src/views/MainLayout.vue index 4fbfc35..95a0baf 100644 --- a/src/views/MainLayout.vue +++ b/src/views/MainLayout.vue @@ -129,6 +129,7 @@ const doLogout = () => { name="leave" label="การลา" icon="mdi-calendar-blank-outline" + @click="router.push(`/leave`)" /> @@ -298,7 +299,13 @@ const doLogout = () => { icon="mdi-map-marker-check-outline" @click="router.push(`/check-in`)" /> - + @@ -366,4 +373,8 @@ const doLogout = () => { .q-field--outlined .q-icon { color: #7474747f; } + +.shadow-0{ + box-shadow:none !important; +}