可正常启用
This commit is contained in:
parent
32f50ae7e4
commit
0e031d0cfe
@ -2,7 +2,7 @@ import React, { useEffect, useState } from 'react';
|
||||
import { Modal, Table, message, Spin, Tag } from 'antd';
|
||||
import type { Permission } from '../types';
|
||||
import { PermissionType, PermissionTypeText } from '../types';
|
||||
import { getRolePermissions, assignPermissions } from '../service';
|
||||
import { getRolePermissions, assignPermissions, getAllPermissions } from '../service';
|
||||
|
||||
interface PermissionModalProps {
|
||||
roleId: number;
|
||||
@ -21,13 +21,16 @@ const PermissionModal: React.FC<PermissionModalProps> = ({
|
||||
const [selectedKeys, setSelectedKeys] = useState<number[]>([]);
|
||||
const [loading, setLoading] = useState(false);
|
||||
|
||||
// 获取角色已有权限
|
||||
// 获取角色已有权限和所有权限
|
||||
const fetchData = async () => {
|
||||
try {
|
||||
setLoading(true);
|
||||
const data = await getRolePermissions(roleId);
|
||||
setPermissions(data);
|
||||
setSelectedKeys(data.map(p => p.id));
|
||||
const [allPermissions, rolePermissions] = await Promise.all([
|
||||
getAllPermissions(),
|
||||
getRolePermissions(roleId)
|
||||
]);
|
||||
setPermissions(allPermissions);
|
||||
setSelectedKeys(rolePermissions.map(p => p.id));
|
||||
} catch (error) {
|
||||
message.error('获取权限数据失败');
|
||||
} finally {
|
||||
@ -118,6 +121,7 @@ const PermissionModal: React.FC<PermissionModalProps> = ({
|
||||
rowKey="id"
|
||||
pagination={false}
|
||||
scroll={{ y: 400 }}
|
||||
size="small"
|
||||
/>
|
||||
</Spin>
|
||||
</Modal>
|
||||
|
||||
@ -169,14 +169,6 @@ const RolePage: React.FC = () => {
|
||||
width: 80,
|
||||
sorter: true
|
||||
},
|
||||
{
|
||||
title: '状态',
|
||||
dataIndex: 'enabled',
|
||||
width: 100,
|
||||
render: (enabled: boolean) => (
|
||||
<Switch checked={enabled} disabled />
|
||||
)
|
||||
},
|
||||
{
|
||||
title: '描述',
|
||||
dataIndex: 'description',
|
||||
@ -281,15 +273,6 @@ const RolePage: React.FC = () => {
|
||||
<InputNumber min={0} />
|
||||
</Form.Item>
|
||||
|
||||
<Form.Item
|
||||
name="enabled"
|
||||
label="状态"
|
||||
valuePropName="checked"
|
||||
initialValue={true}
|
||||
>
|
||||
<Switch />
|
||||
</Form.Item>
|
||||
|
||||
<Form.Item
|
||||
name="description"
|
||||
label="描述"
|
||||
|
||||
@ -34,4 +34,7 @@ export const createRoleTag = (data: RoleTagRequest) => request.post<RoleTagRespo
|
||||
export const getRolePermissions = (roleId: number) => request.get<Permission[]>(`${BASE_URL}/${roleId}/permissions`);
|
||||
|
||||
// 分配权限
|
||||
export const assignPermissions = (roleId: number, permissionIds: number[]) => request.post(`${BASE_URL}/${roleId}/permissions`, permissionIds);
|
||||
export const assignPermissions = (roleId: number, permissionIds: number[]) => request.post(`${BASE_URL}/${roleId}/permissions`, permissionIds);
|
||||
|
||||
// 获取所有权限列表
|
||||
export const getAllPermissions = () => request.get<Permission[]>('/api/v1/permission/list');
|
||||
@ -39,7 +39,6 @@ export interface RoleResponse extends BaseResponse {
|
||||
name: string;
|
||||
description?: string;
|
||||
sort: number;
|
||||
enabled: boolean;
|
||||
tags?: RoleTagResponse[];
|
||||
createTime: string;
|
||||
updateTime: string;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user