From b046723371044581c84fb22edd9f4e0829b5b51f Mon Sep 17 00:00:00 2001 From: chenos Date: Wed, 11 Aug 2021 00:09:08 +0800 Subject: [PATCH] feat: menu permissions --- packages/client/src/schemas/menu/index.tsx | 61 +++++++++++++++++++++- 1 file changed, 60 insertions(+), 1 deletion(-) diff --git a/packages/client/src/schemas/menu/index.tsx b/packages/client/src/schemas/menu/index.tsx index 367c006cc8..3cdc5553f0 100644 --- a/packages/client/src/schemas/menu/index.tsx +++ b/packages/client/src/schemas/menu/index.tsx @@ -48,6 +48,7 @@ import { ArrowDownOutlined, ArrowRightOutlined, DragOutlined, + LockOutlined, } from '@ant-design/icons'; import { IconPicker } from '../../components/icon-picker'; import { createSchema, removeSchema, updateSchema, useDefaultAction } from '..'; @@ -67,6 +68,7 @@ import { } from '../../components/Sortable'; import { DndContext, DragOverlay } from '@dnd-kit/core'; import { createPortal } from 'react-dom'; +import { Resource } from '../../resource'; export interface MenuContextProps { schema?: Schema; @@ -159,7 +161,7 @@ export const Menu: any = observer((props: any) => { }, [selectedKey]); const [dragOverlayContent, setDragOverlayContent] = useState(''); - console.log('onRemove', onRemove) + console.log('onRemove', onRemove); return ( { )} + } + onClick={async () => { + const loadRoles = async () => { + const resource = Resource.make('roles'); + const data = await resource.list(); + console.log('loadRoles', data); + return data?.data.map((item) => ({ + label: item.title, + value: item.name, + })); + }; + const resource = Resource.make({ + associatedName: 'ui_schemas', + associatedKey: schema['key'], + resourceName: 'roles', + }); + const uiSchemasRoles = await resource.list(); + console.log({ uiSchemasRoles }); + const values = await FormDialog(`设置权限`, () => { + return ( + + + + ); + }).open({ + initialValues: { + roles: uiSchemasRoles?.data?.map((role) => role.name), + }, + }); + await Resource.make({ + resourceName: 'ui_schemas', + resourceKey: schema['key'], + }).save(values); + }} + > + 设置权限 +