From be8c526a454aa9081000d15f26bebdef8c183aea Mon Sep 17 00:00:00 2001
From: wsj <593216709@qq.com>
Date: Mon, 26 Oct 2026 23:34:23 +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