diff --git a/src/modules/18_command/components/DialogCreateCommandORG.vue b/src/modules/18_command/components/DialogCreateCommandORG.vue index c9f467d21..fcad53fec 100644 --- a/src/modules/18_command/components/DialogCreateCommandORG.vue +++ b/src/modules/18_command/components/DialogCreateCommandORG.vue @@ -10,6 +10,7 @@ import { useCommandMainStore } from "@/modules/18_command/store/Main"; /** importType*/ import type { QTableProps } from "quasar"; +import type { QTableColumn } from "quasar"; import type { ListCommand, DataOption, @@ -94,7 +95,7 @@ const dataMapToSend = computed(() => { //Table const rows = ref([]); const selected = ref([]); -const columns = ref([ +const baseColumns = ref([ { name: "posMasterNo", align: "left", @@ -116,7 +117,7 @@ const columns = ref([ { name: "posType", align: "left", - label: "ประเภทตำแหน่ง", + label: "ตำแหน่งประเภท", sortable: false, field: "posType", headerStyle: "font-size: 14px", @@ -141,6 +142,44 @@ const columns = ref([ style: "font-size: 14px", }, ]); +const baseColumnsActing = ref([ + { + name: "posMasterNo", + align: "left", + label: "รักษาการตำแหน่งเลขที่", + sortable: false, + field: "posMasterNo", + headerStyle: "font-size: 14px", + style: "font-size: 14px", + }, + { + name: "positionIsSelected", + align: "left", + label: "ชื่อ-นามสกุล", + sortable: false, + field: "positionIsSelected", + headerStyle: "font-size: 14px", + style: "font-size: 14px", + }, + { + name: "positionName", + align: "left", + label: "ตำแหน่งในสายงาน", + field: "positionName", + format(val, row) { + return `${val}${row.posLevel}`; + }, + sortable: false, + headerStyle: "font-size: 14px", + style: "font-size: 14px", + }, +]); + +const columns = computed((): QTableColumn[] => { + return props.commandTypeCode !== "C-PM-40" + ? baseColumns.value + : baseColumnsActing.value; +}); /** ฟังก์ชันบันทึกและไปยังหน้าคำสั่ง*/ function onSubmit() { @@ -218,9 +257,7 @@ function filterOption(val: string, update: Function) { }); } -/** - * ฟังก์ชันเลือกประเภทคำสั่งและเลือกกลุ่ม - */ +/** ฟังก์ชันเลือกประเภทคำสั่งและเลือกกลุ่ม */ function updateValue() { if (props.systemName === "SALARY" || props.systemName === "SALARY_EMP") { const code = commandOp.value.find( @@ -268,6 +305,20 @@ function getPerson() { }); } +/** + * ฟังก์ชันแสดงตำแหน่งเลขที่ + * @param row ข้อมูลแถว + * @param colValue ค่าของคอลัมน์ + * @returns ข้อความที่จะแสดง + */ +function posMasterNoDisplay(row: any, colValue: string): string { + if (props.commandTypeCode === "C-PM-40") { + return row.posMasterNoAct; + } + + return row.isSit ? `${colValue}(นั่งทับตำแหน่ง)` : colValue; +} + watch(modal, async () => { if (modal.value) { groupOp.value = groupDataMain.value; @@ -557,12 +608,9 @@ watch(modal, async () => { :props="props" >
- {{ - props.row.isSit - ? col.value + " " + "(นั่งทับตำแหน่ง)" - : col.value - }} + {{ posMasterNoDisplay(props.row, col.value) }}
+
{{ props.row.posLevelName