hrms-mgt/src/modules/10_order/store.ts

161 lines
7.3 KiB
TypeScript
Raw Normal View History

import { defineStore } from "pinia";
import { ref } from "vue";
import type { FormOrderPlacementMainData } from "@/modules/10_order/interface/request/Main";
export const useOrderPlacementDataStore = defineStore("placementOrder", () => {
interface placementOrder {
mappingPosition: { columns: String[] };
}
const placementOrderData = ref<placementOrder>({
mappingPosition: { columns: [] },
});
const changePlacementColumns = (system: String, val: String[]) => {
if (system == "mappingPosition")
placementOrderData.value.mappingPosition.columns = val;
localStorage.setItem(
"placementOrder",
JSON.stringify(placementOrderData.value)
);
};
if (localStorage.getItem("placementOrder") !== null) {
placementOrderData.value = JSON.parse(
localStorage.getItem("placementOrder") || "{}"
);
}
const DataMainYearOrder = ref<object[]>([]); // ข้อมูลจำนวนปี
const DataMainOrigOrder = ref<FormOrderPlacementMainData[]>([]); // ข้อมูลหลักดั้งเดิม
const DataMainUpdateOrder = ref<FormOrderPlacementMainData[]>([]); // ข้อมูลเปลี่ยนแปลง
const DataMainYearSetOrder = (val: FormOrderPlacementMainData[]) =>
(DataMainYearOrder.value = val);
const DataMainOrder = (val: FormOrderPlacementMainData[]) =>
(DataMainOrigOrder.value = val);
const DataUpdateOrder = (
filter_1: string,
filter_2: string,
filterYear: number | null
) => {
DataMainUpdateOrder.value = [];
2023-09-26 09:25:43 +07:00
if (filter_1 === "" && filter_2 === "ทั้งหมด" && filterYear === 0) {
DataMainUpdateOrder.value = DataMainOrigOrder.value;
2023-09-26 09:25:43 +07:00
} else if (filter_1 !== "" && filter_2 === "ทั้งหมด" && filterYear === 0) {
DataMainUpdateOrder.value = DataMainOrigOrder.value.filter(
2023-09-26 09:25:43 +07:00
(item) => item.orderTypeValue === filter_1
);
} else if (
filter_1 !== "" &&
filter_2 !== "ทั้งหมด" &&
filterYear === null
) {
DataMainUpdateOrder.value = DataMainOrigOrder.value.filter(
(item) =>
item.orderTypeValue === filter_1 && item.OrderStatus === filter_2
);
2023-09-26 09:25:43 +07:00
} else if (filter_1 !== "" && filter_2 === "ทั้งหมด" && filterYear !== 0) {
DataMainUpdateOrder.value = DataMainOrigOrder.value.filter(
(item) =>
item.orderTypeValue === filter_1 && item.fiscalYear === filterYear
);
2023-09-26 09:25:43 +07:00
} else if (filter_1 === "" && filter_2 !== "ทั้งหมด" && filterYear === 0) {
DataMainUpdateOrder.value = DataMainOrigOrder.value.filter(
(item) => item.OrderStatus === filter_2
);
2023-09-26 09:25:43 +07:00
} else if (filter_1 === "" && filter_2 === "ทั้งหมด" && filterYear !== 0) {
DataMainUpdateOrder.value = DataMainOrigOrder.value.filter(
(item) => item.fiscalYear === filterYear
);
} else if (
filter_1 === "" &&
filter_2 !== "ทั้งหมด" &&
filterYear !== null
) {
DataMainUpdateOrder.value = DataMainOrigOrder.value.filter(
(item) =>
item.OrderStatus === filter_2 && item.fiscalYear === filterYear
);
2023-09-26 09:25:43 +07:00
} else if (filter_1 !== "" && filter_2 !== "ทั้งหมด" && filterYear === 0) {
DataMainUpdateOrder.value = DataMainOrigOrder.value.filter(
(item) =>
item.OrderStatus === filter_2 && item.orderTypeValue === filter_1
);
} else if (
filter_1 !== "" &&
filter_2 !== "ทั้งหมด" &&
filterYear !== null
) {
DataMainUpdateOrder.value = DataMainOrigOrder.value.filter(
(item) =>
2023-09-26 09:25:43 +07:00
item.orderTypeValue === filter_1 &&
item.OrderStatus === filter_2 &&
item.fiscalYear === filterYear
);
} else if (filter_1 == "" && filter_2 == "ทั้งหมด" && filterYear !== null) {
DataMainUpdateOrder.value = DataMainOrigOrder.value;
}
};
2023-09-22 10:47:31 +07:00
const nameOrderFilter = (selectOrder: any) => {
switch (selectOrder) {
case "C-PM-01":
return "บรรจุและแต่งตั้งผู้สอบแข่งขันได้";
case "C-PM-02":
return "บรรจุและแต่งตั้งผู้ได้รับคัดเลือก";
case "C-PM-03":
return "แต่งตั้งข้าราชการ";
case "C-PM-04":
return "ย้ายข้าราชการ";
case "C-PM-05":
return "แต่งตั้งข้าราชการ";
case "C-PM-06":
return "แต่งตั้งข้าราชการ";
case "C-PM-07":
return "ย้ายข้าราชการ";
case "C-PM-08":
return "บรรจุและแต่งตั้งข้าราชการกรุงเทพมหานครสามัญกลับเข้ารับราชการ";
case "C-PM-09":
return "บรรจุและแต่งตั้งผู้ออกไปรับราชการทหารกลับเข้ารับราชการ";
case "C-PM-10":
return "แต่งตั้งคณะกรรมการประเมินผลการทดลองปฏิบัติหน้าที่ราชการ";
case "C-PM-11":
return "ให้ข้าราชการกรุงเทพมหานครสามัญซึ่งมีผลการทดลองปฏิบัติหน้าที่ราชการไม่ต่ำกว่ามาตรฐานที่กำหนดรับราชการต่อไป";
case "C-PM-12":
return "ให้ข้าราชการกรุงเทพมหานครสามัญออกจากราชการเพราะผลการทดลองปฏิบัติหน้าที่ราชการต่ำกว่ามาตรฐานที่กำหนด";
case "C-PM-13":
return "ให้โอนข้าราชการกรุงเทพมหานครสามัญ";
case "C-PM-14":
return "รับโอนข้าราชการกรุงเทพมหานครสามัญ";
case "C-PM-15":
return "ให้ข้าราชการช่วยราชการ";
case "C-PM-16":
return "ให้ข้าราชการกลับไปปฎิบัติงานทางต้นสังกัดเดิม";
case "C-PM-17":
return "อนุญาตให้ข้าราชการลาออกจากราชการ";
case "C-PM-18":
return "ลงโทษให้ออกจากราชการ";
case "C-PM-19":
return "ลงโทษปลดออกจากราชการ";
case "C-PM-20":
return "ลงโทษไล่ออกจากราชการ";
case "C-PM-21":
return "จ้างและแต่งตั้งลูกจ้างประจำ";
default:
return "error";
}
};
return {
placementOrderData,
changePlacementColumns,
DataMainYearOrder,
DataMainOrigOrder,
DataMainUpdateOrder,
DataUpdateOrder,
DataMainYearSetOrder,
DataMainOrder,
nameOrderFilter,
};
});