เพิ่ม filter
This commit is contained in:
parent
4a9fa574de
commit
84f82b9457
3 changed files with 80 additions and 41 deletions
|
|
@ -1,26 +1,76 @@
|
|||
import { defineStore } from "pinia";
|
||||
import { ref } from "vue";
|
||||
import type { QTableProps } from "quasar";
|
||||
import type {
|
||||
investigateDisDataRowType,
|
||||
DataOption,
|
||||
} from "@/modules/11_discipline/interface/index/Main";
|
||||
import type { DataRows } from "@/modules/09_leave/interface/response/specialTime";
|
||||
import { useCounterMixin } from "@/stores/mixin";
|
||||
const mixin = useCounterMixin();
|
||||
const { date2Thai } = mixin;
|
||||
|
||||
export const useSpecialTimeStore = defineStore("LeaveSpecialTime", () => {
|
||||
const rows = ref<any[]>([]);
|
||||
async function fecthList(data: any[]) {
|
||||
let datalist: any[] = data.map((e: any) => ({
|
||||
const selectDate = ref<Date | null>(new Date());
|
||||
const fiscalYear = ref<string | null>("0");
|
||||
const DataMainOrig = ref<DataRows[]>([]); // ข้อมูลหลักดั้งเดิม
|
||||
async function fecthList(data: DataRows[]) {
|
||||
let datalist: DataRows[] = data.map((e: any) => ({
|
||||
fullname: e.fullname,
|
||||
date: date2Thai(new Date(e.date)),
|
||||
dateFix: date2Thai(new Date(e.dateFix)),
|
||||
dateFix: date2Thai(new Date(e.dateFix)) + (e.timeStamp || ""),
|
||||
type: e.type,
|
||||
reason: e.reason,
|
||||
timeStamp: e.timeStamp,
|
||||
}));
|
||||
rows.value = datalist;
|
||||
DataMainOrig.value = datalist;
|
||||
}
|
||||
const DataMainUpdate = ref<DataRows[]>([]); // ข้อมูลเปลี่ยนแปลง
|
||||
const DataMain = (val: DataRows[]) => (DataMainOrig.value = val);
|
||||
const DataUpdate = (filterYear: string) => {
|
||||
DataMainUpdate.value = [];
|
||||
if (filterYear === "") {
|
||||
DataMainUpdate.value = DataMainOrig.value;
|
||||
}
|
||||
};
|
||||
|
||||
//--------------|ฟิลเตอร์|--------------------------------------//
|
||||
const searchFilterTable = async (searchDate: any) => {
|
||||
rows.value = [];
|
||||
|
||||
if (fiscalYear.value !== undefined && searchDate.value !== null) {
|
||||
await DataUpdate(searchDate.value === "0" ? "all" : searchDate.value!);
|
||||
let filteredData = DataMainOrig.value;
|
||||
if (searchDate.value !== "0") {
|
||||
filteredData = filteredData.filter(
|
||||
(item: DataRows) => item.date === searchDate.value
|
||||
);
|
||||
console.log(searchDate.value);
|
||||
}
|
||||
const dataArr = filteredData.map((e: any) => ({
|
||||
fullname: e.fullname,
|
||||
date: date2Thai(new Date(e.date)),
|
||||
dateFix: date2Thai(new Date(e.dateFix)) + (e.timeStamp || ""),
|
||||
type: e.type,
|
||||
reason: e.reason,
|
||||
timeStamp: e.timeStamp,
|
||||
}));
|
||||
rows.value = dataArr;
|
||||
}
|
||||
};
|
||||
|
||||
// const filterSelector = (val: any, update: Function, refData: string) => {
|
||||
// switch (refData) {
|
||||
// case "":
|
||||
// update(() => {
|
||||
// selectDate.value = selectDate.value.filter(
|
||||
// (v: any) => v.name.indexOf(val) > -1
|
||||
// );
|
||||
// });
|
||||
// break;
|
||||
|
||||
// default:
|
||||
// break;
|
||||
// }
|
||||
// };
|
||||
|
||||
const visibleColumns = ref<String[]>([
|
||||
"no",
|
||||
|
|
@ -100,5 +150,8 @@ export const useSpecialTimeStore = defineStore("LeaveSpecialTime", () => {
|
|||
rows,
|
||||
visibleColumns,
|
||||
columns,
|
||||
DataMain,
|
||||
searchFilterTable,
|
||||
selectDate,
|
||||
};
|
||||
});
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue