diff --git a/src/modules/13_salary/components/04_salaryLists/DialogAddPerson.vue b/src/modules/13_salary/components/04_salaryLists/DialogAddPerson.vue index 621805e96..881f1956f 100644 --- a/src/modules/13_salary/components/04_salaryLists/DialogAddPerson.vue +++ b/src/modules/13_salary/components/04_salaryLists/DialogAddPerson.vue @@ -47,7 +47,7 @@ const columns = ref([ name: "citizenId", align: "left", label: "เลขประจำตัวประชาชน", - sortable: false, + sortable: false, field: "citizenId", headerStyle: "font-size: 14px", style: "font-size: 14px", @@ -57,15 +57,29 @@ const columns = ref([ align: "left", label: "ชื่อ-นามสกุล", field: "fullName", - sortable: false, + sortable: false, headerStyle: "font-size: 14px", style: "font-size: 14px", }, + { + name: "posNo", + align: "left", + label: "เลขที่ตำแหน่ง", + sortable: false, + field: "posNo", + headerStyle: "font-size: 14px", + style: "font-size: 14px", + format(val, row) { + return row.orgShortName && row.posMasterNo + ? `${row.orgShortName} ${row.posMasterNo}` + : "-"; + }, + }, { name: "position", align: "left", label: "ตำแหน่งในสายงาน", - sortable: false, + sortable: false, field: "position", headerStyle: "font-size: 14px", style: "font-size: 14px", @@ -74,7 +88,7 @@ const columns = ref([ name: "posType", align: "left", label: "ประเภทตำเเหน่ง", - sortable: false, + sortable: false, field: "posType", headerStyle: "font-size: 14px", style: "font-size: 14px", @@ -83,7 +97,7 @@ const columns = ref([ name: "posLevel", align: "left", label: "ระดับตำเเหน่ง", - sortable: false, + sortable: false, field: "posLevel", headerStyle: "font-size: 14px", style: "font-size: 14px", diff --git a/src/modules/13_salary/components/04_salaryLists/TabMain.vue b/src/modules/13_salary/components/04_salaryLists/TabMain.vue index 7bfde9c46..9c089fe63 100644 --- a/src/modules/13_salary/components/04_salaryLists/TabMain.vue +++ b/src/modules/13_salary/components/04_salaryLists/TabMain.vue @@ -637,6 +637,7 @@ const updateIsShowRetire = async () => { :fetchDataTable="fetchDataPeriodNew" :total="total" :snap-shot="props?.snapShot" + :is-close="props.periodLatest?.group1IsClose ?? false" /> { :total="total" :type="item.type" :snap-shot="props?.snapShot" + :is-close="props.periodLatest?.group2IsClose ?? false" /> diff --git a/src/modules/13_salary/components/04_salaryLists/TableTypeOther.vue b/src/modules/13_salary/components/04_salaryLists/TableTypeOther.vue index 06779bb5b..22ace0b36 100644 --- a/src/modules/13_salary/components/04_salaryLists/TableTypeOther.vue +++ b/src/modules/13_salary/components/04_salaryLists/TableTypeOther.vue @@ -30,6 +30,7 @@ const { dialogRemove, messageError, showLoader, hideLoader, success } = const formFilter = defineModel("formFilter", { required: true }); const maxPage = defineModel("maxPage", { required: true }); const snapShot = defineModel("snapShot"); +const isClose = defineModel("isClose", { required: true }); const props = defineProps({ rows: { type: Array }, @@ -56,15 +57,7 @@ const baseColumns = ref([ headerStyle: "font-size: 14px", style: "font-size: 14px", }, - { - name: "posNo", - align: "left", - label: "เลขที่ตำแหน่ง", - sortable: false, - field: "posNo", - headerStyle: "font-size: 14px", - style: "font-size: 14px", - }, + { name: "fullName", align: "left", @@ -74,6 +67,20 @@ const baseColumns = ref([ headerStyle: "font-size: 14px", style: "font-size: 14px", }, + { + name: "posNo", + align: "left", + label: "เลขที่ตำแหน่ง", + sortable: false, + field: "posNo", + headerStyle: "font-size: 14px", + style: "font-size: 14px", + format(val, row) { + return row.orgShortName && row.posMasterNo + ? `${row.orgShortName} ${row.posMasterNo}` + : "-"; + }, + }, { name: "position", align: "left", @@ -298,7 +305,11 @@ watch( ("formFilter", { required: true }); const maxPage = defineModel("maxPage", { required: true }); const snapShot = defineModel("snapShot"); +const isClose = defineModel("isClose", { required: true }); const props = defineProps({ rows: { type: Array }, fetchDataTable: { @@ -62,6 +63,7 @@ const columns = ref([ headerStyle: "font-size: 14px", style: "font-size: 14px", }, + { name: "fullName", align: "left", @@ -71,6 +73,20 @@ const columns = ref([ headerStyle: "font-size: 14px", style: "font-size: 14px", }, + { + name: "posNo", + align: "left", + label: "เลขที่ตำแหน่ง", + sortable: false, + field: "posNo", + headerStyle: "font-size: 14px", + style: "font-size: 14px", + format(val, row) { + return row.orgShortName && row.posMasterNo + ? `${row.orgShortName} ${row.posMasterNo}` + : "-"; + }, + }, { name: "posType", align: "left", @@ -174,6 +190,7 @@ const columns = ref([ const visibleColumns = ref([ "no", "fullName", + "posNo", "posType", "posExecutive", "position", @@ -330,7 +347,11 @@ function onClickViewInfo(type: string, id: string) { diff --git a/src/modules/13_salary/interface/response/SalaryList.ts b/src/modules/13_salary/interface/response/SalaryList.ts index 336ec90e5..4494bc7b0 100644 --- a/src/modules/13_salary/interface/response/SalaryList.ts +++ b/src/modules/13_salary/interface/response/SalaryList.ts @@ -3,6 +3,8 @@ interface DataPeriodLatest { group2id: string; // Id กลุ่ม2 effectiveDate: string; // วันที่มีผลบังคับใช้ period: string; // ประเภทผัง (SPECIAL->รอบพิเศษ,APR->รอบเมษายน,OCT->รอบตุลาคม) + group1IsClose: boolean; + group2IsClose: boolean; } interface DataPeriodQuota { diff --git a/src/modules/13_salary/views/04_salaryLists.vue b/src/modules/13_salary/views/04_salaryLists.vue index d1bf6bb1f..b25a7fd3d 100644 --- a/src/modules/13_salary/views/04_salaryLists.vue +++ b/src/modules/13_salary/views/04_salaryLists.vue @@ -201,6 +201,7 @@ async function getAgency(id: string) { }) .catch((err) => { messageError($q, err); + hideLoader(); }); } else { agencyOptionsMain.value = []; @@ -239,6 +240,7 @@ async function getAgencyPosition(id: string) { }) .catch((err) => { messageError($q, err); + hideLoader(); }); } else agencyFilter.value = ""; } @@ -352,6 +354,7 @@ function getQuota() { }) .catch((e) => { messageError($q, e); + hideLoader(); }); } @@ -385,6 +388,7 @@ async function fetchCheckisOfficer() { }) .catch((e) => { messageError($q, e); + hideLoader(); }); }