From a318e8791e4cf06da3c2e49ec5c1c5ffd8d794de Mon Sep 17 00:00:00 2001 From: dap <15891557205@163.com> Date: Wed, 25 Sep 2024 15:13:37 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=88=86=E9=85=8D=E8=A7=92=E8=89=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/web-antd/src/router/routes/local.ts | 25 +++++++++++ .../src/views/system/role-assign/data.tsx | 20 +++++++++ .../src/views/system/role-assign/index.vue | 42 +++++++++++++++++++ apps/web-antd/src/views/system/role/index.vue | 9 ++++ 4 files changed, 96 insertions(+) create mode 100644 apps/web-antd/src/views/system/role-assign/data.tsx create mode 100644 apps/web-antd/src/views/system/role-assign/index.vue diff --git a/apps/web-antd/src/router/routes/local.ts b/apps/web-antd/src/router/routes/local.ts index fb076e68..3e99e69c 100644 --- a/apps/web-antd/src/router/routes/local.ts +++ b/apps/web-antd/src/router/routes/local.ts @@ -57,6 +57,7 @@ const profileRoute: RouteRecordStringComponent[] = [ }, ], }, + // TODO: 图标要改 { component: 'BasicLayout', meta: { @@ -81,6 +82,30 @@ const profileRoute: RouteRecordStringComponent[] = [ }, ], }, + { + component: 'BasicLayout', + meta: { + hideChildrenInMenu: true, + hideInMenu: true, + title: '分配角色', + }, + name: 'RoleAssign', + path: '/', + redirect: '/system/role-assign', + children: [ + { + component: '/system/role-assign/index', + meta: { + activePath: '/tool/gen', + icon: 'mingcute:profile-line', + keepAlive: true, + title: '分配角色', + }, + name: 'RoleAssignIndex', + path: '/system/role-assign/:roleId', + }, + ], + }, ]; /** diff --git a/apps/web-antd/src/views/system/role-assign/data.tsx b/apps/web-antd/src/views/system/role-assign/data.tsx new file mode 100644 index 00000000..8726bdd4 --- /dev/null +++ b/apps/web-antd/src/views/system/role-assign/data.tsx @@ -0,0 +1,20 @@ +import type { FormSchemaGetter } from '#/adapter'; + +export const querySchema: FormSchemaGetter = () => [ + { + component: 'Input', + componentProps: { + placeholder: '请输入', + }, + fieldName: 'userName', + label: '用户账号', + }, + { + component: 'Input', + componentProps: { + placeholder: '请输入', + }, + fieldName: 'phonenumber', + label: '手机号码', + }, +]; diff --git a/apps/web-antd/src/views/system/role-assign/index.vue b/apps/web-antd/src/views/system/role-assign/index.vue new file mode 100644 index 00000000..444b8670 --- /dev/null +++ b/apps/web-antd/src/views/system/role-assign/index.vue @@ -0,0 +1,42 @@ + + + diff --git a/apps/web-antd/src/views/system/role/index.vue b/apps/web-antd/src/views/system/role/index.vue index f4cb2f78..9a24c818 100644 --- a/apps/web-antd/src/views/system/role/index.vue +++ b/apps/web-antd/src/views/system/role/index.vue @@ -3,6 +3,7 @@ import type { Recordable } from '@vben/types'; import type { ColumnsType } from 'ant-design-vue/es/table'; import { onMounted, ref } from 'vue'; +import { useRouter } from 'vue-router'; import { Page, useVbenDrawer, useVbenModal } from '@vben/common-ui'; import { $t } from '@vben/locales'; @@ -95,6 +96,11 @@ function handleAuthEdit(record: Recordable) { authModalApi.setData({ id: record.roleId }); authModalApi.open(); } + +const router = useRouter(); +function handleAssignRole(record: Recordable) { + router.push(`/system/role-assign/${record.roleId}`); +}