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

211 lines
10 KiB
TypeScript

import { defineStore } from "pinia";
import { ref } from "vue";
import type { FormOrderPlacementMainData } from "@/modules/10_order/interface/request/Main";
import type { complaintLists } from "@/modules/10_order/interface/response/Order";
import type { DataOption1 } from "@/modules/10_order/interface/index/Main";
export const useOrderPlacementDataStore = defineStore("placementOrder", () => {
const typeOrder = ref<string>("");
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 | null,
filter_2: string,
filterYear: number | null
) => {
DataMainUpdateOrder.value = [];
if (filter_1 === "" && filter_2 === "ทั้งหมด" && filterYear === 0) {
DataMainUpdateOrder.value = DataMainOrigOrder.value;
} else if (filter_1 !== "" && filter_2 === "ทั้งหมด" && filterYear === 0) {
DataMainUpdateOrder.value = DataMainOrigOrder.value.filter(
(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
);
} else if (filter_1 !== "" && filter_2 === "ทั้งหมด" && filterYear !== 0) {
DataMainUpdateOrder.value = DataMainOrigOrder.value.filter(
(item) =>
item.orderTypeValue === filter_1 && item.fiscalYear === filterYear
);
} else if (filter_1 === "" && filter_2 !== "ทั้งหมด" && filterYear === 0) {
DataMainUpdateOrder.value = DataMainOrigOrder.value.filter(
(item) => item.OrderStatus === filter_2
);
} 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
);
} 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) =>
item.orderTypeValue === filter_1 &&
item.OrderStatus === filter_2 &&
item.fiscalYear === filterYear
);
} else if (filter_1 == "" && filter_2 == "ทั้งหมด" && filterYear !== null) {
DataMainUpdateOrder.value = DataMainOrigOrder.value;
}
};
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 "คำสั่งแต่งตั้งลูกจ้างชั่วคราวเป็นลูกจ้างประจำ";
case "C-PM-22":
return "คำสั่งปรับระดับชั้นงาน";
case "C-PM-23":
return "คำสั่งให้ลูกจ้างออกจากราชการ";
case "C-PM-24":
return "คำสั่งย้ายลูกจ้างประจำ";
case "C-PM-25":
return "คำสั่งพักจากราชการ";
case "C-PM-26":
return "คำสั่งให้ออกจากราชการไว้ก่อน";
case "C-PM-27":
return "คำสั่งลงโทษ ภาคทัณฑ์";
case "C-PM-28":
return "คำสั่งลงโทษ ตัดเงินเดือน";
case "C-PM-29":
return "คำสั่งลงโทษ ลดขั้นเงินเดือน";
case "C-PM-30":
return "คำสั่งเพิ่มโทษ";
case "C-PM-31":
return "คำสั่งงดโทษ";
case "C-PM-32":
return "คำสั่งยุติเรื่อง";
case "C-PM-33":
return "คำสั่งเลื่อนเงินเดือน";
case "C-PM-34":
return "คำสั่งค่าตอบแทนพิเศษ และผู้ไม่ได้เลื่อน";
case "C-PM-35":
return "คำสั่งเลื่อนเงินเดือนข้าราชการเกษียณ";
case "C-PM-36":
return "คำสั่งเลื่อนขั้นค่าจ้าง";
case "C-PM-37":
return "คำสั่งให้ลูกจ้างประจำได้รับค่าตอบแทนพิเศษ";
case "C-PM-38":
return "แต่งตั้งข้าราชการให้ดำรงตำแหน่ง"; // คำสั่งปรับโครงสร้าง
case "C-PM-39":
return "คำสั่งเลื่อน : สำหรับข้าราชการ กทม. เดิม";
case "C-PM-40":
return "ให้ข้าราชการรักษาการในตำแหน่ง";
case "C-PM-41":
return "คำสั่งยกเลิกการลาออก";
default:
return "";
}
};
const complaintLists = ref<complaintLists[]>([]);
const complaintOption = ref<DataOption1[]>([]);
return {
placementOrderData,
changePlacementColumns,
DataMainYearOrder,
DataMainOrigOrder,
DataMainUpdateOrder,
DataUpdateOrder,
DataMainYearSetOrder,
DataMainOrder,
nameOrderFilter,
complaintLists,
complaintOption,
typeOrder,
};
});