pay-admin/src/pages/system/sys_roles/modals/EditPermissions.tsx

55 lines
1.4 KiB
TypeScript
Raw Normal View History

2025-06-27 16:42:11 +08:00
import {
MyBetaModalFormProps,
MyButtons,
MyModalFormProps,
MyTreeCheckable,
rulesHelper,
} from '@/common';
import { Apis } from '@/gen/Apis';
import { BetaSchemaForm } from '@ant-design/pro-components';
import { message } from 'antd';
export default function EditPermissions(props: MyBetaModalFormProps) {
return (
2025-06-27 17:15:50 +08:00
<BetaSchemaForm<ApiTypes.Permission.SysRoles.SetPermissions>
2025-06-27 16:42:11 +08:00
{...MyModalFormProps.props}
title={props.title}
wrapperCol={{ span: 24 }}
width="600px"
trigger={<MyButtons.Edit title={props.title} />}
request={() =>
2025-06-27 17:15:50 +08:00
Apis.Permission.SysRoles.GetPermissions({
id: props?.item?.id ?? 0,
}).then((res) => {
return {
id: props?.item?.id,
permissions_ids: res.data?.permissions_ids,
};
})
2025-06-27 16:42:11 +08:00
}
onFinish={async (values) => {
2025-06-27 17:15:50 +08:00
return Apis.Permission.SysRoles.SetPermissions({
2025-06-27 16:42:11 +08:00
...values,
id: props.item?.id ?? 0,
})
.then(() => {
props.reload?.();
message.success(props.title + '成功');
return true;
})
.catch(() => false);
}}
columns={[
{
key: 'permissions_ids',
title: '选择权限',
...rulesHelper.array,
renderFormItem: () => (
2025-06-27 17:15:50 +08:00
<MyTreeCheckable api={Apis.Permission.SysPermissions.Tree} />
2025-06-27 16:42:11 +08:00
),
},
]}
/>
);
}