Skip to content

用户管理

用户管理

新增用户

新增用户同时使用的函数

获取部门树deptTree

获取角色列表 getRoleList

ts
type addUser = {
  username: string //用户名
  password: string //密码
  name: string //姓名
  phone: string //手机号
  role: string[] //角色id
  deptId: string //部门id
  email?: string //邮箱
  lockFlag?: string //启用/禁用,值来自字典值:lock_flag;0有效,1禁用,默认启用
}
/**创建用户 */
function addUserFunc(obj: addUser) {
  return request({
    url: '/admin/user',
    method: 'post',
    data: obj
  })
}

/**
 * 新增用户示例
 */
async function addNewUser() {
  const [{ data: depts }, { data: roles }] = await Promise.all([
    deptTree(),
    getRoleList()
  ])
  const deptId = depts?.[0].id //部门id
  const roleId = roles?.[1].roleId //角色id
  const res = await addUserFunc({
    username: 'test',
    password: '12345678@Test',
    name: '测试账号123',
    phone: '12201118772',
    email: 'tew@ss.com',
    role: [roleId],
    deptId: deptId
  })
  console.log('res :>> ', res)
}

用户列表

获取系统用户列表

ts
/**userList */
function getUserList(params?: {
  current?: number //当前页
  size?: number //每页显示条数
  deptId?: string //部门id
  username?: string //用户名(模糊查询)
  phone?: string //手机号(模糊查询)
  name?: string //姓名(模糊查询)
}) {
  return request({
    url: '/admin/user/page',
    method: 'get',
    params
  })
}

修改用户

修改用户信息

ts
type updateUser = {
  username: string //用户名
  password: string //密码
  name: string //姓名
  phone: string //手机号
  role: string[] //角色id
  deptId: string //部门id
  email?: string //邮箱
  lockFlag?: string //启用/禁用,值来自字典值:lock_flag;0有效,1禁用
  userId: string
}
/**更新用户 */
function updateUserFunc(obj: addUser) {
  return request({
    url: '/admin/user',
    method: 'post',
    data: obj
  })
}

删除用户

ts
/**删除用户,逗号分割id */
function deleteUser(userIds: string) {
  return request({
    url: '/admin/user',
    method: 'delete',
    data: ids
  })
}

获取用户信息

ts
/**获取用户信息 */
function getUserInfo() {
  return request({
    url: '/admin/user/info',
    method: 'get'
  })
}
/**存储用户信息 */
async function storeUserInfo() {
  const res = await getUserInfo()
  const userInfo = res.data
  CONSTANTS.USER_INFO = userInfo
}

角色管理

分为系统角色和项目角色

新增角色

ts
//系统角色
type systemRole = {
  dsScope: ''
  roleId: ''
  dsType: 0
  roleCode: string
  roleDesc: string
  roleName: string
  categorize: undefined
}
//项目角色
type projectRole = {
  dsScope: ''
  roleId: ''
  dsType: 1
  roleCode: string
  roleDesc: string
  roleName: string
  categorize: 2
}
function addRoleFunc(obj: systemRole | projectRole) {
  return request({
    url: '/admin/role',
    method: 'post',
    data: obj
  })
}

角色列表

ts
/**角色列表 */
function getRoleList(params?: {
  current?: number
  size?: number
  roleName?: string
  categorize: undefined | 2 //2为项目用户角色,undefined为系统用户角色
}) {
  return request({
    url: '/admin/role/page',
    method: 'get',
    params
  })
}

修改角色

ts
//系统角色
type systemRole = {
  dsScope: ''
  roleId: string
  dsType: 0
  roleCode: string
  roleDesc: string
  roleName: string
  categorize: undefined
}
//项目角色
type projectRole = {
  dsScope: ''
  roleId: string
  dsType: 1
  roleCode: string
  roleDesc: string
  roleName: string
  categorize: 2
}
function updateRoleFunc(obj: systemRole | projectRole) {
  return request({
    url: '/admin/role',
    method: 'post',
    data: obj
  })
}

删除角色

ts
/**删除角色 */
function deleteRole(roleIds: string[]) {
  return request({
    url: '/admin/role',
    method: 'delete',
    data: roleIds
  })
}

更新角色菜单

ts
/**
 * 更新角色菜单,逗号分隔
 * @param roleId 角色id
 * @param menuIds 菜单id
 */
function updateRoleMenuFunc(obj: { roleId: string; menuIds: string }) {
  return request({
    url: '/admin/role/menu',
    method: 'put',
    data: {
      roleId: roleId,
      menuIds: menuIds
    }
  })
}

获取角色已选菜单

ts
/**
 * 获取角色已选菜单
 * @param roleId 角色id
 */
function getRoleMenu(roleId: string) {
  return request({
    url: '/admin/menu/tree/' + roleId,
    method: 'get'
  })
}

获取所有菜单

ts
/**
 * 获取所有菜单
 * @param params
 * @param params.categorize 2为项目角色菜单,undefined为系统角色菜单
 */
function getAllMenu(params?: { categorize?: string }) {
  return request({
    url: '/admin/menu/tree',
    method: 'get',
    params
  })
}

部门管理

获取部门树

ts
//获取部门树
function deptTree(params?: { deptName?: string }) {
  return request({
    url: '/admin/dept/tree',
    method: 'get',
    params
  })
}

新增部门

ts
type addDept = {
  parentId: string
  deptId: ''
  name: string
  sortOrder: number
}
/**新增部门 */
function addDeptFunc(obj: addDept) {
  return request({
    url: '/admin/dept',
    method: 'post',
    data: obj
  })
}

修改部门

ts
type updateDept = {
  parentId: string
  deptId: string
  name: string
  sortOrder: number
}
/**修改部门 */
function updateDeptFunc(obj: updateDept) {
  return request({
    url: '/admin/dept',
    method: 'put',
    data: obj
  })
}

Released under the MIT License.