diff --git a/src/api/14_KPI/api.KPI.ts b/src/api/14_KPI/api.KPI.ts index 04d37619e..11d64c69a 100644 --- a/src/api/14_KPI/api.KPI.ts +++ b/src/api/14_KPI/api.KPI.ts @@ -83,4 +83,10 @@ export default { kpiSendToGet: (id: string) => `${kpiEvaluationUser}/reason/${id}`, openPoint: (id: string) => `${kpiEvaluationUser}/open/${id}`, + + /** + * ประกาศผล + */ + evaluationUser: `${KpiUser}/evaluation/list`, + evaluationUserDone: `${KpiUser}/evaluation/done/kp7`, }; diff --git a/src/interface/request/main/main.ts b/src/interface/request/main/main.ts index 9e0340d3a..df5d4f024 100644 --- a/src/interface/request/main/main.ts +++ b/src/interface/request/main/main.ts @@ -567,6 +567,11 @@ const menuList = readonly([ path: "KPI​List", role: "evaluateKPI", }, + { + label: "ประกาศผล", + path: "KPIResults", + role: "evaluateKPI", + }, { label: "รายงาน", path: "KPIReport", diff --git a/src/modules/02_organizationalNew/components/DialogHistoryPos.vue b/src/modules/02_organizationalNew/components/DialogHistoryPos.vue index f99463770..1ca12daf7 100644 --- a/src/modules/02_organizationalNew/components/DialogHistoryPos.vue +++ b/src/modules/02_organizationalNew/components/DialogHistoryPos.vue @@ -1,21 +1,44 @@ - + diff --git a/src/modules/04_registryNew/interface/response/History.ts b/src/modules/04_registryNew/interface/response/History.ts new file mode 100644 index 000000000..75669ae59 --- /dev/null +++ b/src/modules/04_registryNew/interface/response/History.ts @@ -0,0 +1,23 @@ +interface HistoryPos { + citizenId: string; + date: string | Date; + fullName: string; + id: string; + posNo: string; + position: string; +} + +interface Position { + createdAt: string; + createdFullName: string; + createdUserId: string; + id: string; + isActive: boolean; + lastUpdateFullName: string; + lastUpdateUserId: ""; + lastUpdatedAt: string; + name: string; + note: string; +} + +export type { HistoryPos, Position }; diff --git a/src/modules/05_placement/components/probation/FormAssign.vue b/src/modules/05_placement/components/probation/FormAssign.vue index adc2cba5d..c3d6187b8 100644 --- a/src/modules/05_placement/components/probation/FormAssign.vue +++ b/src/modules/05_placement/components/probation/FormAssign.vue @@ -299,6 +299,8 @@ function deleteProductivitys(item: number) { } } + + /** get ข้อมูล */ async function getUser() { await http @@ -980,17 +982,18 @@ watch(knowledge.value, () => { * @param update fn */ function filterFnCaretaker(val: string, update: any) { + const dataFilter = filtermantor(OPcaretaker.value, [caretaker2.value]).filter( + (i: any) => i.id !== chairman.value.id + ); if (val == "") { update(() => { - optionCaretaker.value = filtermantor(OPcaretaker.value, [ - caretaker2.value, - ]); + optionCaretaker.value = dataFilter; }); } else { update(() => { - optionCaretaker.value = filtermantor(OPcaretaker.value, [ - caretaker2.value, - ]).filter((e: any) => e.name.search(val) !== -1); + optionCaretaker.value = dataFilter.filter( + (e: any) => e.name.search(val) !== -1 + ); }); } } @@ -1002,17 +1005,18 @@ function filterFnCaretaker(val: string, update: any) { */ function filterFnCaretaker2(val: string, update: any) { + const dataFilter = filtermantor(OPcaretaker.value, [caretaker1.value]).filter( + (i: any) => i.id !== chairman.value.id + ); if (val == "") { update(() => { - optionCaretaker2.value = filtermantor(OPcaretaker.value, [ - caretaker1.value, - ]); + optionCaretaker2.value = dataFilter; }); } else { update(() => { - optionCaretaker2.value = filtermantor(OPcaretaker.value, [ - caretaker1.value, - ]).filter((e: any) => e.name.search(val) !== -1); + optionCaretaker2.value = dataFilter.filter( + (e: any) => e.name.search(val) !== -1 + ); }); } } @@ -1024,13 +1028,16 @@ function filterFnCaretaker2(val: string, update: any) { */ function filterFnCommander(val: string, update: any) { + const dataFilter = OPcommander.value.filter( + (i: any) => i.id !== chairman.value.id + ); if (val == "") { update(() => { - OPcommanderFn.value = OPcommander.value; + OPcommanderFn.value = dataFilter; }); } else { update(() => { - OPcommanderFn.value = OPcommander.value.filter( + OPcommanderFn.value = dataFilter.filter( (e: any) => e.name.search(val) !== -1 ); }); @@ -1044,13 +1051,19 @@ function filterFnCommander(val: string, update: any) { */ function filterFnChairman(val: string, update: any) { + const dataFilter = OPchairman.value.filter( + (i: any) => + i.id !== caretaker1.value.id && + i.id !== caretaker2.value.id && + i.id !== commander.value.id + ); if (val == "") { update(() => { - OPchairmanFn.value = OPchairman.value; + OPchairmanFn.value = dataFilter; }); } else { update(() => { - OPchairmanFn.value = OPchairman.value.filter( + OPchairmanFn.value = dataFilter.filter( (e: any) => e.name.search(val) !== -1 ); }); diff --git a/src/modules/08_registryEmployee/components/EditEmployee/Salary.vue b/src/modules/08_registryEmployee/components/EditEmployee/Salary.vue index 07deb7ae4..e04767679 100644 --- a/src/modules/08_registryEmployee/components/EditEmployee/Salary.vue +++ b/src/modules/08_registryEmployee/components/EditEmployee/Salary.vue @@ -972,39 +972,37 @@ const fetchData = async () => { .then((res) => { let data = res.data.result; rows.value = []; - data.map((e: ResponseObject) => { - rows.value.push({ - id: e.id, - date: new Date(e.date), - amount: e.amount, - positionSalaryAmount: e.positionSalaryAmount, - mouthSalaryAmount: e.mouthSalaryAmount, - oc: e.oc, - ocId: e.ocId, - position: e.position, - positionId: e.positionId, - posNo: e.posNo, - posNoId: e.posNoId, - positionLine: e.positionLine, - positionLineId: e.positionLineId, - positionPathSide: e.positionPathSide, - positionPathSideId: e.positionPathSideId, - positionType: e.positionType, - positionTypeId: e.positionTypeId, - positionLevel: e.positionLevel, - positionLevelId: e.positionLevelId, - positionExecutive: e.positionExecutive, - positionExecutiveId: e.positionExecutiveId, - positionExecutiveSide: e.positionExecutiveSide, - positionExecutiveSideId: e.positionExecutiveSideId, - salaryClass: e.salaryClass, - salaryRef: e.salaryRef, - salaryStatus: e.salaryStatus, - refCommandNo: e.refCommandNo, - createdFullName: e.createdFullName, - createdAt: new Date(e.createdAt), - }); - }); + rows.value = data.map((e: ResponseObject) => ({ + id: e.id, + date: new Date(e.date), + amount: e.amount, + positionSalaryAmount: e.positionSalaryAmount, + mouthSalaryAmount: e.mouthSalaryAmount, + oc: e.oc, + ocId: e.ocId, + position: e.position, + positionId: e.positionId, + posNo: e.posNo, + posNoId: e.posNoId, + positionLine: e.positionLine, + positionLineId: e.positionLineId, + positionPathSide: e.positionPathSide, + positionPathSideId: e.positionPathSideId, + positionType: e.positionType, + positionTypeId: e.positionTypeId, + positionLevel: e.positionLevel, + positionLevelId: e.positionLevelId, + positionExecutive: e.positionExecutive, + positionExecutiveId: e.positionExecutiveId, + positionExecutiveSide: e.positionExecutiveSide, + positionExecutiveSideId: e.positionExecutiveSideId, + salaryClass: e.salaryClass, + salaryRef: e.salaryRef, + salaryStatus: e.salaryStatus, + refCommandNo: e.refCommandNo, + createdFullName: e.createdFullName, + createdAt: new Date(e.createdAt), + })); }) .catch((e) => { messageError($q, e); @@ -1450,39 +1448,37 @@ const clickHistory = async (row: RequestItemsObject) => { .then((res) => { let data = res.data.result; rowsHistory.value = []; - data.map((e: ResponseObject) => { - rowsHistory.value.push({ - id: e.id, - date: new Date(e.date), - amount: e.amount, - positionSalaryAmount: e.positionSalaryAmount, - mouthSalaryAmount: e.mouthSalaryAmount, - oc: e.oc, - ocId: e.ocId, - position: e.position, - positionId: e.positionId, - posNo: e.posNo, - posNoId: e.posNoId, - positionLine: e.positionLine, - positionLineId: e.positionLineId, - positionPathSide: e.positionPathSide, - positionPathSideId: e.positionPathSideId, - positionType: e.positionType, - positionTypeId: e.positionTypeId, - positionLevel: e.positionLevel, - positionLevelId: e.positionLevelId, - positionExecutive: e.positionExecutive, - positionExecutiveId: e.positionExecutiveId, - positionExecutiveSide: e.positionExecutiveSide, - positionExecutiveSideId: e.positionExecutiveSideId, - salaryClass: e.salaryClass, - salaryRef: e.salaryRef, - refCommandNo: e.refCommandNo, - salaryStatus: e.salaryStatus, - createdFullName: e.createdFullName, - createdAt: new Date(e.createdAt), - }); - }); + rowsHistory.value = data.map((e: ResponseObject) => ({ + id: e.id, + date: new Date(e.date), + amount: e.amount, + positionSalaryAmount: e.positionSalaryAmount, + mouthSalaryAmount: e.mouthSalaryAmount, + oc: e.oc, + ocId: e.ocId, + position: e.position, + positionId: e.positionId, + posNo: e.posNo, + posNoId: e.posNoId, + positionLine: e.positionLine, + positionLineId: e.positionLineId, + positionPathSide: e.positionPathSide, + positionPathSideId: e.positionPathSideId, + positionType: e.positionType, + positionTypeId: e.positionTypeId, + positionLevel: e.positionLevel, + positionLevelId: e.positionLevelId, + positionExecutive: e.positionExecutive, + positionExecutiveId: e.positionExecutiveId, + positionExecutiveSide: e.positionExecutiveSide, + positionExecutiveSideId: e.positionExecutiveSideId, + salaryClass: e.salaryClass, + salaryRef: e.salaryRef, + refCommandNo: e.refCommandNo, + salaryStatus: e.salaryStatus, + createdFullName: e.createdFullName, + createdAt: new Date(e.createdAt), + })); }) .catch((e) => { messageError($q, e); diff --git a/src/modules/10_order/components/step/step01.vue b/src/modules/10_order/components/step/step01.vue index f06b8cbe3..e06d50818 100644 --- a/src/modules/10_order/components/step/step01.vue +++ b/src/modules/10_order/components/step/step01.vue @@ -899,6 +899,7 @@ const getClass = (val: boolean) => { :rules="[(val) => !!val || `${'กรุณากรอก พ.ศ.'}`]" :label="`${'พ.ศ.'}`" dense + hide-bottom-space outlined > @@ -927,6 +928,7 @@ const getClass = (val: boolean) => { :class="getClass(true)" outlined dense + hide-bottom-space class="full-width datepicker" :model-value=" dateCommand != null ? date2Thai(dateCommand) : null diff --git a/src/modules/13_salary/views/salaryEmployeeRate.vue b/src/modules/13_salary/views/salaryEmployeeRate.vue index a2bbab67a..b95a7b35b 100644 --- a/src/modules/13_salary/views/salaryEmployeeRate.vue +++ b/src/modules/13_salary/views/salaryEmployeeRate.vue @@ -243,7 +243,7 @@ onMounted(async () => { class="q-mr-sm" @click="router.go(-1)" /> - อัตราค่าจ้าง กลุ่มที่{{ groupSalary }} + อัตราค่าจ้างของ กลุ่มที่ {{ groupSalary }} diff --git a/src/modules/13_salary/views/salaryRate.vue b/src/modules/13_salary/views/salaryRate.vue index af6a9f1f9..c45838271 100644 --- a/src/modules/13_salary/views/salaryRate.vue +++ b/src/modules/13_salary/views/salaryRate.vue @@ -240,7 +240,7 @@ watch([() => formQuery.page, () => formQuery.pageSize], async () => { class="q-mr-sm" @click="router.go(-1)" /> - อัตราเงินเดือน ของ{{ posType }} + อัตราเงินเดือนของ {{ posType }} diff --git a/src/modules/14_KPI/components/Tab/04_Result.vue b/src/modules/14_KPI/components/Tab/04_Result.vue index 6c87c0b0e..ebe047324 100644 --- a/src/modules/14_KPI/components/Tab/04_Result.vue +++ b/src/modules/14_KPI/components/Tab/04_Result.vue @@ -171,11 +171,17 @@ function getData() { developmentMethod.value = data.developEvaluator; developmentPeriod.value = data.timeEvaluator; evaluatorComment.value = data.reasonEvaluator; - superiorCommentCheck.value = data.isReasonCommander.toString(); + superiorCommentCheck.value = + data.isReasonCommander != null + ? data.isReasonCommander.toString() + : null; superiorComment.value = data.reasonCommander; - additionalSuperiorCheck.value = data.isReasonCommanderHigh.toString(); + additionalSuperiorCheck.value = + data.isReasonCommanderHigh != null + ? data.isReasonCommanderHigh.toString() + : null; additionalSuperiorComment.value = data.reasonCommanderHigh; result1.value = data.totalPoint1; result2.value = data.totalPoint2_1 + data.totalPoint2_2; diff --git a/src/modules/14_KPI/components/Tab/Dialog/01_FormIndicator.vue b/src/modules/14_KPI/components/Tab/Dialog/01_FormIndicator.vue index 7086a9a29..d543fdbe7 100644 --- a/src/modules/14_KPI/components/Tab/Dialog/01_FormIndicator.vue +++ b/src/modules/14_KPI/components/Tab/Dialog/01_FormIndicator.vue @@ -863,6 +863,7 @@ const title = computed(() => { autoApply :enableTimePicker="false" week-start="0" + @update:model-value="formDetail.endDate = null" >