| | |
| | | import { ProTable } from '@ant-design/pro-components'; |
| | | import type { ActionType } from '@ant-design/pro-components'; |
| | | import { App as AntdApp, Descriptions, Drawer, Tag } from 'antd'; |
| | | import { createRoleColumns, roleTypeMeta, statusMeta } from './columns'; |
| | | import { createRoleColumns, getRoleStatusMeta, getRoleTypeMeta } from './columns'; |
| | | import { getRoleDetail, getRoleList, toggleRoleStatus } from './server'; |
| | | import type { RoleListQuery, RoleVO } from './types'; |
| | | |
| | |
| | | const handleToggle = useCallback( |
| | | (record: RoleVO) => { |
| | | const nextAction = record.status === 'ENABLED' ? '禁用' : '启用'; |
| | | |
| | | modal.confirm({ |
| | | title: `${nextAction}角色`, |
| | | content: `确定要${nextAction}角色「${record.roleName}」吗?`, |
| | |
| | | <Descriptions.Item label="角色名称">{detail.roleName}</Descriptions.Item> |
| | | <Descriptions.Item label="角色编码">{detail.roleCode}</Descriptions.Item> |
| | | <Descriptions.Item label="角色类型"> |
| | | <Tag color={roleTypeMeta[detail.roleType].color} bordered={false}> |
| | | {roleTypeMeta[detail.roleType].text} |
| | | <Tag color={getRoleTypeMeta(detail.roleType).color} bordered={false}> |
| | | {getRoleTypeMeta(detail.roleType).text} |
| | | </Tag> |
| | | </Descriptions.Item> |
| | | <Descriptions.Item label="状态"> |
| | | <Tag color={statusMeta[detail.status].color} bordered={false}> |
| | | {statusMeta[detail.status].text} |
| | | <Tag color={getRoleStatusMeta(detail.status).color} bordered={false}> |
| | | {getRoleStatusMeta(detail.status).text} |
| | | </Tag> |
| | | </Descriptions.Item> |
| | | <Descriptions.Item label="描述">{detail.description || '-'}</Descriptions.Item> |