diff --git a/src/components/information/Address.vue b/src/components/information/Address.vue new file mode 100644 index 000000000..8881a3505 --- /dev/null +++ b/src/components/information/Address.vue @@ -0,0 +1,875 @@ + + diff --git a/src/components/information/Certicate.vue b/src/components/information/Certicate.vue new file mode 100644 index 000000000..d08e8c3b2 --- /dev/null +++ b/src/components/information/Certicate.vue @@ -0,0 +1,830 @@ + + + + diff --git a/src/components/information/Family.vue b/src/components/information/Family.vue new file mode 100644 index 000000000..8b9eaf90c --- /dev/null +++ b/src/components/information/Family.vue @@ -0,0 +1,1514 @@ + + diff --git a/src/components/information/Government.vue b/src/components/information/Government.vue new file mode 100644 index 000000000..35d6fca2a --- /dev/null +++ b/src/components/information/Government.vue @@ -0,0 +1,763 @@ + + diff --git a/src/components/information/Image.vue b/src/components/information/Image.vue new file mode 100644 index 000000000..30efcc2a7 --- /dev/null +++ b/src/components/information/Image.vue @@ -0,0 +1,365 @@ + + + diff --git a/src/components/information/Information.vue b/src/components/information/Information.vue new file mode 100644 index 000000000..1acf5f85d --- /dev/null +++ b/src/components/information/Information.vue @@ -0,0 +1,1129 @@ + + diff --git a/src/components/information/interface/store/main.ts b/src/components/information/interface/store/main.ts new file mode 100644 index 000000000..7c31dd81c --- /dev/null +++ b/src/components/information/interface/store/main.ts @@ -0,0 +1,20 @@ +interface Profile { + main: { columns: String[] }; + education: { columns: String[] }; + oldName: { columns: String[] }; + certicate: { columns: String[] }; + train: { columns: String[] }; + insignia: { columns: String[] }; + coined: { columns: String[] }; + assessment: { columns: String[] }; + salary: { columns: String[] }; + discipline: { columns: String[] }; + leave: { columns: String[] }; + talent: { columns: String[] }; + work: { columns: String[] }; + record: { columns: String[] }; + other: { columns: String[] }; + document: { columns: String[] }; +} + +export type { Profile }; diff --git a/src/components/information/store/store.ts b/src/components/information/store/store.ts new file mode 100644 index 000000000..7c30f2495 --- /dev/null +++ b/src/components/information/store/store.ts @@ -0,0 +1,70 @@ +import { ref } from "vue"; +import { defineStore } from "pinia"; +import type { Profile } from "@/components/information/interface/store/main"; + +export const useComponentProfileDataStore = defineStore( + "componentProfile", + () => { + const profile = "profile"; + const birthDate = ref(new Date()); + const retireText = ref(null); + const profileData = ref({ + main: { columns: [] }, + education: { columns: [] }, + oldName: { columns: [] }, + certicate: { columns: [] }, + train: { columns: [] }, + insignia: { columns: [] }, + coined: { columns: [] }, + assessment: { columns: [] }, + salary: { columns: [] }, + discipline: { columns: [] }, + leave: { columns: [] }, + talent: { columns: [] }, + work: { columns: [] }, + record: { columns: [] }, + other: { columns: [] }, + document: { columns: [] }, + }); + + const changeRetireText = (val: string | null) => { + retireText.value = val; + }; + const changeBirth = (val: Date) => { + birthDate.value = val; + }; + + const changeProfileColumns = (system: String, val: String[]) => { + if (system == "main") profileData.value.main.columns = val; + if (system == "education") profileData.value.education.columns = val; + if (system == "oldName") profileData.value.oldName.columns = val; + if (system == "certicate") profileData.value.certicate.columns = val; + if (system == "train") profileData.value.train.columns = val; + if (system == "insignia") profileData.value.insignia.columns = val; + if (system == "coined") profileData.value.coined.columns = val; + if (system == "assessment") profileData.value.assessment.columns = val; + if (system == "salary") profileData.value.salary.columns = val; + if (system == "discipline") profileData.value.discipline.columns = val; + if (system == "leave") profileData.value.leave.columns = val; + if (system == "talent") profileData.value.talent.columns = val; + if (system == "work") profileData.value.work.columns = val; + if (system == "record") profileData.value.record.columns = val; + if (system == "other") profileData.value.other.columns = val; + if (system == "document") profileData.value.document.columns = val; + localStorage.setItem(profile, JSON.stringify(profileData.value)); + }; + + if (localStorage.getItem(profile) !== null) { + profileData.value = JSON.parse(localStorage.getItem(profile) || "{}"); + } + + return { + profileData, + changeProfileColumns, + birthDate, + changeBirth, + retireText, + changeRetireText, + }; + } +); diff --git a/src/components/information/top.vue b/src/components/information/top.vue new file mode 100644 index 000000000..416a8f049 --- /dev/null +++ b/src/components/information/top.vue @@ -0,0 +1,199 @@ + + + diff --git a/src/modules/03_recruiting/views/03_editor/index.vue b/src/modules/03_recruiting/views/03_editor/index.vue index 8f372fe5e..2e52b3840 100644 --- a/src/modules/03_recruiting/views/03_editor/index.vue +++ b/src/modules/03_recruiting/views/03_editor/index.vue @@ -1062,7 +1062,7 @@ const fetchProvince = async () => { }; const fetchDistrict = async (id: string | null) => { - if (id !== null) { + if (id !== null && id != "") { loaderPage(true); await http .get(config.API.listDistrict(id)) @@ -1084,7 +1084,7 @@ const fetchDistrict = async (id: string | null) => { }; const fetchSubDistrict = async (id: string | null) => { - if (id !== null) { + if (id !== null && id != "") { loaderPage(true); await http .get(config.API.listSubDistrict(id)) diff --git a/src/modules/04_registry/components/Information/Address.vue b/src/modules/04_registry/components/Information/Address.vue index 8b8ffbf67..8881a3505 100644 --- a/src/modules/04_registry/components/Information/Address.vue +++ b/src/modules/04_registry/components/Information/Address.vue @@ -626,8 +626,6 @@ const getNewData = async () => { await fetchDistrict(addressData.value.provinceIdC, "2"); await fetchSubDistrict(addressData.value.districtId, "1"); await fetchSubDistrict(addressData.value.districtIdC, "2"); - await selectSubDistrict(addressData.value.subdistrictId, "1"); - await selectSubDistrict(addressData.value.subdistrictIdC, "2"); }; const fetchData = async () => { @@ -797,7 +795,7 @@ const fetchProvince = async () => { }; const fetchDistrict = async (id: string | null, position: string) => { - if (id != null) { + if (id != null && id != "") { loaderPage(true); await http .get(config.API.listDistrict(id)) @@ -825,7 +823,7 @@ const fetchDistrict = async (id: string | null, position: string) => { }; const fetchSubDistrict = async (id: string | null, position: string) => { - if (id != null) { + if (id != null && id != "") { loaderPage(true); await http .get(config.API.listSubDistrict(id)) diff --git a/src/modules/04_registry/components/Profile.vue b/src/modules/04_registry/components/Profile.vue index c56a812f0..c9db6d816 100644 --- a/src/modules/04_registry/components/Profile.vue +++ b/src/modules/04_registry/components/Profile.vue @@ -155,10 +155,6 @@ - - diff --git a/src/modules/05_placement/components/PersonalDetail/Information/Address.vue b/src/modules/05_placement/components/PersonalDetail/Information/Address.vue index 00c482ab1..ce83dfee2 100644 --- a/src/modules/05_placement/components/PersonalDetail/Information/Address.vue +++ b/src/modules/05_placement/components/PersonalDetail/Information/Address.vue @@ -123,8 +123,6 @@ const getNewData = async () => { await fetchDistrict(addressData.value.currentProvinceId, "2"); await fetchSubDistrict(addressData.value.registDistrictId, "1"); await fetchSubDistrict(addressData.value.currentDistrictId, "2"); - await selectSubDistrict(addressData.value.registSubDistrictId, "1"); - await selectSubDistrict(addressData.value.currentSubDistrictId, "2"); }; const editData = async () => { @@ -247,7 +245,7 @@ const fetchProvince = async () => { }; const fetchDistrict = async (id: string | null, position: string) => { - if (id != null) { + if (id != null && id != "") { showLoader(); await http .get(config.API.listDistrict(id)) @@ -275,7 +273,7 @@ const fetchDistrict = async (id: string | null, position: string) => { }; const fetchSubDistrict = async (id: string | null, position: string) => { - if (id != null) { + if (id != null && id != "") { showLoader(); await http .get(config.API.listSubDistrict(id)) diff --git a/src/modules/05_placement/components/Receive/receiveDetail.vue b/src/modules/05_placement/components/Receive/receiveDetail.vue new file mode 100644 index 000000000..534e2c65b --- /dev/null +++ b/src/modules/05_placement/components/Receive/receiveDetail.vue @@ -0,0 +1,39 @@ + + + +> diff --git a/src/modules/05_placement/components/Receive/receiveMain.vue b/src/modules/05_placement/components/Receive/receiveMain.vue index 9dd3924d4..007a3b7e8 100644 --- a/src/modules/05_placement/components/Receive/receiveMain.vue +++ b/src/modules/05_placement/components/Receive/receiveMain.vue @@ -292,6 +292,10 @@ const closeModalTree = async () => { // await getTable(); modalTree.value = false; }; + +const nextPage = (id: string) => { + router.push(`/receive/${id}`); +};