API รายการลา

This commit is contained in:
DESKTOP-1R2VSQH\Lenovo ThinkPad E490 2023-12-08 16:05:56 +07:00
parent 6d12f50399
commit 035696b5b0
18 changed files with 273 additions and 196 deletions

View file

@ -1,10 +1,14 @@
import { defineStore } from "pinia";
import { ref, onMounted } from "vue";
import { ref, reactive } from "vue";
import { useCounterMixin } from "@/stores/mixin";
/** importType*/
import type { DateFilter } from "@/modules/09_leave/interface/request/leave";
import type { QTableProps } from "quasar";
import type { DataRows } from "@/modules/09_leave/interface/response/leave";
import type {
DataRows,
ListLeave,
} from "@/modules/09_leave/interface/response/leave";
import type { FremData } from "@/modules/09_leave/interface/request/leave";
const mixin = useCounterMixin();
@ -16,6 +20,13 @@ export const useLeavelistDataStore = defineStore("leave", () => {
/** ข้อมูล Tab 1*/
const tabView = ref<string>("list");
/** filter*/
const filter = reactive<DateFilter>({
year: new Date().getFullYear(), //*ปีในการยื่นขอใบลา(ใช้เป็น คศ.)
type: "00000000-0000-0000-0000-000000000000", //*Id ประเภทการลา
status: "ALL", //*สถานะการของลา
keyword: "", //keyword ค้นหา
});
/**ข้อมูลใน Table*/
const mainData = ref<any>([]);
@ -29,14 +40,14 @@ export const useLeavelistDataStore = defineStore("leave", () => {
* fetchListLeave
* @param data Page
*/
async function fetchListLeave(data: any[]) {
let datalist = data.map((e: FremData) => ({
async function fetchListLeave(data: ListLeave[]) {
let datalist = data.map((e: ListLeave) => ({
id: e.id,
leaveTypeName: e.leaveTypeId && convertLeave(e.leaveTypeId),
leaveTypeName: e.leaveTypeName,
leaveTypeId: e.leaveTypeId,
fullname: e.fullname,
fullName: e.fullName,
dateSendLeave: e.dateSendLeave && date2Thai(e.dateSendLeave),
status: convertSatatus(e.status),
status: e.status && convertSatatus(e.status),
}));
mainData.value = datalist;
@ -52,7 +63,7 @@ export const useLeavelistDataStore = defineStore("leave", () => {
id: e.id,
leaveTypeName: e.leaveTypeId && convertLeave(e.leaveTypeId),
leaveTypeId: e.leaveTypeId,
fullname: e.fullname,
fullName: e.fullName,
dateSendLeave: e.dateSendLeave && date2Thai(e.dateSendLeave),
status: convertSatatus2(e.status),
}));
@ -75,6 +86,8 @@ export const useLeavelistDataStore = defineStore("leave", () => {
return "อนุมัติ";
case "REJECT":
return "ไม่อนุมัติ";
case "DELETE":
return "ยกเลิก";
}
}
@ -175,6 +188,8 @@ export const useLeavelistDataStore = defineStore("leave", () => {
/** ข้อมูล Main*/
tabMenu,
/** ข้อมูล Tab1*/
/** filter */
filter,
tabView,
/**ข้อมูลใน Table */
rows,