feat: 用户管理页面完善,编辑添加部门选择

This commit is contained in:
ray
2024-11-18 07:48:23 +08:00
parent 7a4eb30970
commit 8607a6f575
5 changed files with 724 additions and 78 deletions

138
src/api/system/role.ts Normal file
View File

@@ -0,0 +1,138 @@
import request from "@/utils/request";
const ROLE_BASE_URL = "/api/v1/roles";
const RoleAPI = {
/** 获取角色分页数据 */
getPage(queryParams?: RolePageQuery) {
return request<PageResult<RolePageVO[]>>({
url: `${ROLE_BASE_URL}/page`,
method: "GET",
data: queryParams,
});
},
/** 获取角色下拉数据源 */
getOptions() {
return request<OptionType[]>({
url: `${ROLE_BASE_URL}/options`,
method: "GET",
});
},
/**
* 获取角色的菜单ID集合
*
* @param roleId 角色ID
* @returns 角色的菜单ID集合
*/
getRoleMenuIds(roleId: number) {
return request<number[]>({
url: `${ROLE_BASE_URL}/${roleId}/menuIds`,
method: "GET",
});
},
/**
* 分配菜单权限
*
* @param roleId 角色ID
* @param data 菜单ID集合
*/
updateRoleMenus(roleId: number, data: number[]) {
return request({
url: `${ROLE_BASE_URL}/${roleId}/menus`,
method: "PUT",
data: data,
});
},
/**
* 获取角色表单数据
*
* @param id 角色ID
* @returns 角色表单数据
*/
getFormData(id: number) {
return request<RoleForm>({
url: `${ROLE_BASE_URL}/${id}/form`,
method: "GET",
});
},
/** 添加角色 */
add(data: RoleForm) {
return request({
url: `${ROLE_BASE_URL}`,
method: "POST",
data: data,
});
},
/**
* 更新角色
*
* @param id 角色ID
* @param data 角色表单数据
*/
update(id: number, data: RoleForm) {
return request({
url: `${ROLE_BASE_URL}/${id}`,
method: "PUT",
data: data,
});
},
/**
* 批量删除角色,多个以英文逗号(,)分割
*
* @param ids 角色ID字符串多个以英文逗号(,)分割
*/
deleteByIds(ids: string) {
return request({
url: `${ROLE_BASE_URL}/${ids}`,
method: "DELETE",
});
},
};
export default RoleAPI;
/** 角色分页查询参数 */
export interface RolePageQuery extends PageQuery {
/** 搜索关键字 */
keywords?: string;
}
/** 角色分页对象 */
export interface RolePageVO {
/** 角色编码 */
code?: string;
/** 角色ID */
id?: number;
/** 角色名称 */
name?: string;
/** 排序 */
sort?: number;
/** 角色状态 */
status?: number;
/** 创建时间 */
createTime?: Date;
/** 修改时间 */
updateTime?: Date;
}
/** 角色表单对象 */
export interface RoleForm {
/** 角色ID */
id?: number;
/** 角色编码 */
code?: string;
/** 数据权限 */
dataScope?: number;
/** 角色名称 */
name?: string;
/** 排序 */
sort?: number;
/** 角色状态(1-正常0-停用) */
status?: number;
}