From 4a7848a4bec14542b8574d250684dd631a388c1a Mon Sep 17 00:00:00 2001
From: wsj <593216709@qq.com>
Date: Mon, 26 Oct 2026 23:27:46 +0800
Subject: [PATCH] feat: 用户管理接入员工管理接口

---
 src/pages/system/roles/columns.tsx |   24 +++++++++++++++++++-----
 1 files changed, 19 insertions(+), 5 deletions(-)

diff --git a/src/pages/system/roles/columns.tsx b/src/pages/system/roles/columns.tsx
index 5253c0b..d7c6eb6 100644
--- a/src/pages/system/roles/columns.tsx
+++ b/src/pages/system/roles/columns.tsx
@@ -13,6 +13,17 @@
   DELETED: { text: '已删除', color: 'red' },
 };
 
+/** 兼容后端返回未知或小写枚举,避免直接索引得到 undefined。 */
+export const getRoleTypeMeta = (roleType?: string) => {
+  const key = String(roleType ?? '').toUpperCase() as RoleType;
+  return roleTypeMeta[key] ?? { text: roleType || '-', color: 'default' };
+};
+
+export const getRoleStatusMeta = (status?: string) => {
+  const key = String(status ?? '').toUpperCase() as RoleStatus;
+  return statusMeta[key] ?? { text: status || '-', color: 'default' };
+};
+
 export const createRoleColumns = (options: {
   onDetail: (record: RoleVO) => void;
   onToggle: (record: RoleVO) => void;
@@ -49,11 +60,14 @@
       DISABLED: { text: '禁用' },
       DELETED: { text: '已删除' },
     },
-    render: (_value, record) => (
-      <Tag color={statusMeta[record.status].color} bordered={false}>
-        {statusMeta[record.status].text}
-      </Tag>
-    ),
+    render: (_value, record) => {
+      const meta = getRoleStatusMeta(record.status);
+      return (
+        <Tag color={meta.color} bordered={false}>
+          {meta.text}
+        </Tag>
+      );
+    },
   },
   {
     title: '操作',

--
Gitblit v1.9.3