diff --git a/src/modules/05_placement/components/PersonalList/OrgTree.vue b/src/modules/05_placement/components/PersonalList/OrgTree.vue index 5cca4ecb9..ba0f63366 100644 --- a/src/modules/05_placement/components/PersonalList/OrgTree.vue +++ b/src/modules/05_placement/components/PersonalList/OrgTree.vue @@ -105,10 +105,10 @@ const fetchplacementPosition = async () => { const search = ref(""); //reset Tree Filter const filterRef = ref(null); -const resetFilter = () => { - search.value = ""; - filterRef.value.focus(); -}; +// const resetFilter = () => { +// search.value = ""; +// filterRef.value.focus(); +// }; const props = defineProps({ personalId: String, @@ -155,6 +155,8 @@ const validateData = async () => { }; const saveAppoint = async () => { + console.log("save", dataForm); + myFormPosition.value.validate().then(async (result: boolean) => { if (result) { const dataAppoint = await { @@ -170,8 +172,7 @@ const saveAppoint = async () => { // mouthSalaryAmount: dataForm.mouthSalaryAmount, // positionSalaryAmount: dataForm.positionSalaryAmount, }; - // console.log("save appoint===>", dataAppoint); - + console.log("save appoint===>", dataAppoint); showLoader(); await http .post(config.API.placementPass(), dataAppoint) @@ -184,7 +185,10 @@ const saveAppoint = async () => { }) .finally(async () => { await closeAndClear(); - await resetFilter(); + // await resetFilter(); + await fetchPublishFile(); + await loadTreeData(); + await fetchplacementPosition(); hideLoader(); }); } @@ -273,8 +277,9 @@ const positionLevelOptions = ref([ ]); const selectedPosition = async (data: any) => { + console.log("selecteds", data); if (data.name == null && selected.value != data.keyId) { - console.log("selecteds", data); + // console.log("selecteds", data); editDataStatus.value = true; selected.value = data.keyId; @@ -299,9 +304,9 @@ const selectedPosition = async (data: any) => { // positionPathSide Options let positionPathSideArr: any = []; - if (data.positionSideNameObj != null) { + if (data.positionSideNameObj && data.positionSideNameObj != null) { data.positionSideNameObj.map((x: any) => { - positionLevelsArr.push({ + positionPathSideArr.push({ label: x.Name, value: x.Id, }); @@ -345,6 +350,7 @@ const selectedPosition = async (data: any) => { positionLevelsArr.length > 1 || positionLevelsArr.length == 0 ? "" : positionLevelsArr[0].value; + dataForm.positionLevelId = data.positionLevelObj[0].Id; } } else if (selected.value == data.keyId) { selected.value = ""; @@ -355,6 +361,7 @@ const selectedPosition = async (data: any) => { dataForm.positionPathSideId = ""; dataForm.positionTypeId = ""; } + console.log("dataForm", dataForm); }; const checkPosition = (val: string) => { @@ -374,14 +381,14 @@ watch(props, () => { console.log("personal", personal.value); } // console.log("draft===>", personal.value.draft); - + if (personal.value && personal.value.draft === false) { // const findData = dataRespone.value.find(findByPerson); let findData: any = null; - console.log(dataRespone.value); - dataRespone.value.map((x: any) => { findData = findByPerson(x); + console.log(findData); + if (findData != null) { console.log("findData===>", findData); selectedPosition(findData); @@ -403,9 +410,7 @@ function findByPerson(element: any): any { element.positionTypeId === personal.value.positionTypeId && element.positionNumId === personal.value.posNoId && (element.positionLevelObj === null || - element.positionLevelObj[0].Id === personal.value.positionLevelId) && - (element.positionSideNameObj === null || - element.positionSideNameObj[0].Id === personal.value.positionPathSideId) + element.positionLevelObj[0].Id === personal.value.positionLevelId) ) { return element; } else if (element.children) { diff --git a/src/modules/05_placement/components/PersonalList/Table.vue b/src/modules/05_placement/components/PersonalList/Table.vue index c05d8a671..cec7c0c36 100644 --- a/src/modules/05_placement/components/PersonalList/Table.vue +++ b/src/modules/05_placement/components/PersonalList/Table.vue @@ -297,8 +297,8 @@ const saveDeferment = async () => { hideLoader(); }); }) - .onCancel(() => { }) - .onDismiss(() => { }); + .onCancel(() => {}) + .onDismiss(() => {}); } }); }; @@ -338,8 +338,8 @@ const saveDisclaim = async () => { hideLoader(); }); }) - .onCancel(() => { }) - .onDismiss(() => { }); + .onCancel(() => {}) + .onDismiss(() => {}); } }); }; @@ -442,8 +442,8 @@ const validateData = async () => { }; const clickCloseSendModal = () => { - modaladdlist.value = false -} + modaladdlist.value = false; +}; const clickClose = async () => { userNote.value = ""; @@ -466,11 +466,26 @@ const clickClose = async () => { modal.value = false; } }; - +const displayAdd = ref(true); onMounted(async () => { if (keycloak.tokenParsed != null) { roleAdmin.value = await keycloak.tokenParsed.role.includes("placement1"); - console.log("roleAdmin===>", roleAdmin); + console.log("roleAdmin===>", roleAdmin.value); + if (roleAdmin.value === false) { + displayAdd.value = false; + visibleColumns.value = [ + "position", + "fullName", + "examNumber", + "idCard", + "positionNumber", + "organizationName", + "reportingDate", + "bmaOfficer", + "statusName", + "positionCandidate", + ]; + } } await getTable(); }); @@ -541,235 +556,426 @@ const paginationLabel = (start: number, end: number, total: number) => { + + + - - + + diff --git a/src/modules/05_placement/components/PersonalList/TableDetail.vue b/src/modules/05_placement/components/PersonalList/TableDetail.vue index 3b3f2cc10..b21720df0 100644 --- a/src/modules/05_placement/components/PersonalList/TableDetail.vue +++ b/src/modules/05_placement/components/PersonalList/TableDetail.vue @@ -19,7 +19,7 @@ const props = defineProps({ }, personalId: { type: String, - default: "" + default: "", }, validate: { type: Function, @@ -27,8 +27,7 @@ const props = defineProps({ }, }); -const rows = ref([ -]); +const rows = ref([]); //--------------------(แปลงวันที่เป็นไทย)------------------------------------// // const graduationDate = new Date(graduationExample); // rows.value[0].graduation = date2Thai(graduationDate, false, false); @@ -81,7 +80,6 @@ const myForm = ref([]); const personalForm = ref([]); const selection = ref([]); - const $q = useQuasar(); function isRequired(val: any): boolean | string { @@ -166,21 +164,22 @@ const close = async () => { rows.value = []; }; const putpersonalForm = async () => { - await http - .put( - config.API.putProperty("0a846508-4932-40de-9a9e-5b519492217c"), - personalForm.value.isProperty - ) - .then((res) => { - success($q, res.data.message); - }) - .catch((e) => { - console.log(e); - }) - .finally(() => { - props.close(); - props.validate(); - }); + props.close(); + // await http + // .put( + // config.API.putProperty("0a846508-4932-40de-9a9e-5b519492217c"), + // personalForm.value.isProperty + // ) + // .then((res) => { + // success($q, res.data.message); + // }) + // .catch((e) => { + // console.log(e); + // }) + // .finally(() => { + // props.close(); + // props.validate(); + // }); }; diff --git a/src/modules/06_retirement/router.ts b/src/modules/06_retirement/router.ts index bc2ae3219..4651eeaff 100644 --- a/src/modules/06_retirement/router.ts +++ b/src/modules/06_retirement/router.ts @@ -29,6 +29,16 @@ export default [ Role: "retirement", }, }, + { + path: "/retirement/list/:id", + name: "retirement/list", + component: Listretirement, + meta: { + Auth: true, + Key: [7.1], + Role: "retirement", + }, + }, { path: "/retirement/resign", name: "resign", @@ -69,5 +79,5 @@ export default [ Role: "retirement", }, }, - + ]; diff --git a/src/modules/06_retirement/views/Main.vue b/src/modules/06_retirement/views/Main.vue index 036b5a08c..dbe9044a2 100644 --- a/src/modules/06_retirement/views/Main.vue +++ b/src/modules/06_retirement/views/Main.vue @@ -126,7 +126,11 @@