From 74b8362523128e1e114f09bbea8a16a3b96500d1 Mon Sep 17 00:00:00 2001 From: setthawutttty Date: Tue, 15 Aug 2023 13:58:07 +0700 Subject: [PATCH 01/10] no message --- src/api/05_placement/api.placement.ts | 5 ++++- src/api/index.ts | 4 ++-- .../interface/response/officer.ts | 4 ++-- src/modules/05_placement/router.ts | 22 +++++++++++++++++++ 4 files changed, 30 insertions(+), 5 deletions(-) diff --git a/src/api/05_placement/api.placement.ts b/src/api/05_placement/api.placement.ts index f86b18453..58ced9b93 100644 --- a/src/api/05_placement/api.placement.ts +++ b/src/api/05_placement/api.placement.ts @@ -123,7 +123,10 @@ export default { repatriationMainReport: () => `${placement}/repatriation/report`, // ขอย้าย placemenRelocation, - + relocationMain: () => `${placement}/relocation`, + relocationDetail: (id:string) => `${placement}/relocation/${id}`, + relocationMainDelete: (id:string) => `${placement}/relocation/${id}`, + relocationMainReport: () => `${placement}/relocation/report`, // อื่นๆ placemenOther, }; diff --git a/src/api/index.ts b/src/api/index.ts index 244b63653..64e6c3ecc 100644 --- a/src/api/index.ts +++ b/src/api/index.ts @@ -26,8 +26,8 @@ const config = ref({ "https://s3cluster.frappet.com/bma-ehr-fpt/organization/strueture/tree_20230712_172702.json", MEET_URI: "meet.frappet.com", API_RETIREMENT_URI: "https://bma-ehr.frappet.synology.me/api/v1", - // API_PROBATION_URI: "https://ehr.joolsoft.com/v1", - API_PROBATION_URI: "http://192.168.1.151:7776/v1", + API_PROBATION_URI: "https://ehr.joolsoft.com/v1", + // API_PROBATION_URI: "http://192.168.1.151:7776/v1", }, test: { API_URI: "http://localhost:5010/api/v1", diff --git a/src/modules/05_placement/interface/response/officer.ts b/src/modules/05_placement/interface/response/officer.ts index 64d298641..4cf58b1bb 100644 --- a/src/modules/05_placement/interface/response/officer.ts +++ b/src/modules/05_placement/interface/response/officer.ts @@ -2,8 +2,8 @@ interface officerType { no:number, id: string, prefix: string, - firstName: string, - lastName: string, + firstname: string, + lastname: string, position: string, posNo: string, positionLevel: string, diff --git a/src/modules/05_placement/router.ts b/src/modules/05_placement/router.ts index 373a42352..72f561168 100644 --- a/src/modules/05_placement/router.ts +++ b/src/modules/05_placement/router.ts @@ -37,6 +37,8 @@ const RepatriationOrderAdd = () => const helpgovernmentbyId = () => import("@/modules/05_placement/components/helpgovernment/governmentDetail.vue") const repatriate = () => import("@/modules/05_placement/components/Repatriate/RepatriateMain.vue") const repatriatebyId = () => import("@/modules/05_placement/components/Repatriate/RepatriatebyId.vue") + const relocation = () => import("@/modules/05_placement/components/Relocation/RelocationMain.vue") + const relocationbyId = () => import("@/modules/05_placement/components/Relocation/RelocationbyId.vue") //รับโอน const receiveMain = () => import("@/modules/05_placement/components/Receive/receiveMain.vue"); @@ -258,4 +260,24 @@ export default [ Role: "placement", }, }, + { + path: "/relocation", + name: "relocation", + component: relocation, + meta: { + Auth: true, + Key: [6.9], + Role: "placement", + }, + }, + { + path: "/relocation/detail/:id", + name: "relocationId", + component: relocationbyId, + meta: { + Auth: true, + Key: [6.9], + Role: "placement", + }, + }, ]; From 62a8fa99139eff00b6c0d41d3921b348a2ea948d Mon Sep 17 00:00:00 2001 From: setthawutttty Date: Tue, 15 Aug 2023 13:59:38 +0700 Subject: [PATCH 02/10] no message --- .../components/Relocation/RelocationMain.vue | 723 ++++++++++++++++ .../components/Relocation/RelocationModal.vue | 799 ++++++++++++++++++ .../components/Relocation/RelocationbyId.vue | 508 +++++++++++ .../interface/response/Relocation.ts | 38 + 4 files changed, 2068 insertions(+) create mode 100644 src/modules/05_placement/components/Relocation/RelocationMain.vue create mode 100644 src/modules/05_placement/components/Relocation/RelocationModal.vue create mode 100644 src/modules/05_placement/components/Relocation/RelocationbyId.vue create mode 100644 src/modules/05_placement/interface/response/Relocation.ts diff --git a/src/modules/05_placement/components/Relocation/RelocationMain.vue b/src/modules/05_placement/components/Relocation/RelocationMain.vue new file mode 100644 index 000000000..1f84c5212 --- /dev/null +++ b/src/modules/05_placement/components/Relocation/RelocationMain.vue @@ -0,0 +1,723 @@ + + + diff --git a/src/modules/05_placement/components/Relocation/RelocationModal.vue b/src/modules/05_placement/components/Relocation/RelocationModal.vue new file mode 100644 index 000000000..89208163a --- /dev/null +++ b/src/modules/05_placement/components/Relocation/RelocationModal.vue @@ -0,0 +1,799 @@ + + + + + diff --git a/src/modules/05_placement/components/Relocation/RelocationbyId.vue b/src/modules/05_placement/components/Relocation/RelocationbyId.vue new file mode 100644 index 000000000..7cf80c7e8 --- /dev/null +++ b/src/modules/05_placement/components/Relocation/RelocationbyId.vue @@ -0,0 +1,508 @@ + + + + + \ No newline at end of file diff --git a/src/modules/05_placement/interface/response/Relocation.ts b/src/modules/05_placement/interface/response/Relocation.ts new file mode 100644 index 000000000..4972a366f --- /dev/null +++ b/src/modules/05_placement/interface/response/Relocation.ts @@ -0,0 +1,38 @@ +interface relocationType { + no:number, + id: string, + citizenId: "0000000000005", + prefix: string, + firstname: string, + lastname: string, + dateOfBirth: Date, + gender: string, + status: string, + recruitDate: Date, + positionNumber: number, + positionPath: string, + positionPathSide: string, + positionType: string, + positionLine: string, + positionLevel: string, + posNoId: string, + positionId: string, + positionPathSideId: string, + positionTypeId: string, + positionLineId: string, + positionLevelId: string, + organizationPositionId: string, + organizationName: string, + organizationShortName: string, + isActive: boolean, + reason: string, + educationOld: string, + salary: number, + positionTypeOld: string, + positionLevelOld: string, + positionNumberOld: string, + organizationPositionOld: string, + createdAt: Date +} + +export type { relocationType}; \ No newline at end of file From 077f12a34df0196803ae0c3aeb6841d8e7b4b893 Mon Sep 17 00:00:00 2001 From: setthawutttty Date: Tue, 15 Aug 2023 17:21:26 +0700 Subject: [PATCH 03/10] =?UTF-8?q?=E0=B8=A3=E0=B8=B2=E0=B8=A2=E0=B8=81?= =?UTF-8?q?=E0=B8=B2=E0=B8=A3=E0=B8=8A=E0=B9=88=E0=B8=A7=E0=B8=A2=E0=B8=A3?= =?UTF-8?q?=E0=B8=B2=E0=B8=8A=E0=B8=81=E0=B8=B2=E0=B8=A3=20=20=E0=B8=AA?= =?UTF-8?q?=E0=B9=88=E0=B8=87=E0=B8=95=E0=B8=B1=E0=B8=A7=E0=B8=81=E0=B8=A5?= =?UTF-8?q?=E0=B8=B1=E0=B8=9A=20=E0=B8=A2=E0=B9=89=E0=B8=B2=E0=B8=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/05_placement/api.placement.ts | 4 + .../components/Relocation/RelocationMain.vue | 16 +- .../components/Relocation/RelocationModal.vue | 2 +- .../components/Relocation/RelocationbyId.vue | 523 +++++++++--------- .../components/Repatriate/RepatriateMain.vue | 2 +- .../components/Repatriate/RepatriatebyId.vue | 3 +- .../helpgovernment/governmentDetail.vue | 2 +- .../components/helpgovernment/mainHelp.vue | 2 +- 8 files changed, 290 insertions(+), 264 deletions(-) diff --git a/src/api/05_placement/api.placement.ts b/src/api/05_placement/api.placement.ts index 5e3012bdd..b655b8a73 100644 --- a/src/api/05_placement/api.placement.ts +++ b/src/api/05_placement/api.placement.ts @@ -115,6 +115,7 @@ export default { officerDetail: (id:string) => `${placement}/officer/${id}`, officerMainDelete: (id:string) => `${placement}/officer/${id}`, officerMainReport: () => `${placement}/officer/report`, + officerMainEdit: (id:string) => `${placemenHelpGov}/${id}`, // ส่งตัวกลับ placemenRepatriation, @@ -122,12 +123,15 @@ export default { repatriationDetail: (id:string) => `${placement}/repatriation/${id}`, repatriationMainDelete: (id:string) => `${placement}/repatriation/${id}`, repatriationMainReport: () => `${placement}/repatriation/report`, + repatriationMainEdit: (id:string) => `${placemenRepatriation}/${id}`, // ขอย้าย placemenRelocation, relocationMain: () => `${placement}/relocation`, relocationDetail: (id:string) => `${placement}/relocation/${id}`, relocationMainDelete: (id:string) => `${placement}/relocation/${id}`, relocationMainReport: () => `${placement}/relocation/report`, + relocationMainPut: (id:string) => `${placement}/relocation/position/${id}`, + relocationMainEdit: (id:string) => `${placemenRelocation}/${id}`, // อื่นๆ placemenOther, }; diff --git a/src/modules/05_placement/components/Relocation/RelocationMain.vue b/src/modules/05_placement/components/Relocation/RelocationMain.vue index 1f84c5212..86e3bf520 100644 --- a/src/modules/05_placement/components/Relocation/RelocationMain.vue +++ b/src/modules/05_placement/components/Relocation/RelocationMain.vue @@ -23,13 +23,7 @@ const checkSelected = computed(() => { return true; } }); -const getSelectedString = computed(() => { - return selected.value.length === 0 - ? '' - : `${selected.value.length} record${ - selected.value.length > 1 ? 's' : '' - } selected of ${rows.value.length}`; -}); + const $q = useQuasar(); const router = useRouter(); const mixin = useCounterMixin(); @@ -283,7 +277,6 @@ const openModalOrder = () => { const openModalTree = (id: string) => { personalId.value = id; console.log(personalId.value); - personal.value = rows.value.filter((e: any) => e.id === id); modalTree.value = true; }; @@ -645,7 +638,7 @@ onMounted(async () => { :columns="columns2" :rows="rows2" :filter="filterKeyword2" - row-key="personalId" + row-key="id" flat :visible-columns="visibleColumns2" selection="multiple" @@ -664,7 +657,6 @@ onMounted(async () => { { - + /> diff --git a/src/modules/05_placement/components/Relocation/RelocationModal.vue b/src/modules/05_placement/components/Relocation/RelocationModal.vue index 89208163a..2318223cf 100644 --- a/src/modules/05_placement/components/Relocation/RelocationModal.vue +++ b/src/modules/05_placement/components/Relocation/RelocationModal.vue @@ -178,7 +178,7 @@ const saveAppoint = async () => { console.log("save appoint===>", dataAppoint); showLoader(); await http - .put(config.API.receivePosition(id.value), dataAppoint) + .put(config.API.relocationMainPut(id.value), dataAppoint) .then((res) => { console.log("respone=>", res); success($q, "บันทึกสำเร็จ"); diff --git a/src/modules/05_placement/components/Relocation/RelocationbyId.vue b/src/modules/05_placement/components/Relocation/RelocationbyId.vue index 7cf80c7e8..4e1825af8 100644 --- a/src/modules/05_placement/components/Relocation/RelocationbyId.vue +++ b/src/modules/05_placement/components/Relocation/RelocationbyId.vue @@ -37,19 +37,31 @@ const institution = ref("ฝ่ายบริหารงานทั const fullname = ref(""); const id = ref(""); const prefix = ref(""); -const firstName = ref(""); -const lastName = ref(""); +const prefixId = ref(""); +const firstname = ref(""); +const citizenId = ref("") +const lastname = ref(""); const position = ref(""); const posNo = ref(""); const positionLevel = ref(""); +const educationOld = ref(""); const createdAt = ref(""); const organization = ref(""); const reason = ref(""); const status = ref(""); const date = ref(null); const salary = ref(""); +const salaryNew = ref(""); const positionTypeOld = ref(""); const positionLevelOld = ref(""); +const dateOfBirth = ref() +const genderId = ref("") +const nationality = ref("") +const race = ref("") +const religionId = ref("") +const bloodGroupId = ref("") +const relationshipId = ref("") +const telephoneNumber = ref("") const positionNumberOld = ref(""); const organizationPositionOld = ref(""); const isActive = ref(""); @@ -104,10 +116,13 @@ const getData = async () => { .get(config.API.relocationDetail(personId)) .then((res: any) => { const data = res.data.result; - fullname.value = `${data.firstname} ${data.lastname}` + citizenId.value = data.citizenId + fullname.value = `${data.prefix}${data.firstname} ${data.lastname}`; + prefixId.value = data.prefixId; prefix.value = data.prefix; - firstName.value = data.firstname; - lastName.value = data.lastname; + firstname.value = data.firstname; + lastname.value = data.lastname; + educationOld.value = data.educationOld; position.value = data.position; posNo.value = data.posNo; positionLevel.value = data.positionLevel; @@ -121,6 +136,14 @@ const getData = async () => { positionLevelOld.value = data.positionLevelOld; positionNumberOld.value = data.positionNumberOld; organizationPositionOld.value = data.organizationPositionOld; + dateOfBirth.value = data.dateOfBirth; + genderId.value = data.genderId; + nationality.value = data.nationality; + race.value = data.race; + religionId.value = data.religionId; + bloodGroupId.value = data.bloodGroupId; + relationshipId.value = data.relationshipId; + telephoneNumber.value = data.telephoneNumber; isActive.value = data.isActive; }) .catch((e) => { @@ -157,18 +180,29 @@ const conditionSave = async () => { }; const saveData = async () => { const body = { - organization: organization.value, + educationOld: educationOld.value, + prefixId:prefixId.value, + citizenId:citizenId.value, + firstname:firstname.value, + lastname:lastname.value, reason: reason.value, organizationPositionOld: organizationPositionOld.value, - date: date.value, positionTypeOld: positionTypeOld.value, positionLevelOld: positionLevelOld.value, - positionNumberOld: posNo.value, + positionNumberOld: positionNumberOld.value, amountOld: salary.value, + dateOfBirth:dateOfBirth.value , + genderId:genderId.value , + nationality:nationality.value , + race:race.value , + religionId:religionId.value , + bloodGroupId:bloodGroupId.value , + relationshipId:relationshipId.value , + telephoneNumber:telephoneNumber.value , }; showLoader(); await http - .put(config.API.transferId(personId.toString()), body) + .put(config.API.relocationMainEdit(personId.toString()), body) .then((res: any) => { // const data = res.data.result; // console.log(data); @@ -218,199 +252,219 @@ onMounted(async () => { }); + + + + - - \ No newline at end of file + diff --git a/src/modules/05_placement/components/Repatriate/RepatriateMain.vue b/src/modules/05_placement/components/Repatriate/RepatriateMain.vue index 2deb571b2..c678620e9 100644 --- a/src/modules/05_placement/components/Repatriate/RepatriateMain.vue +++ b/src/modules/05_placement/components/Repatriate/RepatriateMain.vue @@ -534,7 +534,7 @@ onMounted(async () => { :columns="columns2" :rows="rows2" :filter="filterKeyword2" - row-key="personalId" + row-key="id" class="custom-header-table" :visible-columns="visibleColumns2" selection="multiple" diff --git a/src/modules/05_placement/components/Repatriate/RepatriatebyId.vue b/src/modules/05_placement/components/Repatriate/RepatriatebyId.vue index 2f214ec16..0d7bf023a 100644 --- a/src/modules/05_placement/components/Repatriate/RepatriatebyId.vue +++ b/src/modules/05_placement/components/Repatriate/RepatriatebyId.vue @@ -439,10 +439,11 @@ positionLevelOld: positionLevelOld.value, positionNumberOld: posNo.value, amountOld: salary.value, + }; showLoader(); await http - .put(config.API.transferId(personId.toString()), body) + .put(config.API.repatriationMainEdit(personId.toString()), body) .then((res: any) => { // const data = res.data.result; // console.log(data); diff --git a/src/modules/05_placement/components/helpgovernment/governmentDetail.vue b/src/modules/05_placement/components/helpgovernment/governmentDetail.vue index 716269933..944de9a45 100644 --- a/src/modules/05_placement/components/helpgovernment/governmentDetail.vue +++ b/src/modules/05_placement/components/helpgovernment/governmentDetail.vue @@ -442,7 +442,7 @@ const saveData = async () => { }; showLoader(); await http - .put(config.API.transferId(personId.toString()), body) + .put(config.API.officerMainEdit(personId.toString()), body) .then((res: any) => { // const data = res.data.result; // console.log(data); diff --git a/src/modules/05_placement/components/helpgovernment/mainHelp.vue b/src/modules/05_placement/components/helpgovernment/mainHelp.vue index 26c1e5a24..0b66418ce 100644 --- a/src/modules/05_placement/components/helpgovernment/mainHelp.vue +++ b/src/modules/05_placement/components/helpgovernment/mainHelp.vue @@ -534,7 +534,7 @@ onMounted(async () => { :columns="columns2" :rows="rows2" :filter="filterKeyword2" - row-key="personalId" + row-key="id" class="custom-header-table" :visible-columns="visibleColumns2" selection="multiple" From a8036f2353c842cd90bc83f5a3873804b6731cb6 Mon Sep 17 00:00:00 2001 From: setthawutttty Date: Tue, 15 Aug 2023 17:39:32 +0700 Subject: [PATCH 04/10] status text --- .../05_placement/components/Relocation/RelocationMain.vue | 1 + 1 file changed, 1 insertion(+) diff --git a/src/modules/05_placement/components/Relocation/RelocationMain.vue b/src/modules/05_placement/components/Relocation/RelocationMain.vue index 86e3bf520..03122f023 100644 --- a/src/modules/05_placement/components/Relocation/RelocationMain.vue +++ b/src/modules/05_placement/components/Relocation/RelocationMain.vue @@ -297,6 +297,7 @@ const getData = async () => { dateOfBirth: item.dateOfBirth, gender: item.gender, status: item.status, + statusText:statusText(item.status), recruitDate: item.recruitDate, positionNumber: item.positionNumber, positionPath: item.positionPath, From 4dfe222a85cff0f540af879e9e66485f7b09b95e Mon Sep 17 00:00:00 2001 From: AnandaTon <125332905+anandaAiemvong@users.noreply.github.com> Date: Tue, 15 Aug 2023 17:44:33 +0700 Subject: [PATCH 05/10] =?UTF-8?q?ui/api=20=E0=B9=84=E0=B8=A5=E0=B9=88?= =?UTF-8?q?=E0=B8=AD=E0=B8=AD=E0=B8=81=20=E0=B8=9B=E0=B8=A5=E0=B8=94?= =?UTF-8?q?=E0=B8=AD=E0=B8=AD=E0=B8=81=20=E0=B9=83=E0=B8=AB=E0=B9=89?= =?UTF-8?q?=E0=B8=AD=E0=B8=AD=E0=B8=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/06_retirement/api.retirement.ts | 64 +- src/interface/request/main/main.ts | 2 +- .../06_retirement/components/DialogFooter.vue | 69 + .../06_retirement/components/DialogHeader.vue | 29 + .../components/Discharged/dischargedMain.vue | 576 ++++++++ .../Discharged/dischargedRegistry.vue | 443 +++++++ .../components/DismissOrder/AddOrder.vue | 91 -- .../components/DismissOrder/DismissOrder.vue | 1168 +++++++---------- .../components/DismissOrder/outRegistry.vue | 443 +++++++ .../components/DismissOrder/step01.vue | 353 ----- .../components/DismissOrder/step02.vue | 684 ---------- .../components/DismissOrder/step03.vue | 580 -------- .../components/Expulsion/expulsionMain.vue | 576 ++++++++ .../Expulsion/expulsionRegistry.vue | 443 +++++++ .../interface/response/discharged.ts | 45 + .../interface/response/expulsion.ts | 45 + .../06_retirement/interface/response/out.ts | 45 + src/modules/06_retirement/router.ts | 83 +- .../components/1_Proposals/listProposals.vue | 2 +- 19 files changed, 3326 insertions(+), 2415 deletions(-) create mode 100644 src/modules/06_retirement/components/DialogFooter.vue create mode 100644 src/modules/06_retirement/components/DialogHeader.vue create mode 100644 src/modules/06_retirement/components/Discharged/dischargedMain.vue create mode 100644 src/modules/06_retirement/components/Discharged/dischargedRegistry.vue delete mode 100644 src/modules/06_retirement/components/DismissOrder/AddOrder.vue create mode 100644 src/modules/06_retirement/components/DismissOrder/outRegistry.vue delete mode 100644 src/modules/06_retirement/components/DismissOrder/step01.vue delete mode 100644 src/modules/06_retirement/components/DismissOrder/step02.vue delete mode 100644 src/modules/06_retirement/components/DismissOrder/step03.vue create mode 100644 src/modules/06_retirement/components/Expulsion/expulsionMain.vue create mode 100644 src/modules/06_retirement/components/Expulsion/expulsionRegistry.vue create mode 100644 src/modules/06_retirement/interface/response/discharged.ts create mode 100644 src/modules/06_retirement/interface/response/expulsion.ts create mode 100644 src/modules/06_retirement/interface/response/out.ts diff --git a/src/api/06_retirement/api.retirement.ts b/src/api/06_retirement/api.retirement.ts index 4ad20b606..cfa582ad8 100644 --- a/src/api/06_retirement/api.retirement.ts +++ b/src/api/06_retirement/api.retirement.ts @@ -1,36 +1,46 @@ import env from "../index"; -const retirement = `${env.API_URI}/retirement` -const retirementDischarge = `${retirement}/discharge` -const retirementExpulsion = `${retirement}/expulsion` -const retirementOut = `${retirement}/out` +const retirement = `${env.API_URI}/retirement`; +const retirementDischarge = `${retirement}/discharge`; +const retirementExpulsion = `${retirement}/expulsion`; +const retirementOut = `${retirement}/out`; export default { - profile: (type: string, year: string) => `${retirement}/profile/${type}/${year}`, - profileRetire: (retireProfileId: string) => `${retirement}/profile/${retireProfileId}`, - listRetire: (retireId: string) => `${retirement}/${retireId}`, - createnote: () => `${retirement}/edit`, - removeProfile: () => `${retirement}/remove`, - reasonId: (retireId: string) => `${retirement}/reason/${retireId}`, - retirement: (type: string, year: string) => `${retirement}/${type}/${year}`, - createProfile: () => `${retirement}/profile`, + profile: (type: string, year: string) => + `${retirement}/profile/${type}/${year}`, + profileRetire: (retireProfileId: string) => + `${retirement}/profile/${retireProfileId}`, + listRetire: (retireId: string) => `${retirement}/${retireId}`, + createnote: () => `${retirement}/edit`, + removeProfile: () => `${retirement}/remove`, + reasonId: (retireId: string) => `${retirement}/reason/${retireId}`, + retirement: (type: string, year: string) => `${retirement}/${type}/${year}`, + createProfile: () => `${retirement}/profile`, - //RetirementDeceased ถึงแก่กรรม - listDeceased: () => `${retirement}/deceased`, - detailDeceased: (id: string) => `${retirement}/deceased/${id}`, + //RetirementDeceased ถึงแก่กรรม + listDeceased: () => `${retirement}/deceased`, + detailDeceased: (id: string) => `${retirement}/deceased/${id}`, - // RetirementResign ระบบลาออก - listResign: () => `${retirement}/resign`, - resingByid: (id: string) => `${retirement}/resign/${id}`, - resignConfirm: (id: string) => `${retirement}/resign/confirm/${id}`, - resignReject: (id: string) => `${retirement}/resign/reject/${id}`, + // RetirementResign ระบบลาออก + listResign: () => `${retirement}/resign`, + resingByid: (id: string) => `${retirement}/resign/${id}`, + resignConfirm: (id: string) => `${retirement}/resign/confirm/${id}`, + resignReject: (id: string) => `${retirement}/resign/reject/${id}`, - // ปลดออก - retirementDischarge, + // ปลดออก + retirementDischarge, + listDischared: () => `${retirement}/dischared`, + discharedByid: (id: string) => `${retirement}/dischared/${id}`, + discharedReport: `${retirement}/dischared/report`, - // ไล่ออก - retirementExpulsion, - - // ให้ออก - retirementOut + // ไล่ออก + retirementExpulsion, + listExpulsion: () => `${retirement}/expulsion`, + expulsionByid: (id: string) => `${retirement}/expulsion/${id}`, + expulsionReport: `${retirement}/expulsion/report`, + // ให้ออก + retirementOut, + listOut: () => `${retirement}/out`, + outByid: (id: string) => `${retirement}/out/${id}`, + outReport: `${retirement}/out/report`, }; diff --git a/src/interface/request/main/main.ts b/src/interface/request/main/main.ts index ad8f16e68..fc1d1f2cf 100644 --- a/src/interface/request/main/main.ts +++ b/src/interface/request/main/main.ts @@ -257,7 +257,7 @@ const menuList = readonly([ role: "placement", }, { - key: 6.10, + key: 6.1, label: "รายการอื่นๆ" /* */, path: "other", role: "placement", diff --git a/src/modules/06_retirement/components/DialogFooter.vue b/src/modules/06_retirement/components/DialogFooter.vue new file mode 100644 index 000000000..d2358bb75 --- /dev/null +++ b/src/modules/06_retirement/components/DialogFooter.vue @@ -0,0 +1,69 @@ + + diff --git a/src/modules/06_retirement/components/DialogHeader.vue b/src/modules/06_retirement/components/DialogHeader.vue new file mode 100644 index 000000000..a20e917b0 --- /dev/null +++ b/src/modules/06_retirement/components/DialogHeader.vue @@ -0,0 +1,29 @@ + + + + diff --git a/src/modules/06_retirement/components/Discharged/dischargedMain.vue b/src/modules/06_retirement/components/Discharged/dischargedMain.vue new file mode 100644 index 000000000..38dee5be2 --- /dev/null +++ b/src/modules/06_retirement/components/Discharged/dischargedMain.vue @@ -0,0 +1,576 @@ + + + diff --git a/src/modules/06_retirement/components/Discharged/dischargedRegistry.vue b/src/modules/06_retirement/components/Discharged/dischargedRegistry.vue new file mode 100644 index 000000000..9d7047efc --- /dev/null +++ b/src/modules/06_retirement/components/Discharged/dischargedRegistry.vue @@ -0,0 +1,443 @@ + + + diff --git a/src/modules/06_retirement/components/DismissOrder/AddOrder.vue b/src/modules/06_retirement/components/DismissOrder/AddOrder.vue deleted file mode 100644 index 687cbd57a..000000000 --- a/src/modules/06_retirement/components/DismissOrder/AddOrder.vue +++ /dev/null @@ -1,91 +0,0 @@ - - - diff --git a/src/modules/06_retirement/components/DismissOrder/DismissOrder.vue b/src/modules/06_retirement/components/DismissOrder/DismissOrder.vue index a8024c37a..5a174a027 100644 --- a/src/modules/06_retirement/components/DismissOrder/DismissOrder.vue +++ b/src/modules/06_retirement/components/DismissOrder/DismissOrder.vue @@ -1,29 +1,330 @@ + + -
- -
- - -
-
-
-
- + - - +
+ + + + + + + + +
+
+ + + + + + +
+
+ + + + + + +
+ + + +
- +
- - - - + diff --git a/src/modules/06_retirement/components/DismissOrder/outRegistry.vue b/src/modules/06_retirement/components/DismissOrder/outRegistry.vue new file mode 100644 index 000000000..42287dfb1 --- /dev/null +++ b/src/modules/06_retirement/components/DismissOrder/outRegistry.vue @@ -0,0 +1,443 @@ + + + diff --git a/src/modules/06_retirement/components/DismissOrder/step01.vue b/src/modules/06_retirement/components/DismissOrder/step01.vue deleted file mode 100644 index 92ce9bc7d..000000000 --- a/src/modules/06_retirement/components/DismissOrder/step01.vue +++ /dev/null @@ -1,353 +0,0 @@ - - - diff --git a/src/modules/06_retirement/components/DismissOrder/step02.vue b/src/modules/06_retirement/components/DismissOrder/step02.vue deleted file mode 100644 index 8d58d929e..000000000 --- a/src/modules/06_retirement/components/DismissOrder/step02.vue +++ /dev/null @@ -1,684 +0,0 @@ - - - diff --git a/src/modules/06_retirement/components/DismissOrder/step03.vue b/src/modules/06_retirement/components/DismissOrder/step03.vue deleted file mode 100644 index d7521a80d..000000000 --- a/src/modules/06_retirement/components/DismissOrder/step03.vue +++ /dev/null @@ -1,580 +0,0 @@ - - - diff --git a/src/modules/06_retirement/components/Expulsion/expulsionMain.vue b/src/modules/06_retirement/components/Expulsion/expulsionMain.vue new file mode 100644 index 000000000..1e5895491 --- /dev/null +++ b/src/modules/06_retirement/components/Expulsion/expulsionMain.vue @@ -0,0 +1,576 @@ + + + diff --git a/src/modules/06_retirement/components/Expulsion/expulsionRegistry.vue b/src/modules/06_retirement/components/Expulsion/expulsionRegistry.vue new file mode 100644 index 000000000..11a0c84ce --- /dev/null +++ b/src/modules/06_retirement/components/Expulsion/expulsionRegistry.vue @@ -0,0 +1,443 @@ + + + diff --git a/src/modules/06_retirement/interface/response/discharged.ts b/src/modules/06_retirement/interface/response/discharged.ts new file mode 100644 index 000000000..8a575f438 --- /dev/null +++ b/src/modules/06_retirement/interface/response/discharged.ts @@ -0,0 +1,45 @@ +interface ResponseData { + createdAt: Date; + date: Date; + firstName: string; + id: string; + isActive: boolean; + lastName: string; + organization: string; + organizationPositionOld: string; + posNo: string; + position: string; + positionLevel: string; + positionLevelOld: string; + positionNumberOld: string; + positionTypeOld: string; + prefix: string; + reason: string; + salary: number; + status: string; + fullname: string; + statustext: string; +} + +interface TypeFile { + fileName: string; + pathName: string; +} + +interface ResponseDataDetail { + avataPath: string; + createdAt: Date; + date: Date; + id: string; + organization: string; + organizationPositionOld: string; + positionLevelOld: string; + positionNumberOld: string; + positionTypeOld: string; + reason: string; + salary: number; + status: string; + fullname: string; +} + +export type { ResponseData, ResponseDataDetail, TypeFile }; diff --git a/src/modules/06_retirement/interface/response/expulsion.ts b/src/modules/06_retirement/interface/response/expulsion.ts new file mode 100644 index 000000000..8a575f438 --- /dev/null +++ b/src/modules/06_retirement/interface/response/expulsion.ts @@ -0,0 +1,45 @@ +interface ResponseData { + createdAt: Date; + date: Date; + firstName: string; + id: string; + isActive: boolean; + lastName: string; + organization: string; + organizationPositionOld: string; + posNo: string; + position: string; + positionLevel: string; + positionLevelOld: string; + positionNumberOld: string; + positionTypeOld: string; + prefix: string; + reason: string; + salary: number; + status: string; + fullname: string; + statustext: string; +} + +interface TypeFile { + fileName: string; + pathName: string; +} + +interface ResponseDataDetail { + avataPath: string; + createdAt: Date; + date: Date; + id: string; + organization: string; + organizationPositionOld: string; + positionLevelOld: string; + positionNumberOld: string; + positionTypeOld: string; + reason: string; + salary: number; + status: string; + fullname: string; +} + +export type { ResponseData, ResponseDataDetail, TypeFile }; diff --git a/src/modules/06_retirement/interface/response/out.ts b/src/modules/06_retirement/interface/response/out.ts new file mode 100644 index 000000000..8a575f438 --- /dev/null +++ b/src/modules/06_retirement/interface/response/out.ts @@ -0,0 +1,45 @@ +interface ResponseData { + createdAt: Date; + date: Date; + firstName: string; + id: string; + isActive: boolean; + lastName: string; + organization: string; + organizationPositionOld: string; + posNo: string; + position: string; + positionLevel: string; + positionLevelOld: string; + positionNumberOld: string; + positionTypeOld: string; + prefix: string; + reason: string; + salary: number; + status: string; + fullname: string; + statustext: string; +} + +interface TypeFile { + fileName: string; + pathName: string; +} + +interface ResponseDataDetail { + avataPath: string; + createdAt: Date; + date: Date; + id: string; + organization: string; + organizationPositionOld: string; + positionLevelOld: string; + positionNumberOld: string; + positionTypeOld: string; + reason: string; + salary: number; + status: string; + fullname: string; +} + +export type { ResponseData, ResponseDataDetail, TypeFile }; diff --git a/src/modules/06_retirement/router.ts b/src/modules/06_retirement/router.ts index af06080ef..2a70e733f 100644 --- a/src/modules/06_retirement/router.ts +++ b/src/modules/06_retirement/router.ts @@ -3,14 +3,34 @@ */ const Main = () => import("@/modules/06_retirement/views/Main.vue"); -const Listretirement = () => import("@/modules/06_retirement/components/ListRetirement/TableList.vue") -const resignOrder = () => import("@/modules/06_retirement/components/resign/ResignOrder.vue"); -const resign = () => import("@/modules/06_retirement/components/resign/Resign.vue"); -const resignByid = () => import("@/modules/06_retirement/components/resign/ResignByid.vue"); -const deceased = () => import("@/modules/06_retirement/components/resign/Deceased.vue"); -const detaildeceased = () => import("@/modules/06_retirement/components/resign/DetailDeceased.vue"); -const dismissOrder = () => import("@/modules/06_retirement/components/DismissOrder/DismissOrder.vue"); -const addOrder = () => import("@/modules/06_retirement/components/DismissOrder/AddOrder.vue"); +const Listretirement = () => + import("@/modules/06_retirement/components/ListRetirement/TableList.vue"); +const resignOrder = () => + import("@/modules/06_retirement/components/resign/ResignOrder.vue"); +const resign = () => + import("@/modules/06_retirement/components/resign/Resign.vue"); +const resignByid = () => + import("@/modules/06_retirement/components/resign/ResignByid.vue"); +const deceased = () => + import("@/modules/06_retirement/components/resign/Deceased.vue"); +const detaildeceased = () => + import("@/modules/06_retirement/components/resign/DetailDeceased.vue"); +const dismissOrder = () => + import("@/modules/06_retirement/components/DismissOrder/DismissOrder.vue"); +const outDetail = () => + import("@/modules/06_retirement/components/DismissOrder/outRegistry.vue"); +const dischargedMain = () => + import("@/modules/06_retirement/components/Discharged/dischargedMain.vue"); +const dischargedDetails = () => + import( + "@/modules/06_retirement/components/Discharged/dischargedRegistry.vue" + ); +const expulsionMain = () => + import("@/modules/06_retirement/components/Expulsion/expulsionMain.vue"); + +const expulsionDetails = () => + import("@/modules/06_retirement/components/Expulsion/expulsionRegistry.vue"); + export default [ { path: "/retirement", @@ -96,6 +116,26 @@ export default [ path: "/dismiss-order", name: "dismiss-order", component: dismissOrder, + meta: { + Auth: true, + Key: [7.5], + Role: "retirement", + }, + }, + { + path: "/retirement/out/:id", + name: "outDetail", + component: outDetail, + meta: { + Auth: true, + Key: [7.5], + Role: "retirement", + }, + }, + { + path: "/discharged", + name: "discharged", + component: dischargedMain, meta: { Auth: true, Key: [7.6], @@ -103,14 +143,33 @@ export default [ }, }, { - path: "/dismiss-order/add", - name: "dismiss-order-add", - component: addOrder, + path: "/retirement/discharged/:id", + name: "dischargedDetails", + component: dischargedDetails, + meta: { + Auth: true, + Key: [7.6], + Role: "retirement", + }, + }, + { + path: "/expulsion", + name: "expulsion", + component: expulsionMain, + meta: { + Auth: true, + Key: [7.7], + Role: "retirement", + }, + }, + { + path: "/retirement/expulsion/:id", + name: "expulsionDetails", + component: expulsionDetails, meta: { Auth: true, Key: [7.7], Role: "retirement", }, }, - ]; diff --git a/src/modules/07_insignia/components/1_Proposals/listProposals.vue b/src/modules/07_insignia/components/1_Proposals/listProposals.vue index 7ea3a1235..8702e4e49 100644 --- a/src/modules/07_insignia/components/1_Proposals/listProposals.vue +++ b/src/modules/07_insignia/components/1_Proposals/listProposals.vue @@ -389,7 +389,7 @@ const clickDelete = (id: string) => { await http .delete(config.API.RoundInsignia(id)) .then((res) => { - success($q, "ลบข้อมูลการสอบสำเร็จ"); + success($q, "ลบข้อมูลการเสนอขอสำเร็จ"); fetchData(); }) .catch((e) => { From f7e686fbec58a3e201c05186e649ef7ce8878887 Mon Sep 17 00:00:00 2001 From: "DESKTOP-1R2VSQH\\Lenovo ThinkPad E490" Date: Tue, 15 Aug 2023 17:58:41 +0700 Subject: [PATCH 06/10] =?UTF-8?q?api=20=E0=B9=81=E0=B8=95=E0=B9=88?= =?UTF-8?q?=E0=B8=87=E0=B8=95=E0=B8=B1=E0=B9=89=E0=B8=87=20-=20=E0=B9=80?= =?UTF-8?q?=E0=B8=A5=E0=B8=B7=E0=B9=88=E0=B8=AD=E0=B8=99=20,=E0=B8=AD?= =?UTF-8?q?=E0=B8=B7=E0=B9=88=E0=B8=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/05_placement/api.placement.ts | 18 +- .../AppointMent/AppointmentModal.vue | 803 ++++++++++++++++++ .../components/AppointMent/Detail.vue | 446 ++++++++++ .../components/AppointMent/DialogHeader.vue | 29 + .../components/AppointMent/Main.vue | 734 ++++++++++++++++ .../05_placement/components/Other/Detail.vue | 135 +++ .../components/Other/DialogHeader.vue | 29 + .../05_placement/components/Other/Main.vue | 735 ++++++++++++++++ .../components/Other/OtherModal.vue | 799 +++++++++++++++++ src/modules/05_placement/router.ts | 46 + 10 files changed, 3770 insertions(+), 4 deletions(-) create mode 100644 src/modules/05_placement/components/AppointMent/AppointmentModal.vue create mode 100644 src/modules/05_placement/components/AppointMent/Detail.vue create mode 100644 src/modules/05_placement/components/AppointMent/DialogHeader.vue create mode 100644 src/modules/05_placement/components/AppointMent/Main.vue create mode 100644 src/modules/05_placement/components/Other/Detail.vue create mode 100644 src/modules/05_placement/components/Other/DialogHeader.vue create mode 100644 src/modules/05_placement/components/Other/Main.vue create mode 100644 src/modules/05_placement/components/Other/OtherModal.vue diff --git a/src/api/05_placement/api.placement.ts b/src/api/05_placement/api.placement.ts index 655b9b247..36877c240 100644 --- a/src/api/05_placement/api.placement.ts +++ b/src/api/05_placement/api.placement.ts @@ -108,23 +108,33 @@ export default { // แต่งตั้ง-เลื่อน placemenAppointment, + appointmentMain: () => `${placement}/appointment`, + appointmentByid: (id: string) => `${placement}/appointment/${id}`, + appointmentDelete: (id: string) => `${placement}/appointment/${id}`, + appointmentPosition: (id: string) => `${placement}/appointment/position/${id}`, + apppointmentReport: (id: string) => `${placement}/appointment/report/${id}`, // ช่วยราชการ placemenHelpGov, officerMain: () => `${placement}/officer`, - officerDetail: (id:string) => `${placement}/officer/${id}`, - officerMainDelete: (id:string) => `${placement}/officer/${id}`, + officerDetail: (id: string) => `${placement}/officer/${id}`, + officerMainDelete: (id: string) => `${placement}/officer/${id}`, officerMainReport: () => `${placement}/officer/report`, // ส่งตัวกลับ placemenRepatriation, repatriationMain: () => `${placement}/repatriation`, - repatriationDetail: (id:string) => `${placement}/repatriation/${id}`, - repatriationMainDelete: (id:string) => `${placement}/repatriation/${id}`, + repatriationDetail: (id: string) => `${placement}/repatriation/${id}`, + repatriationMainDelete: (id: string) => `${placement}/repatriation/${id}`, repatriationMainReport: () => `${placement}/repatriation/report`, // ขอย้าย placemenRelocation, // อื่นๆ placemenOther, + otherMain: () => `${placemenOther}`, + otherPosition: (id: string) => `${placemenOther}/position/${id}`, + otherReport: (id: string) => `${placemenOther}/report/${id}`, + otherByid: (id: string) => `${placemenOther}/${id}`, + }; diff --git a/src/modules/05_placement/components/AppointMent/AppointmentModal.vue b/src/modules/05_placement/components/AppointMent/AppointmentModal.vue new file mode 100644 index 000000000..8625c2b2a --- /dev/null +++ b/src/modules/05_placement/components/AppointMent/AppointmentModal.vue @@ -0,0 +1,803 @@ + + + + + diff --git a/src/modules/05_placement/components/AppointMent/Detail.vue b/src/modules/05_placement/components/AppointMent/Detail.vue new file mode 100644 index 000000000..c06310ff1 --- /dev/null +++ b/src/modules/05_placement/components/AppointMent/Detail.vue @@ -0,0 +1,446 @@ + + + diff --git a/src/modules/05_placement/components/AppointMent/DialogHeader.vue b/src/modules/05_placement/components/AppointMent/DialogHeader.vue new file mode 100644 index 000000000..a20e917b0 --- /dev/null +++ b/src/modules/05_placement/components/AppointMent/DialogHeader.vue @@ -0,0 +1,29 @@ + + + + diff --git a/src/modules/05_placement/components/AppointMent/Main.vue b/src/modules/05_placement/components/AppointMent/Main.vue new file mode 100644 index 000000000..2aa65f1e8 --- /dev/null +++ b/src/modules/05_placement/components/AppointMent/Main.vue @@ -0,0 +1,734 @@ + + + diff --git a/src/modules/05_placement/components/Other/Detail.vue b/src/modules/05_placement/components/Other/Detail.vue new file mode 100644 index 000000000..a03165d3c --- /dev/null +++ b/src/modules/05_placement/components/Other/Detail.vue @@ -0,0 +1,135 @@ + + + + + diff --git a/src/modules/05_placement/components/Other/DialogHeader.vue b/src/modules/05_placement/components/Other/DialogHeader.vue new file mode 100644 index 000000000..a20e917b0 --- /dev/null +++ b/src/modules/05_placement/components/Other/DialogHeader.vue @@ -0,0 +1,29 @@ + + + + diff --git a/src/modules/05_placement/components/Other/Main.vue b/src/modules/05_placement/components/Other/Main.vue new file mode 100644 index 000000000..2e7b50c3c --- /dev/null +++ b/src/modules/05_placement/components/Other/Main.vue @@ -0,0 +1,735 @@ + + + diff --git a/src/modules/05_placement/components/Other/OtherModal.vue b/src/modules/05_placement/components/Other/OtherModal.vue new file mode 100644 index 000000000..b39a8d1a8 --- /dev/null +++ b/src/modules/05_placement/components/Other/OtherModal.vue @@ -0,0 +1,799 @@ + + + + + diff --git a/src/modules/05_placement/router.ts b/src/modules/05_placement/router.ts index 639e5a7b7..662b19093 100644 --- a/src/modules/05_placement/router.ts +++ b/src/modules/05_placement/router.ts @@ -57,6 +57,12 @@ const FormSaveResultAdd = () => import( "@/modules/05_placement/components/probation/FormEvaluation/FormSaveResultAdd.vue" ); +//แต่งตั้ง-เลื่อน +const AppointmentMain = () => import("@/modules/05_placement/components/AppointMent/Main.vue"); +const AppointmentDetail = () => import("@/modules/05_placement/components/AppointMent/Detail.vue"); +//อื่นๆ +const OtherMain = () => import("@/modules/05_placement/components/Other/Main.vue") +const OthertDetail = () => import("@/modules/05_placement/components/Other/Detail.vue"); export default [ { @@ -269,4 +275,44 @@ export default [ Role: "placement", }, }, + { + path: "appoint-promote", + name: "appoint-promote", + component: AppointmentMain, + meta: { + Auth: true, + Key: [6.8], + Role: "placement", + }, + }, + { + path: "appoint-promote/detail/:id", + name: "appoint-promote-detail", + component: AppointmentDetail, + meta: { + Auth: true, + Key: [6.8], + Role: "placement", + }, + }, + { + path: "other", + name: "other", + component: OtherMain, + meta: { + Auth: true, + Key: [6.9], + Role: "placement", + }, + }, + { + path: "other/detail/:id", + name: "other-detail", + component: OthertDetail, + meta: { + Auth: true, + Key: [6.9], + Role: "placement", + }, + }, ]; From 0decf3206e447503b65be40bf2eeb76264e75f45 Mon Sep 17 00:00:00 2001 From: waruneeta Date: Tue, 15 Aug 2023 18:12:52 +0700 Subject: [PATCH 07/10] fix bug url api appointment --- src/api/05_placement/api.placement.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/api/05_placement/api.placement.ts b/src/api/05_placement/api.placement.ts index 5e3012bdd..cb1e3ff68 100644 --- a/src/api/05_placement/api.placement.ts +++ b/src/api/05_placement/api.placement.ts @@ -8,7 +8,7 @@ const placemenHelpGov = `${placement}/officer`; const placemenRepatriation = `${placement}/repatriation`; const placemenRelocation = `${placement}/relocation`; const placemenOther = `${env.API_URI}/retirement/other`; -const placemenAppointment = `${env.API_URI}/retirement/appointment`; +const placemenAppointment = `${placement}/appointment`; export default { MainDetail: (year: number) => `${placement}/exam/${year}`, From f9f2b6dcbdf90b3e37ae4e686904e06bcaa6ceed Mon Sep 17 00:00:00 2001 From: AnandaTon <125332905+anandaAiemvong@users.noreply.github.com> Date: Tue, 15 Aug 2023 20:51:07 +0700 Subject: [PATCH 08/10] Update api.retirement.ts --- src/api/06_retirement/api.retirement.ts | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/api/06_retirement/api.retirement.ts b/src/api/06_retirement/api.retirement.ts index 3b0993b5b..24aea972b 100644 --- a/src/api/06_retirement/api.retirement.ts +++ b/src/api/06_retirement/api.retirement.ts @@ -28,10 +28,19 @@ export default { resignReject: (id: string) => `${retirement}/resign/reject/${id}`, // ปลดออก retirementDischarge, + listDischared: () => `${retirement}/dischared`, + discharedByid: (id: string) => `${retirement}/dischared/${id}`, + discharedReport: `${retirement}/dischared/report`, // ไล่ออก retirementExpulsion, + listExpulsion: () => `${retirement}/expulsion`, + expulsionByid: (id: string) => `${retirement}/expulsion/${id}`, + expulsionReport: `${retirement}/expulsion/report`, // ให้ออก retirementOut, + listOut: () => `${retirement}/out`, + outByid: (id: string) => `${retirement}/out/${id}`, + outReport: `${retirement}/out/report`, }; From 0b7fe157a6bcadefd859771c52b77f40b9ccab1c Mon Sep 17 00:00:00 2001 From: AnandaTon <125332905+anandaAiemvong@users.noreply.github.com> Date: Tue, 15 Aug 2023 20:53:32 +0700 Subject: [PATCH 09/10] Update api.retirement.ts --- src/api/06_retirement/api.retirement.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/api/06_retirement/api.retirement.ts b/src/api/06_retirement/api.retirement.ts index cfa582ad8..24aea972b 100644 --- a/src/api/06_retirement/api.retirement.ts +++ b/src/api/06_retirement/api.retirement.ts @@ -22,10 +22,10 @@ export default { // RetirementResign ระบบลาออก listResign: () => `${retirement}/resign`, + resignReport: `${retirement}/resign/report`, resingByid: (id: string) => `${retirement}/resign/${id}`, resignConfirm: (id: string) => `${retirement}/resign/confirm/${id}`, resignReject: (id: string) => `${retirement}/resign/reject/${id}`, - // ปลดออก retirementDischarge, listDischared: () => `${retirement}/dischared`, From 928c487126ce6476f3906ba9db0067dd46608a8f Mon Sep 17 00:00:00 2001 From: "DESKTOP-1R2VSQH\\Lenovo ThinkPad E490" Date: Wed, 16 Aug 2023 11:18:04 +0700 Subject: [PATCH 10/10] =?UTF-8?q?API=20=E0=B8=A3=E0=B8=B2=E0=B8=A2?= =?UTF-8?q?=E0=B8=81=E0=B8=B2=E0=B8=A3=E0=B8=AD=E0=B8=B7=E0=B9=88=E0=B8=99?= =?UTF-8?q?=E0=B9=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../05_placement/components/Other/Detail.vue | 327 +++++++++++++- .../05_placement/components/Other/Main.vue | 411 +++++++----------- 2 files changed, 494 insertions(+), 244 deletions(-) diff --git a/src/modules/05_placement/components/Other/Detail.vue b/src/modules/05_placement/components/Other/Detail.vue index a03165d3c..d8f09f9b1 100644 --- a/src/modules/05_placement/components/Other/Detail.vue +++ b/src/modules/05_placement/components/Other/Detail.vue @@ -5,17 +5,30 @@ import { useRoute, useRouter } from "vue-router"; import { useCounterMixin } from "@/stores/mixin"; import type { ResponseTitle } from "@/modules/05_placement/interface/response/Receive"; +import type { + TypeFile, + ResponseDataDetail, +} from "@/modules/05_placement/interface/response/Transfer"; +import type { QTableProps, QForm } from "quasar"; import http from "@/plugins/http"; import config from "@/app.config"; +import keycloak from "@/plugins/keycloak"; const $q = useQuasar(); const route = useRoute(); const router = useRouter(); const mixin = useCounterMixin(); - const paramsId = route.params.id; -const { messageError, showLoader, hideLoader } = mixin; +const { + messageError, + showLoader, + hideLoader, + date2Thai, + dialogConfirm, + success, +} = mixin; +const roleAdmin = ref(false); const title = ref({ fullname: "", @@ -23,8 +36,37 @@ const title = ref({ positionLevelOld: "", positionTypeOld: "", }); +const responseData = ref({ + avataPath: "", + createdAt: new Date(), + date: new Date(), + id: "", + organization: "", + organizationPositionOld: "", + positionLevelOld: "", + positionNumberOld: "", + positionTypeOld: "", + reason: "", + salary: 0, + status: "", + fullname: "", +}); +const edit = ref(false); +const organizationPositionOld = ref(""); +const positionTypeOld = ref(""); +const positionLevelOld = ref(""); +const posNo = ref(""); +const salary = ref(0); +const organization = ref(""); +const date = ref(null); +const reason = ref(""); +const Otherdata = ref([]); onMounted(async () => { + if (keycloak.tokenParsed != null) { + roleAdmin.value = await keycloak.tokenParsed.role.includes("placement1"); + console.log("roleAdmin===>", roleAdmin.value); + } await fecthOther(); }); @@ -32,22 +74,92 @@ const fecthOther = async () => { showLoader(); await http .get(config.API.otherByid(paramsId.toString())) + // .get(config.API.transferId(paramsId.toString())) .then((res: any) => { const data = res.data.result; + Otherdata.value = res.data.result; console.log(data); title.value.fullname = `${data.firstName ?? "-"} ${data.lastName ?? "-"}`; title.value.organizationPositionOld = data.organizationPositionOld ?? "-"; title.value.positionLevelOld = data.positionLevelOld ?? "-"; title.value.positionTypeOld = data.positionTypeOld ?? "-"; + + responseData.value.createdAt = data.createdAt; + responseData.value.date = + data.date !== null ? new Date(data.date) : new Date(); + responseData.value.id = data.id ?? ""; + responseData.value.organization = data.organization ?? ""; + responseData.value.organizationPositionOld = + data.organizationPositionOld ?? ""; + responseData.value.positionLevelOld = data.positionLevelOld ?? ""; + responseData.value.positionNumberOld = data.positionNumberOld ?? ""; + responseData.value.positionTypeOld = data.positionTypeOld ?? ""; + responseData.value.reason = data.reason ?? ""; + responseData.value.salary = data.salary !== null ? data.salary : 0; + responseData.value.status = data.status ?? ""; + responseData.value.avataPath = data.avataPath ?? ""; + responseData.value.fullname = `${data.firstName ?? "-"} ${ + data.lastName ?? "-" + }`; + + organizationPositionOld.value = data.organizationPositionOld ?? ""; + positionTypeOld.value = data.positionTypeOld ?? ""; + positionLevelOld.value = data.positionLevelOld ?? ""; + posNo.value = data.positionNumberOld ?? ""; + salary.value = data.amountOld ?? ""; + organization.value = data.organization ?? ""; + date.value = + data.positionDate !== null ? new Date(data.positionDate) : null; + reason.value = data.reason ?? ""; }) .catch((e) => { messageError($q, e); }) .finally(() => { hideLoader(); + edit.value = false; }); }; +const clickEdit = () => { + dialogConfirm($q, () => saveOther()); +}; +const saveOther = async () => { + // showLoader(); + let data = { + citizenId: Otherdata.value.citizenId, + prefixId: Otherdata.value.prefixId, + firstname: Otherdata.value.firstname, + lastname: Otherdata.value.lastname, + reason: reason.value, + organizationPositionOld: organizationPositionOld.value, + positionDate: date.value, + positionTypeOld: positionTypeOld.value, + positionLevelOld: positionLevelOld.value, + positionNumberOld: posNo.value, + amountOld: Number(salary.value), + }; + console.log(data); + + await http + .put(config.API.otherByid(paramsId.toString()), data) + .then(() => { + success($q, "แก้ไข้ข้อมูลสำเร็จ"); + }) + .catch((e) => { + messageError($q, e); + console.log(e); + }) + .finally(async () => { + await fecthOther(); + }); +}; +const getClass = (val: boolean) => { + return { + "full-width inputgreen cursor-pointer": val, + "full-width cursor-pointer": !val, + }; +};