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({ 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([]); // ข้อมูลจำนวนปี const DataMainOrigOrder = ref([]); // ข้อมูลหลักดั้งเดิม const DataMainUpdateOrder = ref([]); // ข้อมูลเปลี่ยนแปลง 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 = []; 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.OrderType === filter_1 ); } else if (filter_1 !== "" && filter_2 !== "" && filterYear === null) { DataMainUpdateOrder.value = DataMainOrigOrder.value.filter( (item) => item.OrderType === filter_1 && item.OrderStatus === filter_2 ); } else if (filter_1 !== "" && filter_2 === "" && filterYear !== 0) { DataMainUpdateOrder.value = DataMainOrigOrder.value.filter( (item) => item.OrderType === 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.OrderType === filter_1 ); } else if (filter_1 !== "" && filter_2 !== "" && filterYear !== null) { DataMainUpdateOrder.value = DataMainOrigOrder.value.filter( (item) => item.OrderType === 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 "จ้างและแต่งตั้งลูกจ้างประจำ"; default: return "error"; } }; return { placementOrderData, changePlacementColumns, DataMainYearOrder, DataMainOrigOrder, DataMainUpdateOrder, DataUpdateOrder, DataMainYearSetOrder, DataMainOrder, nameOrderFilter }; });