From 34f33e57ac9810ce5449317f8f300c5f3370d7af Mon Sep 17 00:00:00 2001 From: "DESKTOP-1R2VSQH\\Lenovo ThinkPad E490" Date: Fri, 5 Jun 2026 10:57:37 +0700 Subject: [PATCH] refactor(PosmasterNo): replace formatPosmasterNo --- src/components/Dialogs/DialogOrgSelect.vue | 13 +++++++------ .../Dialogs/DialogOrgSelectEmployee.vue | 13 +++++++------ .../components/DialogMovePos.vue | 2 +- .../02_organization/components/TableMain.vue | 11 ++++++++++- .../02_organization/store/organizational.ts | 5 +++++ src/modules/05_placement/stores/storeSelect.ts | 15 ++++++++------- .../views/04_helpGovernmentMain.vue | 2 +- .../components/DialogSelectPos.vue | 8 +++++++- .../components/Detail/Tab1.vue | 2 +- .../12_evaluatePersonal/store/Evaluate.ts | 3 ++- .../12_evaluatePersonal/views/MainPage.vue | 2 +- .../04_salaryLists/DialogAddPerson.vue | 10 +++++++--- .../04_salaryLists/TableTypeOther.vue | 10 +++++++--- .../04_salaryLists/TableTypePending.vue | 10 +++++++--- .../05_salaryListsEmployee/DialogAddPerson.vue | 10 +++++++--- .../05_salaryListsEmployee/TableTypeOther.vue | 9 +++++++++ .../05_salaryListsEmployee/TableTypePending.vue | 10 +++++++--- .../components/DialogSuccession.vue | 14 ++++++++------ .../components/TableMain.vue | 9 ++++++++- .../16_positionEmployee/store/organizational.ts | 4 ++++ src/modules/19_condition/view/Main.vue | 17 ++++++++++++++--- .../components/DialogMovePos.vue | 2 +- .../components/DialogSuccession.vue | 12 +++++++----- .../20_positionTemp/components/TableMain.vue | 2 +- src/utils/function.ts | 15 +++++++++++++++ 25 files changed, 152 insertions(+), 58 deletions(-) diff --git a/src/components/Dialogs/DialogOrgSelect.vue b/src/components/Dialogs/DialogOrgSelect.vue index e0173febc..15a41eac6 100644 --- a/src/components/Dialogs/DialogOrgSelect.vue +++ b/src/components/Dialogs/DialogOrgSelect.vue @@ -7,6 +7,7 @@ import http from "@/plugins/http"; import config from "@/app.config"; import { useCounterMixin } from "@/stores/mixin"; import { useStructureTree } from "@/stores/structureTree"; +import { formatPosmasterNo } from "@/utils/function"; import type { QTableProps } from "quasar"; import type { @@ -282,12 +283,12 @@ async function getDataTable(id: string, level: number = 0) { const listPosNo: DataPositionNo[] = dataMain.map((e: PositionMain) => ({ id: e.id, isPosition: e.isPosition, - posMasterNo: - e.orgShortname + - (e.posMasterNoPrefix != null ? e.posMasterNoPrefix : "") + - " " + - e.posMasterNo + - (e.posMasterNoSuffix != null ? e.posMasterNoSuffix : ""), + posMasterNo: formatPosmasterNo( + e.orgShortname, + e.posMasterNoPrefix, + e.posMasterNo.toString(), + e.posMasterNoSuffix + ), positionName: e.positionName, posTypeName: e.posTypeName, posLevelName: e.posLevelName, diff --git a/src/components/Dialogs/DialogOrgSelectEmployee.vue b/src/components/Dialogs/DialogOrgSelectEmployee.vue index b9a7b1ee5..7bd4dde9d 100644 --- a/src/components/Dialogs/DialogOrgSelectEmployee.vue +++ b/src/components/Dialogs/DialogOrgSelectEmployee.vue @@ -7,6 +7,7 @@ import http from "@/plugins/http"; import config from "@/app.config"; import { useCounterMixin } from "@/stores/mixin"; import { useStructureTree } from "@/stores/structureTree"; +import { formatPosmasterNo } from "@/utils/function"; import type { QTableProps } from "quasar"; import type { @@ -263,12 +264,12 @@ async function getDataTable(id: string, level: number = 0) { const listPosNo: DataPositionNo[] = dataMain.map((e: PositionMain) => ({ id: e.id, isPosition: e.isPosition, - posMasterNo: - e.orgShortname + - (e.posMasterNoPrefix != null ? e.posMasterNoPrefix : "") + - " " + - e.posMasterNo + - (e.posMasterNoSuffix != null ? e.posMasterNoSuffix : ""), + posMasterNo: formatPosmasterNo( + e.orgShortname, + e.posMasterNoPrefix, + e.posMasterNo.toString(), + e.posMasterNoSuffix + ), positionName: e.positionName, posTypeName: e.posTypeName, posLevelName: e.posLevelName, diff --git a/src/modules/02_organization/components/DialogMovePos.vue b/src/modules/02_organization/components/DialogMovePos.vue index e19999482..1cf149379 100644 --- a/src/modules/02_organization/components/DialogMovePos.vue +++ b/src/modules/02_organization/components/DialogMovePos.vue @@ -48,7 +48,7 @@ const modal = defineModel("modal", { required: true }); let reqMaster = defineModel("reqMaster", { required: true }); const totalPage = defineModel("totalPage", { required: true }); const nodeTree = defineModel("nodeTree", { required: true }); -const columns = defineModel("columns", {}); +const columns = defineModel("columns", {}); const rows = defineModel("rows", { required: true }); const props = defineProps({ fetchDataTree: { diff --git a/src/modules/02_organization/components/TableMain.vue b/src/modules/02_organization/components/TableMain.vue index 7d8a2756b..b307970f0 100644 --- a/src/modules/02_organization/components/TableMain.vue +++ b/src/modules/02_organization/components/TableMain.vue @@ -9,6 +9,7 @@ import { checkPermission } from "@/utils/permissions"; import { updateCurrentPage } from "@/utils/function"; import { useOrganizational } from "@/modules/02_organization/store/organizational"; import { useCounterMixin } from "@/stores/mixin"; +import { formatPosmasterNo } from "@/utils/function"; /** importType*/ import type { QTableProps } from "quasar"; @@ -205,6 +206,14 @@ const columns = ref([ sortable: false, field: "posMasterNo", headerStyle: "font-size: 14px", + format(val, row) { + return formatPosmasterNo( + row.orgShortname, + row.posMasterNoPrefix, + row.posMasterNoMain, + row.posMasterNoSuffix + ); + }, style: "font-size: 14px", }, { @@ -1124,7 +1133,7 @@ watch( { posLevelName: e.isSit ? e.profilePoslevel : e.posLevelName, posExecutiveName: e.posExecutiveName, isSit: e.isSit, + orgShortname: e.orgShortname, + posMasterNoPrefix: e.posMasterNoPrefix, + posMasterNoSuffix: e.posMasterNoSuffix, + posMasterNoMain: e.posMasterNo, + })); return newPosMaster || []; diff --git a/src/modules/05_placement/stores/storeSelect.ts b/src/modules/05_placement/stores/storeSelect.ts index c07f26fcb..1d98e0b40 100644 --- a/src/modules/05_placement/stores/storeSelect.ts +++ b/src/modules/05_placement/stores/storeSelect.ts @@ -1,5 +1,5 @@ import { defineStore } from "pinia"; -import { ref } from "vue"; +import { formatPosmasterNo } from "@/utils/function"; /** importType*/ import type { PositionMaim } from "@/modules/05_placement/interface/response/SelectOrg"; import type { DataPositionNo } from "@/modules/05_placement/interface/index/SelectOrg"; @@ -12,12 +12,13 @@ export const useSelectOrgStore = defineStore("selectorg", () => { const listPosNo: DataPositionNo[] = data.map((e: PositionMaim) => ({ id: e.id, isPosition: e.isPosition, - posMasterNo: - e.orgShortname + - (e.posMasterNoPrefix != null ? e.posMasterNoPrefix : "") + - " " + - e.posMasterNo + - (e.posMasterNoSuffix != null ? e.posMasterNoSuffix : ""), + posMasterNo: formatPosmasterNo( + e.orgShortname, + e.posMasterNoPrefix, + e.posMasterNo.toString(), + e.posMasterNoSuffix + ), + positionName: e.positionName, posTypeName: e.posTypeName, posLevelName: e.posLevelName, diff --git a/src/modules/05_placement/views/04_helpGovernmentMain.vue b/src/modules/05_placement/views/04_helpGovernmentMain.vue index 6c167b6a7..5e3ab0059 100644 --- a/src/modules/05_placement/views/04_helpGovernmentMain.vue +++ b/src/modules/05_placement/views/04_helpGovernmentMain.vue @@ -77,7 +77,7 @@ const columns = ref([ headerStyle: "font-size: 14px", style: "font-size: 14px", format(val, row) { - return findPosMasterNoOld(row); + return row.positionNumberOld ?? "-"; }, }, { diff --git a/src/modules/08_registryEmployee/components/DialogSelectPos.vue b/src/modules/08_registryEmployee/components/DialogSelectPos.vue index 7602cb043..222890238 100644 --- a/src/modules/08_registryEmployee/components/DialogSelectPos.vue +++ b/src/modules/08_registryEmployee/components/DialogSelectPos.vue @@ -5,6 +5,7 @@ import { useQuasar } from "quasar"; import { useRoute } from "vue-router"; import { useCounterMixin } from "@/stores/mixin"; import { useStructureTree } from "@/stores/structureTree"; +import { formatPosmasterNo } from "@/utils/function"; import http from "@/plugins/http"; import config from "@/app.config"; @@ -74,7 +75,12 @@ const columns = ref([ sortable: true, field: "posMasterNo", format(val, row) { - return `${row.orgShortname} ${row.posMasterNo}`; + return formatPosmasterNo( + row.orgShortname, + row.posMasterNoPrefix, + row.posMasterNo.toString(), + row.posMasterNoSuffix + ); }, headerStyle: "font-size: 14px", style: "font-size: 14px", diff --git a/src/modules/12_evaluatePersonal/components/Detail/Tab1.vue b/src/modules/12_evaluatePersonal/components/Detail/Tab1.vue index 854f43546..db954abf1 100644 --- a/src/modules/12_evaluatePersonal/components/Detail/Tab1.vue +++ b/src/modules/12_evaluatePersonal/components/Detail/Tab1.vue @@ -50,7 +50,7 @@ const id = ref(route.params.id as string); // id รายการป const isLoadView = ref(false); //แสดง view const modalHistory = ref(false); //แสดง popup ประวัติการประเมิน // ข้อมูลผู้เซ็นเอกสาร -const formCommand = reactive({ +const formCommand = reactive({ elementaryFullName: "", //ชื่อผู้บังคับบัญชาชั้นต้น elementaryPosition: "", //ตำแหน่งผู้บังคับบัญชาชั้นต้น abovelevelFullname: "", //ชื่อผู้บังคับบัญชาเหนือขึ้นไป 1 ระดับ diff --git a/src/modules/12_evaluatePersonal/store/Evaluate.ts b/src/modules/12_evaluatePersonal/store/Evaluate.ts index 96e37b202..e0c57c316 100644 --- a/src/modules/12_evaluatePersonal/store/Evaluate.ts +++ b/src/modules/12_evaluatePersonal/store/Evaluate.ts @@ -58,6 +58,7 @@ export const useEvalutuonStore = defineStore("EvalutuonStore", () => { const dataList: EvaluateList[] = data.map( (data: EvaluateRes) => ({ + ...data, id: data.id, citizenId: data.citizenId, fullName: data.fullName, @@ -133,7 +134,7 @@ export const useEvalutuonStore = defineStore("EvalutuonStore", () => { align: "left", label: "เลขที่ตำแหน่ง", sortable: true, - field: "positionNumber", + field: "posNo", headerStyle: "font-size: 14px", style: "font-size: 14px", }, diff --git a/src/modules/12_evaluatePersonal/views/MainPage.vue b/src/modules/12_evaluatePersonal/views/MainPage.vue index 98676a9fa..c58d47d0f 100644 --- a/src/modules/12_evaluatePersonal/views/MainPage.vue +++ b/src/modules/12_evaluatePersonal/views/MainPage.vue @@ -351,7 +351,7 @@ onMounted(async () => {
- {{ !col.value ? "-" : col.value }} + {{ col.value ? col.value : "-" }}
diff --git a/src/modules/13_salary/components/04_salaryLists/DialogAddPerson.vue b/src/modules/13_salary/components/04_salaryLists/DialogAddPerson.vue index 7804d91fc..77f843078 100644 --- a/src/modules/13_salary/components/04_salaryLists/DialogAddPerson.vue +++ b/src/modules/13_salary/components/04_salaryLists/DialogAddPerson.vue @@ -5,6 +5,7 @@ import { useQuasar } from "quasar"; import { useCounterMixin } from "@/stores/mixin"; import { useSalaryListSDataStore } from "@/modules/13_salary/store/SalaryListsStore"; import { usePagination } from "@/composables/usePagination"; +import { formatPosmasterNo } from "@/utils/function"; import config from "@/app.config"; import http from "@/plugins/http"; @@ -72,9 +73,12 @@ const columns = ref([ headerStyle: "font-size: 14px", style: "font-size: 14px", format(val, row) { - return row.orgShortName && row.posMasterNo - ? `${row.orgShortName} ${row.posMasterNo}` - : "-"; + return formatPosmasterNo( + row.orgShortName, + row.posMasterNoPrefix, + row.posMasterNo, + row.posMasterNoSuffix + ); }, }, { diff --git a/src/modules/13_salary/components/04_salaryLists/TableTypeOther.vue b/src/modules/13_salary/components/04_salaryLists/TableTypeOther.vue index 2de930508..fadcd0acc 100644 --- a/src/modules/13_salary/components/04_salaryLists/TableTypeOther.vue +++ b/src/modules/13_salary/components/04_salaryLists/TableTypeOther.vue @@ -19,6 +19,7 @@ import DialogMoveLevel from "@/modules/13_salary/components/04_salaryLists/Dialo /** importStore*/ import { useCounterMixin } from "@/stores/mixin"; import { useSalaryListSDataStore } from "@/modules/13_salary/store/SalaryListsStore"; +import { formatPosmasterNo } from "@/utils/function"; /** use*/ const $q = useQuasar(); @@ -87,9 +88,12 @@ const baseColumns = ref([ headerStyle: "font-size: 14px", style: "font-size: 14px", format(val, row) { - return row.orgShortName && row.posMasterNo - ? `${row.orgShortName} ${row.posMasterNo}` - : "-"; + return formatPosmasterNo( + row.orgShortName, + row.posMasterNoPrefix, + row.posMasterNo, + row.posMasterNoSuffix + ); }, }, { diff --git a/src/modules/13_salary/components/04_salaryLists/TableTypePending.vue b/src/modules/13_salary/components/04_salaryLists/TableTypePending.vue index dde372515..c6b5fd7d2 100644 --- a/src/modules/13_salary/components/04_salaryLists/TableTypePending.vue +++ b/src/modules/13_salary/components/04_salaryLists/TableTypePending.vue @@ -19,6 +19,7 @@ import DialogInfo from "@/modules/13_salary/components/DialogInfoMain.vue"; /** importStore*/ import { useCounterMixin } from "@/stores/mixin"; import { useSalaryListSDataStore } from "@/modules/13_salary/store/SalaryListsStore"; +import { formatPosmasterNo } from "@/utils/function"; import http from "@/plugins/http"; import config from "@/app.config"; @@ -98,9 +99,12 @@ const columns = ref([ headerStyle: "font-size: 14px", style: "font-size: 14px", format(val, row) { - return row.orgShortName && row.posMasterNo - ? `${row.orgShortName} ${row.posMasterNo}` - : "-"; + return formatPosmasterNo( + row.orgShortName, + row.posMasterNoPrefix, + row.posMasterNo, + row.posMasterNoSuffix + ); }, }, { diff --git a/src/modules/13_salary/components/05_salaryListsEmployee/DialogAddPerson.vue b/src/modules/13_salary/components/05_salaryListsEmployee/DialogAddPerson.vue index e39563a7e..82f7ef43e 100644 --- a/src/modules/13_salary/components/05_salaryListsEmployee/DialogAddPerson.vue +++ b/src/modules/13_salary/components/05_salaryListsEmployee/DialogAddPerson.vue @@ -5,6 +5,7 @@ import { useQuasar } from "quasar"; import { useCounterMixin } from "@/stores/mixin"; import { useSalaryEmployeeListSDataStore } from "@/modules/13_salary/store/SalaryEmployeeListsStore"; import { usePagination } from "@/composables/usePagination"; +import { formatPosmasterNo } from "@/utils/function"; import config from "@/app.config"; import http from "@/plugins/http"; @@ -71,9 +72,12 @@ const columns = ref([ headerStyle: "font-size: 14px", style: "font-size: 14px", format(val, row) { - return row.orgShortName && row.posMasterNo - ? `${row.orgShortName} ${row.posMasterNo}` - : "-"; + return formatPosmasterNo( + row.orgShortName, + row.posMasterNoPrefix, + row.posMasterNo, + row.posMasterNoSuffix + ); }, }, { diff --git a/src/modules/13_salary/components/05_salaryListsEmployee/TableTypeOther.vue b/src/modules/13_salary/components/05_salaryListsEmployee/TableTypeOther.vue index b2e24205c..db57d2c78 100644 --- a/src/modules/13_salary/components/05_salaryListsEmployee/TableTypeOther.vue +++ b/src/modules/13_salary/components/05_salaryListsEmployee/TableTypeOther.vue @@ -5,6 +5,7 @@ import { useQuasar } from "quasar"; import { checkPermission } from "@/utils/permissions"; import { useCounterMixin } from "@/stores/mixin"; import { useSalaryEmployeeListSDataStore } from "@/modules/13_salary/store/SalaryEmployeeListsStore"; +import { formatPosmasterNo } from "@/utils/function"; import config from "@/app.config"; import http from "@/plugins/http"; @@ -84,6 +85,14 @@ const baseColumns = ref([ field: "orgShortName", headerStyle: "font-size: 14px", style: "font-size: 14px", + format(val, row) { + return formatPosmasterNo( + row.orgShortName, + row.posMasterNoPrefix, + row.posMasterNo, + row.posMasterNoSuffix + ); + }, }, { name: "position", diff --git a/src/modules/13_salary/components/05_salaryListsEmployee/TableTypePending.vue b/src/modules/13_salary/components/05_salaryListsEmployee/TableTypePending.vue index addcdb8e8..a9559193f 100644 --- a/src/modules/13_salary/components/05_salaryListsEmployee/TableTypePending.vue +++ b/src/modules/13_salary/components/05_salaryListsEmployee/TableTypePending.vue @@ -6,6 +6,7 @@ import { checkPermission } from "@/utils/permissions"; import { useCounterMixin } from "@/stores/mixin"; import { useSalaryEmployeeListSDataStore } from "@/modules/13_salary/store/SalaryEmployeeListsStore"; +import { formatPosmasterNo } from "@/utils/function"; import http from "@/plugins/http"; import config from "@/app.config"; @@ -98,9 +99,12 @@ const columns = ref([ headerStyle: "font-size: 14px", style: "font-size: 14px", format(val, row) { - return row.orgShortName && row.posMasterNo - ? `${row.orgShortName} ${row.posMasterNo}` - : "-"; + return formatPosmasterNo( + row.orgShortName, + row.posMasterNoPrefix, + row.posMasterNo, + row.posMasterNoSuffix + ); }, }, diff --git a/src/modules/16_positionEmployee/components/DialogSuccession.vue b/src/modules/16_positionEmployee/components/DialogSuccession.vue index 7674c2df8..ab23c6dd1 100644 --- a/src/modules/16_positionEmployee/components/DialogSuccession.vue +++ b/src/modules/16_positionEmployee/components/DialogSuccession.vue @@ -5,6 +5,7 @@ import { useQuasar } from "quasar"; import { useRoute } from "vue-router"; import { useCounterMixin } from "@/stores/mixin"; import { usePositionEmp } from "@/modules/16_positionEmployee/store/organizational"; +import { formatPosmasterNo } from "@/utils/function"; import http from "@/plugins/http"; import config from "@/app.config"; @@ -135,11 +136,12 @@ async function fetchTable() { const data = res.data.result.data; const list = data.map((e: PosMaster) => ({ ...e, - posMasterNo: - (e.orgShortname !== null ? e.orgShortname : "") + - (e.posMasterNoPrefix ? e.posMasterNoPrefix : "") + - (e.posMasterNo !== null ? e.posMasterNo : "") + - (e.posMasterNoSuffix !== null ? e.posMasterNoPrefix : ""), + posMasterNo: formatPosmasterNo( + e.orgShortname, + e.posMasterNoPrefix, + e.posMasterNo.toString(), + e.posMasterNoSuffix ?? "" + ), })); rows.value = list; }) @@ -157,7 +159,7 @@ function updatePagination(newPagination: NewPagination) { reqMaster.page = 1; } -/** +/** funcion ค้นหาข้อมูลใน Table */ async function filterKeyword() { diff --git a/src/modules/16_positionEmployee/components/TableMain.vue b/src/modules/16_positionEmployee/components/TableMain.vue index 8943c2423..cd8e93380 100644 --- a/src/modules/16_positionEmployee/components/TableMain.vue +++ b/src/modules/16_positionEmployee/components/TableMain.vue @@ -5,7 +5,7 @@ import { useQuasar } from "quasar"; import { usePositionEmp } from "@/modules/16_positionEmployee/store/organizational"; import { useCounterMixin } from "@/stores/mixin"; import { checkPermission } from "@/utils/permissions"; -import { updateCurrentPage } from "@/utils/function"; +import { updateCurrentPage, formatPosmasterNo } from "@/utils/function"; import genreport from "@/plugins/genreportxlsx"; import config from "@/app.config"; import http from "@/plugins/http"; @@ -145,6 +145,13 @@ const columns = ref([ label: "ตำแหน่งเลขที่", sortable: false, field: "posMasterNo", + format: (val: any, row: any) => + formatPosmasterNo( + row.orgShortname, + row.posMasterNoPrefix, + row.posMasterNoMain, + row.posMasterNoSuffix + ), headerStyle: "font-size: 14px", style: "font-size: 14px", }, diff --git a/src/modules/16_positionEmployee/store/organizational.ts b/src/modules/16_positionEmployee/store/organizational.ts index a42db6646..9640493a9 100644 --- a/src/modules/16_positionEmployee/store/organizational.ts +++ b/src/modules/16_positionEmployee/store/organizational.ts @@ -80,6 +80,10 @@ export const usePositionEmp = defineStore("positionEmpStore", () => { posLevelName: e.isSit ? e.profilePoslevel : e.posLevelName, posExecutiveName: e.posExecutiveName, isSit: e.isSit, + orgShortname: e.orgShortname, + posMasterNoPrefix: e.posMasterNoPrefix, + posMasterNoMain: e.posMasterNo, + posMasterNoSuffix: e.posMasterNoSuffix, })); return newPosMaster; diff --git a/src/modules/19_condition/view/Main.vue b/src/modules/19_condition/view/Main.vue index 585e60005..9eb28f71f 100644 --- a/src/modules/19_condition/view/Main.vue +++ b/src/modules/19_condition/view/Main.vue @@ -6,6 +6,7 @@ import { storeToRefs } from "pinia"; import { useCounterMixin } from "@/stores/mixin"; import { useRoute } from "vue-router"; import { useStructureTree } from "@/stores/structureTree"; +import { formatPosmasterNo } from "@/utils/function"; import http from "@/plugins/http"; import config from "@/app.config"; @@ -71,8 +72,18 @@ const columns = ref([ field: "posMasterNo", format(val, row) { return row.isSit - ? `${row.orgShortname} ${row.posMasterNo}(นั่งทับตำแหน่ง)` - : `${row.orgShortname} ${row.posMasterNo}`; + ? formatPosmasterNo( + row.orgShortname, + row.posMasterNoPrefix, + row.posMasterNo, + row.posMasterNoSuffix + ) + " (นั่งทับตำแหน่ง)" + : formatPosmasterNo( + row.orgShortname, + row.posMasterNoPrefix, + row.posMasterNo, + row.posMasterNoSuffix + ); }, headerStyle: "font-size: 14px", style: "font-size: 14px", @@ -207,7 +218,7 @@ async function fetchDataTree() { function onSelectedOrgTree(data: OrgTree) { orgTreeId.value = data.orgTreeId; orgLevel.value = data.orgLevel; - fetchDataTable(); + onSearchDataTable(); } /** diff --git a/src/modules/20_positionTemp/components/DialogMovePos.vue b/src/modules/20_positionTemp/components/DialogMovePos.vue index c3815f1c3..e00d143b8 100644 --- a/src/modules/20_positionTemp/components/DialogMovePos.vue +++ b/src/modules/20_positionTemp/components/DialogMovePos.vue @@ -50,7 +50,7 @@ const modal = defineModel("modal", { required: true }); let reqMaster = defineModel("reqMaster", { required: true }); const totalPage = defineModel("totalPage", { required: true }); const nodeTree = defineModel("nodeTree", { required: true }); -const columns = defineModel("columns", {}); +const columns = defineModel("columns", {}); const rows = defineModel("rows", { required: true }); const props = defineProps({ fetchDataTree: { diff --git a/src/modules/20_positionTemp/components/DialogSuccession.vue b/src/modules/20_positionTemp/components/DialogSuccession.vue index ae11d089c..7bd6d3868 100644 --- a/src/modules/20_positionTemp/components/DialogSuccession.vue +++ b/src/modules/20_positionTemp/components/DialogSuccession.vue @@ -5,6 +5,7 @@ import { useQuasar } from "quasar"; import { useRoute } from "vue-router"; import { useCounterMixin } from "@/stores/mixin"; import { usePositionEmp } from "@/modules/20_positionTemp/store/organizational"; +import { formatPosmasterNo } from "@/utils/function"; import http from "@/plugins/http"; import config from "@/app.config"; @@ -135,11 +136,12 @@ async function fetchTable() { const data = res.data.result.data; const list = data.map((e: PosMaster) => ({ ...e, - posMasterNo: - (e.orgShortname !== null ? e.orgShortname : "") + - (e.posMasterNoPrefix ? e.posMasterNoPrefix : "") + - (e.posMasterNo !== null ? e.posMasterNo : "") + - (e.posMasterNoSuffix !== null ? e.posMasterNoPrefix : ""), + posMasterNo: formatPosmasterNo( + e.orgShortname, + e.posMasterNoPrefix, + e.posMasterNo.toString(), + e.posMasterNoSuffix ?? "" + ), })); rows.value = list; }) diff --git a/src/modules/20_positionTemp/components/TableMain.vue b/src/modules/20_positionTemp/components/TableMain.vue index 8de8c9db3..f19377051 100644 --- a/src/modules/20_positionTemp/components/TableMain.vue +++ b/src/modules/20_positionTemp/components/TableMain.vue @@ -719,7 +719,7 @@ watch(