137 lines
2.7 KiB
TypeScript
137 lines
2.7 KiB
TypeScript
import { RoleFormData, RoleItem, RolePageResult, RoleQueryParam } from '@/types'
|
||
import request from '@/utils/request'
|
||
import { AxiosPromise } from 'axios'
|
||
|
||
/**
|
||
* 获取角色分页列表
|
||
*
|
||
* @param queryParams
|
||
*/
|
||
export function listRolePages(queryParams?: RoleQueryParam):AxiosPromise<RolePageResult> {
|
||
return request({
|
||
url: '/youlai-admin/api/v1/roles/page',
|
||
method: 'get',
|
||
params: queryParams
|
||
})
|
||
}
|
||
|
||
/**
|
||
* 获取角色列表
|
||
*
|
||
* @param queryParams
|
||
*/
|
||
export function listRoles(queryParams?: RoleQueryParam):AxiosPromise<RoleItem[]> {
|
||
return request({
|
||
url: '/youlai-admin/api/v1/roles',
|
||
method: 'get',
|
||
params: queryParams
|
||
})
|
||
}
|
||
|
||
/**
|
||
* 获取角色详情
|
||
*
|
||
* @param id
|
||
*/
|
||
export function getRoleFormDetail(id: number):AxiosPromise<RoleFormData> {
|
||
return request({
|
||
url: '/youlai-admin/api/v1/roles/' + id,
|
||
method: 'get'
|
||
})
|
||
}
|
||
|
||
/**
|
||
* 添加角色
|
||
*
|
||
* @param data
|
||
*/
|
||
export function addRole(data: RoleFormData) {
|
||
return request({
|
||
url: '/youlai-admin/api/v1/roles',
|
||
method: 'post',
|
||
data: data
|
||
})
|
||
}
|
||
|
||
/**
|
||
* 更新角色
|
||
*
|
||
* @param id
|
||
* @param data
|
||
*/
|
||
export function updateRole(id: number, data: RoleFormData) {
|
||
return request({
|
||
url: '/youlai-admin/api/v1/roles/' + id,
|
||
method: 'put',
|
||
data: data
|
||
})
|
||
}
|
||
|
||
/**
|
||
* 批量删除角色,多个以英文逗号(,)分割
|
||
*
|
||
* @param ids
|
||
*/
|
||
export function deleteRoles(ids: string) {
|
||
return request({
|
||
url: '/youlai-admin/api/v1/roles/' + ids,
|
||
method: 'delete'
|
||
})
|
||
}
|
||
|
||
|
||
/**
|
||
* 获取角色的菜单列表
|
||
*
|
||
* @param roleId
|
||
*/
|
||
export function listRoleMenuIds(roleId: number):AxiosPromise<number[]> {
|
||
return request({
|
||
url: '/youlai-admin/api/v1/roles/' + roleId + '/menu_ids',
|
||
method: 'get',
|
||
})
|
||
}
|
||
|
||
/**
|
||
* 修改角色的菜单
|
||
*
|
||
* @param roleId
|
||
* @param menuIds
|
||
*/
|
||
export function updateRoleMenu(roleId: number, menuIds: Array<number>) {
|
||
return request({
|
||
url: '/youlai-admin/api/v1/roles/' + roleId + '/menus',
|
||
method: 'put',
|
||
data: {menuIds: menuIds}
|
||
})
|
||
}
|
||
|
||
|
||
/**
|
||
* 获取角色的权限列表
|
||
*
|
||
* @param roleId
|
||
*/
|
||
export function listRolePerms(roleId: number, menuId: number) {
|
||
return request({
|
||
url: '/youlai-admin/api/v1/roles/' + roleId + '/permissions',
|
||
method: 'get',
|
||
params: {menuId: menuId}
|
||
})
|
||
}
|
||
|
||
/**
|
||
* 保存角色权限
|
||
*
|
||
* @param menuId 菜单ID,归类权限
|
||
* @param roleId
|
||
* @param permIds
|
||
*/
|
||
export function saveRolePerms(roleId: number, menuId: number, permIds: Array<number>) {
|
||
return request({
|
||
url: '/youlai-admin/api/v1/roles/' + roleId + '/permissions',
|
||
method: 'put',
|
||
data: {menuId: menuId, permIds: permIds}
|
||
})
|
||
}
|