fix: 一级需求部门负责人可查看子部门成员发起的任务
- 后端: 对于primary_demand类型部门负责人,返回managedDepartments时包含子部门 - 前端: 支持primary_demand类型部门的任务查询
This commit is contained in:
parent
8c590d4099
commit
754b885e29
@ -1175,7 +1175,25 @@ public class UserService {
|
||||
.eq(Department::getStatus, 1)
|
||||
.eq(Department::getDeleted, 0)
|
||||
);
|
||||
managedDepartments = leadingDepts.stream()
|
||||
|
||||
// 🔥 对于一级需求部门(primary_demand),还需要获取其子部门
|
||||
List<Department> allDepts = new ArrayList<>(leadingDepts);
|
||||
for (Department dept : leadingDepts) {
|
||||
if ("primary_demand".equals(dept.getDeptType())) {
|
||||
// 获取该一级需求部门的所有子部门
|
||||
List<Department> childDepts = departmentMapper.selectList(
|
||||
new LambdaQueryWrapper<Department>()
|
||||
.eq(Department::getParentId, dept.getId())
|
||||
.eq(Department::getStatus, 1)
|
||||
.eq(Department::getDeleted, 0)
|
||||
);
|
||||
allDepts.addAll(childDepts);
|
||||
log.info("一级需求部门 {} 的子部门: {}", dept.getDeptName(),
|
||||
childDepts.stream().map(Department::getDeptName).collect(Collectors.toList()));
|
||||
}
|
||||
}
|
||||
|
||||
managedDepartments = allDepts.stream()
|
||||
.map(dept -> UserInfoVO.ManagedDepartmentVO.builder()
|
||||
.deptId(dept.getId())
|
||||
.deptName(dept.getDeptName())
|
||||
|
||||
@ -4734,16 +4734,17 @@ const loadInProgressTasks = async (newFilters?: any) => {
|
||||
console.log('需求部门负责人 - userDeptId:', userDeptId.value, 'userDeptType:', userDeptType.value)
|
||||
console.log('需求部门负责人 - userInfo.managedDepartments:', userInfo.managedDepartments)
|
||||
|
||||
// 添加用户自己的部门(如果是需求部门)
|
||||
if (userDeptId.value && userDeptType.value === 'demand') {
|
||||
// 添加用户自己的部门(如果是需求部门或一级需求部门)
|
||||
if (userDeptId.value && (userDeptType.value === 'demand' || userDeptType.value === 'primary_demand')) {
|
||||
demandDeptIds.push(userDeptId.value)
|
||||
}
|
||||
|
||||
// 添加用户管理的所有需求部门
|
||||
// 添加用户管理的所有需求部门(包括普通需求部门和一级需求部门下的子部门)
|
||||
if (userInfo.managedDepartments && Array.isArray(userInfo.managedDepartments)) {
|
||||
userInfo.managedDepartments.forEach((dept: any) => {
|
||||
console.log('检查管理的部门:', dept.deptId, dept.deptName, 'deptType:', dept.deptType)
|
||||
if (dept.deptType === 'demand' && !demandDeptIds.includes(dept.deptId)) {
|
||||
// 🔥 支持 demand 和 primary_demand 类型的部门
|
||||
if ((dept.deptType === 'demand' || dept.deptType === 'primary_demand') && !demandDeptIds.includes(dept.deptId)) {
|
||||
demandDeptIds.push(dept.deptId)
|
||||
}
|
||||
})
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user