แก้ UI รายการลา

This commit is contained in:
setthawutttty 2025-04-25 16:01:57 +07:00
parent 3b6172ee03
commit ea7af9e29c
31 changed files with 2463 additions and 1341 deletions

View file

@ -15,6 +15,7 @@ import type {
ListLeave,
ListLeaveTable,
} from "@/modules/05_leave/interface/response/leave";
import type { DataOption } from "../14_IDP/interface/Main";
const mixin = useCounterMixin();
const { date2Thai, messageError, showLoader, hideLoader } = mixin;
@ -41,9 +42,22 @@ export const useLeaveStore = defineStore("Leave", () => {
fullName: e.fullName,
dateSendLeave: e.dateSendLeave && date2Thai(e.dateSendLeave, false, true),
dateLeave:
date2Thai(e.leaveStartDate) + " - " + date2Thai(e.leaveEndDate),
e.leaveStartDate && e.leaveEndDate
? e.leaveStartDate === e.leaveEndDate
? date2Thai(e.leaveEndDate)
: `${date2Thai(e.leaveStartDate)}${
e.leaveRange !== "ALL" ? ` (${converstType(e.leaveRange)})` : ""
} - ${date2Thai(e.leaveEndDate)}${
e.leaveRangeEnd !== "ALL"
? ` (${converstType(e.leaveRangeEnd)})`
: ""
}`
: "-",
status: e.status,
hajjDayStatus: e.hajjDayStatus,
leaveRange: e.leaveRange,
leaveRangeEnd: e.leaveRangeEnd,
leaveSubTypeName: e.leaveSubTypeName,
statusConvert: convertStatud(e.status),
isDelete: e.isDelete,
}));
@ -143,17 +157,39 @@ export const useLeaveStore = defineStore("Leave", () => {
}
}
const rangeOptions = ref<DataOption[]>([
{
id: "ALL",
name: "เต็มวัน",
},
{
id: "MORNING",
name: "ครึ่งวันเช้า",
},
{
id: "AFTERNOON",
name: "ครึ่งวันบ่าย",
},
]);
function converstType(val: string) {
switch (val) {
case "ALL":
return "";
case "MORNING":
return "ครึ่งวันเช้า";
case "AFTERNOON":
return "ครึ่งวันบ่าย";
}
}
/** รายการประเภทการลาของ ลาไปศึกษา ฝึกอบรม ปฎิบัติการวิจัย หรือดูงาน*/
const optionsSpecific = ref<OptionData[]>([
{ id: "s1", name: "ลาไปศึกษาต่อ", code: "s1" },
{ id: "s2", name: "ลาฝึกอบรม/ปฎิบัติการวิจัย/ดูงาน", code: "s2" },
const optionsSpecific = ref<string[]>([
"ลาไปศึกษาต่อ",
"ลาฝึกอบรม/ปฎิบัติการวิจัย/ดูงาน",
]);
/** รายการประเภทการลาของ ลาอุปสมบทหรือลาประกอบพิธีฮัจญ์*/
const optionsOrdination = ref<OptionData[]>([
{ id: "b1", name: "ลาอุปสมบท", code: "b1" },
{ id: "b2", name: "ลาประกอบพิธีฮัจญ์", code: "b2" },
]);
const optionsOrdination = ref<string[]>(["ลาอุปสมบท", "ลาประกอบพิธีฮัจญ์"]);
/** data table filter & column ของรายการลา */
const visibleColumns = ref<string[]>([
@ -233,24 +269,6 @@ export const useLeaveStore = defineStore("Leave", () => {
return options.value.find((x) => x.code == val)?.name;
}
/**
* /
* @param val string
* @returns
*/
function convertSubtitleInfo(val: string) {
return optionsOrdination.value.find((x) => x.id == val)?.name;
}
/**
*
* @param val string
* @returns
*/
function convertSubtitleInfo2(val: string) {
return optionsSpecific.value.find((x) => x.id == val)?.name;
}
/**
* id api
* @param val string
@ -432,5 +450,7 @@ export const useLeaveStore = defineStore("Leave", () => {
statusOptionsMain,
telephoneNumber,
currentAddress,
rangeOptions,
converstType,
};
});