import React, { useRef, useState } from 'react'; import Table, { ProColumns, ActionType } from '@/components/Table'; import { getRoleList, deleteRole, createRole, updateRole } from '@/services/system/role'; import { fetchTableData } from '@/utils/table'; import DeleteButton from '@/components/Table/DeleteButton'; import AddRoleModal from '../components/AddRoleModal'; import EditRoleModal from '../components/EditRoleModal'; import AuthPermissionsDrawer from '../components/AuthPermissionsDrawer'; const RoleList = () => { const tableRef = useRef(); const [isDrawerVisible, setIsDrawerVisible] = useState(false); const [isModalVisible, setIsModalVisible] = useState(false); const [isEditModal, setIsEditModal] = useState(false); const [modalData, setModalData] = useState({}); const handleEdit = (row: any) => { setModalData(row); setIsEditModal(true); }; const handleAuth = (row: any) => { setIsDrawerVisible(true); }; const handleDelete = async (id: any) => { await deleteRole({ id: id }); tableRef.current?.reload(); }; const columns: ProColumns[] = [ { title: '角色名称', dataIndex: 'role_name', hideInSearch: true, ellipsis: true, }, { title: '备注', dataIndex: 'remark', hideInSearch: true, ellipsis: true, }, { title: '操作', valueType: 'option', width: 180, render: (_, row) => [ { handleEdit(row); }} > 编辑 , { handleAuth(row); }} > 授权 , { handleDelete(row.id); }} />, ], }, ]; return (
{ setIsModalVisible(true); }, }, ]} actionRef={tableRef} request={async (params) => { const res = await fetchTableData(getRoleList, params); return res; }} /> { await createRole(val); setIsModalVisible(false); tableRef.current?.reload(); }} /> { await updateRole(val); setIsEditModal(false); tableRef.current?.reload(); }} /> ); }; export default RoleList;