feat: 新增角色列表

This commit is contained in:
xlsea
2025-05-09 23:26:09 +08:00
parent b70ddb31e9
commit 67b5af9892
25 changed files with 869 additions and 125 deletions

View File

@ -10,10 +10,13 @@ declare namespace Api {
* backend api module: "system"
*/
namespace System {
/** data scope */
type DataScope = '1' | '2' | '3' | '4' | '5' | '6';
/** role */
type Role = Common.CommonRecord<{
/** 数据范围1全部数据权限 2自定数据权限 3本部门数据权限 4本部门及以下数据权限 */
dataScope: string;
dataScope: DataScope;
/** 部门树选择项是否关联显示 */
deptCheckStrictly: boolean;
/** 用户是否存在此角色标识 默认不存在 */
@ -45,21 +48,19 @@ declare namespace Api {
type RoleOperateParams = CommonType.RecordNullable<
Pick<
Api.System.Role,
| 'roleId'
| 'roleName'
| 'roleKey'
| 'roleSort'
| 'dataScope'
| 'menuCheckStrictly'
| 'deptCheckStrictly'
| 'status'
| 'remark'
>
'roleId' | 'roleName' | 'roleKey' | 'roleSort' | 'menuCheckStrictly' | 'status' | 'remark'
> & { menuIds: CommonType.IdType[] }
>;
/** role list */
type RoleList = Common.PaginatingQueryRecord<Role>;
/** role menu tree select */
type RoleMenuTreeSelect = Common.CommonRecord<{
checkedKeys: CommonType.IdType[];
menus: MenuList;
}>;
/** all role */
type AllRole = Pick<Role, 'roleId' | 'roleName' | 'roleKey'>;
@ -261,6 +262,8 @@ declare namespace Api {
parentName: string;
/** 子菜单 */
children: MenuList;
id?: CommonType.IdType;
label?: string;
}>;
/** menu list */

View File

@ -12,6 +12,7 @@ declare module 'vue' {
BetterScroll: typeof import('./../components/custom/better-scroll.vue')['default']
BooleanTag: typeof import('./../components/custom/boolean-tag.vue')['default']
ButtonIcon: typeof import('./../components/custom/button-icon.vue')['default']
copy: typeof import('./../components/custom/menu-tree-select copy.vue')['default']
CountTo: typeof import('./../components/custom/count-to.vue')['default']
DarkModeContainer: typeof import('./../components/common/dark-mode-container.vue')['default']
DictRadio: typeof import('./../components/custom/dict-radio.vue')['default']
@ -39,6 +40,7 @@ declare module 'vue' {
IconIcRoundUpload: typeof import('~icons/ic/round-upload')['default']
IconLocalBanner: typeof import('~icons/local/banner')['default']
'IconMaterialSymbols:download2Rounded': typeof import('~icons/material-symbols/download2-rounded')['default']
'IconMaterialSymbols:syncOutline': typeof import('~icons/material-symbols/sync-outline')['default']
'IconMaterialSymbols:upload2Rounded': typeof import('~icons/material-symbols/upload2-rounded')['default']
IconMdiArrowDownThin: typeof import('~icons/mdi/arrow-down-thin')['default']
IconMdiArrowUpThin: typeof import('~icons/mdi/arrow-up-thin')['default']
@ -51,6 +53,7 @@ declare module 'vue' {
LangSwitch: typeof import('./../components/common/lang-switch.vue')['default']
LookForward: typeof import('./../components/custom/look-forward.vue')['default']
MenuToggler: typeof import('./../components/common/menu-toggler.vue')['default']
MenuTree: typeof import('./../components/custom/menu-tree.vue')['default']
MenuTreeSelect: typeof import('./../components/custom/menu-tree-select.vue')['default']
MonacoEditor: typeof import('./../components/common/monaco-editor.vue')['default']
NAlert: typeof import('naive-ui')['NAlert']

View File

@ -41,6 +41,7 @@ declare module "@elegant-router/types" {
"system_oss": "/system/oss";
"system_oss-config": "/system/oss-config";
"system_post": "/system/post";
"system_role": "/system/role";
"system_tenant": "/system/tenant";
"system_user": "/system/user";
"tool": "/tool";
@ -127,6 +128,7 @@ declare module "@elegant-router/types" {
| "system_oss-config"
| "system_oss"
| "system_post"
| "system_role"
| "system_tenant"
| "system_user"
| "tool_gen"