import { Suspense } from 'react';
import { enableStatusRecord } from '@/constants/business';
import { ATG_MAP } from '@/constants/common';
import { TableHeaderOperation, useTable, useTableOperate, useTableScroll } from '@/features/table';
import { fetchGetRoleList } from '@/service/api';
import RoleSearch from './modules/role-search';
const RoleOperateDrawer = lazy(() => import('./modules/role-operate-drawer'));
const Role = () => {
const { t } = useTranslation();
const isMobile = useMobile();
const nav = useNavigate();
const { scrollConfig, tableWrapperRef } = useTableScroll();
const { columnChecks, data, run, searchProps, setColumnChecks, tableProps } = useTable({
apiFn: fetchGetRoleList,
apiParams: {
current: 1,
roleCode: undefined,
roleName: undefined,
size: 10,
status: undefined
},
columns: () => [
{
align: 'center',
dataIndex: 'index',
key: 'index',
title: t('common.index'),
width: 64
},
{
align: 'center',
dataIndex: 'roleName',
key: 'roleName',
minWidth: 120,
title: t('page.manage.role.roleName')
},
{
align: 'center',
dataIndex: 'roleCode',
key: 'roleCode',
minWidth: 120,
title: t('page.manage.role.roleCode')
},
{
dataIndex: 'roleDesc',
key: 'roleDesc',
minWidth: 120,
title: t('page.manage.role.roleDesc')
},
{
align: 'center',
dataIndex: 'status',
key: 'status',
render: (_, record) => {
if (record.status === null) {
return null;
}
const label = t(enableStatusRecord[record.status]);
return