hrms-mgt/src/modules/03_recruiting/store.ts

43 lines
1.1 KiB
TypeScript
Raw Normal View History

2024-09-03 11:28:01 +07:00
import { ref, computed } from "vue";
import { defineStore } from "pinia";
2023-06-01 12:54:58 +07:00
2024-09-03 11:28:01 +07:00
export const useExamDataStore = defineStore("exam", () => {
2023-06-01 12:54:58 +07:00
interface exam {
2024-09-03 11:28:01 +07:00
main: { columns: String[] };
education: { columns: String[] };
career: { columns: String[] };
2023-06-01 12:54:58 +07:00
}
const examData = ref<exam>({
main: { columns: [] },
education: { columns: [] },
2024-09-03 11:28:01 +07:00
career: { columns: [] },
});
2023-06-01 12:54:58 +07:00
2024-09-03 11:28:01 +07:00
const consend = ref<boolean>(false);
const status = ref<string>("");
2023-06-01 12:54:58 +07:00
const changeExamColumns = (system: String, val: String[]) => {
2024-09-03 11:28:01 +07:00
if (system == "main") examData.value.main.columns = val;
if (system == "education") examData.value.education.columns = val;
if (system == "career") examData.value.career.columns = val;
localStorage.setItem("exam", JSON.stringify(examData.value));
};
2023-06-01 12:54:58 +07:00
2024-09-03 11:28:01 +07:00
if (localStorage.getItem("exam") !== null) {
examData.value = JSON.parse(localStorage.getItem("exam") || "{}");
2023-06-01 12:54:58 +07:00
}
const changeStatus = (val: string) => {
2024-09-03 11:28:01 +07:00
status.value = val;
};
2023-06-01 12:54:58 +07:00
return {
examData,
changeExamColumns,
consend,
status,
2024-09-03 11:28:01 +07:00
changeStatus,
};
});