Files
full/module/base/mgt/doc/pmn.md

5.7 KiB
Raw Permalink Blame History

权限模块接口文档

基础路径:POST /mgt/pmn/*,需 JWT 认证。


1. 新增权限

路径POST /mgt/pmn/create

请求体PermissionRequest

参数 类型 必填 说明
workspace string 应用编码,权限归属应用
title string 权限名称1-100 位
title_en string 权限名称英文,最长 100
code string 权限标识1-100 位,同应用下唯一
description string 权限描述,最长 1000
parent_id number 父级权限 ID0 表示顶级
menu_path string 菜单路径,最长 500
menu_icon string 菜单图标,最长 100
type number 1=菜单 2=按钮
component string 组件路径,最长 255
sort_key number 排序键≥0
is_web_page bool 是否网页
is_new_tab bool 是否新标签页打开
is_full bool 是否单独页面不包含菜单
hide_menu bool 是否隐藏菜单栏
web_url string 网页地址,最长 500

请求示例

{
  "workspace": "my_app",
  "title": "用户管理",
  "code": "user:manage",
  "description": "用户列表与编辑",
  "parent_id": 0,
  "menu_path": "/system/user",
  "type": 1,
  "sort_key": 10
}

返回IdResp

{
  "code": 0,
  "data": {
    "id": 1,
    "identity": "01ARZ3NDEKTSV4RRFFQ69G5FAV"
  }
}

2. 删除权限

路径POST /mgt/pmn/del

请求体

参数 类型 必填 说明
id number 权限 ID

请求示例

{
  "id": 1
}

返回示例

{
  "code": 0,
  "data": {
    "id": 1,
    "identity": "01ARZ3NDEKTSV4RRFFQ69G5FAV"
  }
}

3. 权限详情

路径POST /mgt/pmn/detail

请求体

参数 类型 必填 说明
id number 权限 ID

请求示例

{
  "id": 1
}

返回PermissionRsp

参数 类型 说明
id number 权限 ID
identity string 唯一标识
title string 权限名称
title_en string 英文名称
code string 权限标识
description string 描述
app_id number 应用 ID
parent_id number 父级 ID
menu_path string 菜单路径
menu_icon string 菜单图标
type number 1=菜单 2=按钮
component string 组件路径
sort_key number 排序
is_web_page bool 是否网页
is_new_tab bool 是否新标签打开
is_full bool 是否单独页
hide_menu bool 是否隐藏菜单
web_url string 网页地址
created_at string 创建时间

返回示例

{
  "code": 0,
  "data": {
    "id": 1,
    "identity": "01ARZ3NDEKTSV4RRFFQ69G5FAV",
    "title": "用户管理",
    "title_en": "User Manage",
    "code": "user:manage",
    "description": "用户列表与编辑",
    "app_id": 1,
    "parent_id": 0,
    "menu_path": "/system/user",
    "menu_icon": "user",
    "type": 1,
    "component": "/system/user/index",
    "sort_key": 10,
    "is_web_page": false,
    "is_new_tab": false,
    "is_full": false,
    "hide_menu": false,
    "web_url": "",
    "created_at": "2025-03-16 10:00:00"
  }
}

4. 修改权限

路径POST /mgt/pmn/modify

请求体与创建字段一致id 必填,其余为要更新的字段。

请求示例

{
  "id": 1,
  "title": "用户与角色管理",
  "sort_key": 5
}

返回示例

{
  "code": 0,
  "data": {
    "id": 1,
    "identity": "01ARZ3NDEKTSV4RRFFQ69G5FAV"
  }
}

5. 获取权限列表(分页)

路径POST /mgt/pmn/fetch

请求体

参数 类型 必填 说明
page number 页码
size number 每页条数
keyword string 关键字,模糊匹配 title/code
workspace string 应用编码,只查该应用下权限
status number 状态
id number 指定权限 ID
sort_key number 非 0 时按 sort_key 降序

请求示例

{
  "page": 1,
  "size": 20,
  "workspace": "my_app",
  "keyword": "用户",
  "status": 1
}

返回FetchRespdata 为 PermissionRsp 数组):

{
  "code": 0,
  "data": {
    "total": 1,
    "page": 1,
    "size": 20,
    "data": [
      {
        "id": 1,
        "identity": "01ARZ3NDEKTSV4RRFFQ69G5FAV",
        "title": "用户管理",
        "code": "user:manage",
        "app_id": 1,
        "parent_id": 0,
        "sort_key": 10,
        "type": 1,
        "created_at": "2025-03-16 10:00:00"
      }
    ]
  }
}

6. 权限排序

路径POST /mgt/pmn/sort

请求体:数组,每项为 SortPmnRequest。

参数 类型 必填 说明
pmn_id number 权限 ID大于 0
sort_key number 新排序序号≥0

请求示例

[
  { "pmn_id": 1, "sort_key": 0 },
  { "pmn_id": 2, "sort_key": 1 },
  { "pmn_id": 3, "sort_key": 2 }
]

返回示例

{
  "code": 0,
  "data": ""
}

7. 获取权限关联用户列表

路径POST /mgt/pmn/user

请求体FetchBaseid 为权限 ID。

请求示例

{
  "id": 1
}

返回data 为拥有该权限的用户列表。


8. 获取权限关联角色列表

路径POST /mgt/pmn/role

请求体同上id 为权限 ID。

返回data 为拥有该权限的角色列表。