From a49845f424ae5b1e43e391837a55c43ce07ea62d Mon Sep 17 00:00:00 2001
From: zhou zhou <3272660260@qq.com>
Date: 星期三, 01 四月 2026 15:02:47 +0800
Subject: [PATCH] #前端
---
rsf-design/src/views/basic-info/loc/locTable.columns.js | 159 ++++++++++++++++-------------------------------------
1 files changed, 48 insertions(+), 111 deletions(-)
diff --git a/rsf-design/src/views/basic-info/loc/locTable.columns.js b/rsf-design/src/views/basic-info/loc/locTable.columns.js
index aff5d2f..2ea0bcb 100644
--- a/rsf-design/src/views/basic-info/loc/locTable.columns.js
+++ b/rsf-design/src/views/basic-info/loc/locTable.columns.js
@@ -3,6 +3,39 @@
import ArtButtonMore from '@/components/core/forms/art-button-more/index.vue'
import { getLocStatusMeta, getLocUseStatusMeta } from './locPage.helpers'
+function createTextColumn(prop, label, minWidth, formatter) {
+ return {
+ prop,
+ label,
+ minWidth,
+ showOverflowTooltip: true,
+ formatter: formatter || ((row) => row[prop] || '--')
+ }
+}
+
+function createNumberColumn(prop, label, width) {
+ return {
+ prop,
+ label,
+ width,
+ align: 'center',
+ formatter: (row) => row[prop] ?? '--'
+ }
+}
+
+function createTagColumn(prop, label, width, resolveMeta) {
+ return {
+ prop,
+ label,
+ width,
+ align: 'center',
+ formatter: (row) => {
+ const statusMeta = resolveMeta(row)
+ return h(ElTag, { type: statusMeta.type, effect: 'light' }, () => statusMeta.text)
+ }
+ }
+}
+
export function createLocTableColumns({
handleView,
handleEdit,
@@ -23,117 +56,21 @@
return [
{ type: 'selection', width: 48, align: 'center' },
{ type: 'globalIndex', label: '搴忓彿', width: 72, align: 'center' },
- {
- prop: 'code',
- label: '搴撲綅鍙�',
- minWidth: 160,
- showOverflowTooltip: true,
- formatter: (row) => row.code || '--'
- },
- {
- prop: 'warehouseName',
- label: '浠撳簱',
- minWidth: 150,
- showOverflowTooltip: true,
- formatter: (row) => row.warehouseName || row.warehouseId$ || '--'
- },
- {
- prop: 'areaName',
- label: '搴撳尯',
- minWidth: 150,
- showOverflowTooltip: true,
- formatter: (row) => row.areaName || row.areaId$ || '--'
- },
- {
- prop: 'typeIdsText',
- label: '搴撲綅绫诲瀷',
- minWidth: 180,
- showOverflowTooltip: true,
- formatter: (row) => row.typeIdsText || '--'
- },
- {
- prop: 'row',
- label: '鎺�',
- width: 80,
- align: 'center',
- formatter: (row) => row.row ?? '--'
- },
- {
- prop: 'col',
- label: '鍒�',
- width: 80,
- align: 'center',
- formatter: (row) => row.col ?? '--'
- },
- {
- prop: 'lev',
- label: '灞�',
- width: 80,
- align: 'center',
- formatter: (row) => row.lev ?? '--'
- },
- {
- prop: 'channel',
- label: '宸烽亾',
- width: 90,
- align: 'center',
- formatter: (row) => row.channel ?? '--'
- },
- {
- prop: 'useStatus',
- label: '浣跨敤鐘舵��',
- width: 110,
- align: 'center',
- formatter: (row) => {
- const statusMeta = getLocUseStatusMeta(row.useStatus)
- return h(ElTag, { type: statusMeta.type, effect: 'light' }, () => statusMeta.text)
- }
- },
- {
- prop: 'flagLogicText',
- label: '铏氭嫙搴撲綅',
- width: 110,
- align: 'center',
- formatter: (row) => row.flagLogicText || '--'
- },
- {
- prop: 'flagLabelMangeText',
- label: '鏍囩绠$悊',
- width: 110,
- align: 'center',
- formatter: (row) => row.flagLabelMangeText || '--'
- },
- {
- prop: 'barcode',
- label: '瀹瑰櫒缂栫爜',
- minWidth: 150,
- showOverflowTooltip: true,
- formatter: (row) => row.barcode || '--'
- },
- {
- prop: 'status',
- label: '鐘舵��',
- width: 100,
- align: 'center',
- formatter: (row) => {
- const statusMeta = getLocStatusMeta(row.statusBool ?? row.status)
- return h(ElTag, { type: statusMeta.type, effect: 'light' }, () => statusMeta.text)
- }
- },
- {
- prop: 'updateTimeText',
- label: '鏇存柊鏃堕棿',
- minWidth: 170,
- showOverflowTooltip: true,
- formatter: (row) => row.updateTimeText || row.updateTime$ || '--'
- },
- {
- prop: 'memo',
- label: '澶囨敞',
- minWidth: 180,
- showOverflowTooltip: true,
- formatter: (row) => row.memo || '--'
- },
+ createTextColumn('code', '搴撲綅鍙�', 160),
+ createTextColumn('warehouseName', '浠撳簱', 150, (row) => row.warehouseName || row.warehouseId$ || '--'),
+ createTextColumn('areaName', '搴撳尯', 150, (row) => row.areaName || row.areaId$ || '--'),
+ createTextColumn('typeIdsText', '搴撲綅绫诲瀷', 180),
+ createNumberColumn('row', '鎺�', 80),
+ createNumberColumn('col', '鍒�', 80),
+ createNumberColumn('lev', '灞�', 80),
+ createNumberColumn('channel', '宸烽亾', 90),
+ createTagColumn('useStatus', '浣跨敤鐘舵��', 110, (row) => getLocUseStatusMeta(row.useStatus)),
+ createTextColumn('flagLogicText', '铏氭嫙搴撲綅', 110),
+ createTextColumn('flagLabelMangeText', '鏍囩绠$悊', 110),
+ createTextColumn('barcode', '瀹瑰櫒缂栫爜', 150),
+ createTagColumn('status', '鐘舵��', 100, (row) => getLocStatusMeta(row.statusBool ?? row.status)),
+ createTextColumn('updateTimeText', '鏇存柊鏃堕棿', 170, (row) => row.updateTimeText || row.updateTime$ || '--'),
+ createTextColumn('memo', '澶囨敞', 180),
{
prop: 'operation',
label: '鎿嶄綔',
--
Gitblit v1.9.1