feat(user-management-relation): 创建带人关系页面、编写各组件代码,完善诸多细节

This commit is contained in:
dk
2026-04-10 16:30:42 +08:00
parent b6a50563bc
commit 9b6f5955c3
8 changed files with 1038 additions and 2 deletions

View File

@@ -1,6 +1,7 @@
import { SYSTEM_SERVICE_PREFIX } from '@/constants/service';
import { request } from '../request';
import type { ServiceRequestResult } from './shared';
import UserManagementRelationQueryReqVO = Api.SystemManage.UserManagementRelationQueryReqVO;
const ROLE_PREFIX = `${SYSTEM_SERVICE_PREFIX}/role`;
const MENU_PREFIX = `${SYSTEM_SERVICE_PREFIX}/menu`;
@@ -9,6 +10,7 @@ const USER_PREFIX = `${SYSTEM_SERVICE_PREFIX}/user`;
const DEPT_PREFIX = `${SYSTEM_SERVICE_PREFIX}/dept`;
const POST_PREFIX = `${SYSTEM_SERVICE_PREFIX}/post`;
const ORG_LEADER_PREFIX = `${SYSTEM_SERVICE_PREFIX}/org-leader`;
const USER_MANAGEMENT_RELATION_PREFIX = `${SYSTEM_SERVICE_PREFIX}/user-management-relation`;
function createRolePageQuery(params?: Api.SystemManage.RoleSearchParams) {
const query = new URLSearchParams();
@@ -296,6 +298,14 @@ export function fetchBatchDeletePost(ids: number[]) {
});
}
/** 获取用户简单列表(用于用户选择下拉框) */
export function fetchGetUserSimpleList() {
return request<Api.SystemManage.UserSimple[]>({
url: `${USER_PREFIX}/simple-list`,
method: 'get'
});
}
/** 获取用户分页 */
export function fetchGetUserPage(params?: Api.SystemManage.UserSearchParams) {
return request<Api.SystemManage.UserList>({
@@ -466,3 +476,108 @@ export function fetchAssignUserRoles(data: Api.SystemManage.AssignUserRoleParams
data
});
}
// ==================== 用户带人关系相关 API ====================
/**
* 获取用户带人关系树形结构
*
* 用于树形控件展示,包含用户的上下级层级关系
* 树形结构特点:
* - 根节点:最高领导,没有上级
* - 中间节点:有上级也有下级
* - 叶子节点:基层员工,没有下级
*/
export function fetchGetUserManagementRelationTree() {
return request<Api.SystemManage.UserManagementRelationTreeRespVO[]>({
url: `${USER_MANAGEMENT_RELATION_PREFIX}/tree`,
method: 'get'
});
}
/**
* 通过搜索框的查询条件,获取用户带人关系树形结构
* 用于树形控件展示,包含用户的上下级层级关系
*/
export function fetchGetUserManagementRelationQuery(query: UserManagementRelationQueryReqVO) {
return request<Api.SystemManage.UserManagementRelationTreeRespVO[]>({
url: `${USER_MANAGEMENT_RELATION_PREFIX}/query`,
method: 'get',
params: query
});
}
/**
* 获取用户带人关系详情
*
* 根据主键 ID 查询单条用户带人关系记录
*
* @param id 关系记录主键 ID
*/
export function fetchGetUserManagementRelation(id: number) {
return request<Api.SystemManage.UserManagementRelation>({
url: `${USER_MANAGEMENT_RELATION_PREFIX}/get`,
method: 'get',
params: { id }
});
}
/**
* 创建用户带人关系
*
* 创建新的用户带人关系记录
*
* @param data 创建请求参数
*/
export function fetchCreateUserManagementRelation(data: Api.SystemManage.UserManagementRelationSaveReqVO) {
return request<number>({
url: `${USER_MANAGEMENT_RELATION_PREFIX}/create`,
method: 'post',
data
});
}
/**
* 更新用户带人关系
*
* 更新已有的用户带人关系记录
*
* @param data 更新请求参数(包含 id
*/
export function fetchUpdateUserManagementRelation(
data: { id: number } & Api.SystemManage.UserManagementRelationSaveReqVO
) {
return request<boolean>({
url: `${USER_MANAGEMENT_RELATION_PREFIX}/update`,
method: 'put',
data
});
}
/**
* 删除用户带人关系
*
* 根据主键 ID 删除单条用户带人关系记录
*
* @param id 关系记录主键 ID
*/
export function fetchDeleteUserManagementRelation(id: number | null) {
return request<boolean>({
url: `${USER_MANAGEMENT_RELATION_PREFIX}/delete`,
method: 'delete',
params: { id }
});
}
/**
* 批量删除用户带人关系
*
* 根据主键 ID 列表批量删除用户带人关系记录
*
* @param ids 关系记录主键 ID 列表
*/
export function fetchBatchDeleteUserManagementRelation(ids: number[]) {
return request<boolean>({
url: `${USER_MANAGEMENT_RELATION_PREFIX}/delete-list?${createBatchDeleteQuery(ids)}`,
method: 'delete'
});
}