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/system/role/roleTable.columns.js |   77 +++++++++++++++++---------------------
 1 files changed, 34 insertions(+), 43 deletions(-)

diff --git a/rsf-design/src/views/system/role/roleTable.columns.js b/rsf-design/src/views/system/role/roleTable.columns.js
index 8fe8642..d9756f1 100644
--- a/rsf-design/src/views/system/role/roleTable.columns.js
+++ b/rsf-design/src/views/system/role/roleTable.columns.js
@@ -43,50 +43,43 @@
   }
 ]
 
+function createTextColumn(prop, label, minWidth, extra = {}) {
+  return {
+    prop,
+    label,
+    minWidth,
+    showOverflowTooltip: true,
+    ...extra
+  }
+}
+
+function createTagColumn(prop, label, width, resolveMeta) {
+  return {
+    prop,
+    label,
+    width,
+    formatter: (row) => {
+      const statusMeta = resolveMeta(row)
+      return h(ElTag, { type: statusMeta.type, effect: 'light' }, () => statusMeta.text)
+    }
+  }
+}
+
 export function createRoleTableColumns(handleActionClick) {
   return [
     { type: 'selection', width: 52, fixed: 'left' },
-    {
-      prop: 'name',
-      label: '瑙掕壊鍚嶇О',
-      minWidth: 140,
-      showOverflowTooltip: true
-    },
-    {
-      prop: 'code',
-      label: '瑙掕壊缂栫爜',
-      minWidth: 140,
-      showOverflowTooltip: true
-    },
-    {
-      prop: 'memo',
-      label: '澶囨敞',
-      minWidth: 180,
-      showOverflowTooltip: true
-    },
-    {
-      prop: 'status',
-      label: '鐘舵��',
-      width: 120,
-      formatter: (row) => {
-        const statusMeta = getRoleStatusMeta(row.statusBool ?? row.status)
-        return h(ElTag, { type: statusMeta.type, effect: 'light' }, () => statusMeta.text)
-      }
-    },
-    {
-      prop: 'updateTimeText',
-      label: '鏇存柊鏃堕棿',
-      minWidth: 180,
+    createTextColumn('name', '瑙掕壊鍚嶇О', 140),
+    createTextColumn('code', '瑙掕壊缂栫爜', 140),
+    createTextColumn('memo', '澶囨敞', 180),
+    createTagColumn('status', '鐘舵��', 120, (row) => getRoleStatusMeta(row.statusBool ?? row.status)),
+    createTextColumn('updateTimeText', '鏇存柊鏃堕棿', 180, {
       sortable: true,
       formatter: (row) => row.updateTimeText || '-'
-    },
-    {
-      prop: 'createTimeText',
-      label: '鍒涘缓鏃堕棿',
-      minWidth: 180,
+    }),
+    createTextColumn('createTimeText', '鍒涘缓鏃堕棿', 180, {
       sortable: true,
       formatter: (row) => row.createTimeText || '-'
-    },
+    }),
     {
       prop: 'operation',
       label: '鎿嶄綔',
@@ -94,12 +87,10 @@
       align: 'center',
       fixed: 'right',
       formatter: (row) =>
-        h('div', [
-          h(ArtButtonMore, {
-            list: ROLE_MORE_ACTIONS,
-            onClick: (item) => handleActionClick(item, row)
-          })
-        ])
+        h(ArtButtonMore, {
+          list: ROLE_MORE_ACTIONS,
+          onClick: (item) => handleActionClick(item, row)
+        })
     }
   ]
 }

--
Gitblit v1.9.1