diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/TaskAssigneeDTO.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/TaskAssigneeDTO.java index d70a0d84d..85893e1dc 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/TaskAssigneeDTO.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/domain/dto/TaskAssigneeDTO.java @@ -3,7 +3,6 @@ package org.dromara.common.core.domain.dto; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import org.dromara.common.core.utils.StringUtils; import java.io.Serial; import java.io.Serializable; @@ -56,17 +55,16 @@ public class TaskAssigneeDTO implements Serializable { Function storageId, Function handlerCode, Function handlerName, - Function groupName, + Function groupName, Function createTimeMapper) { return sourceList.stream() .map(item -> new TaskHandler( String.valueOf(storageId.apply(item)), - StringUtils.blankToDefault(handlerCode.apply(item), "无"), - StringUtils.blankToDefault(handlerName.apply(item), "无"), - StringUtils.blankToDefault(groupName != null ? groupName.apply(item) : null, "默认分组"), + handlerCode.apply(item), + handlerName.apply(item), + groupName != null ? String.valueOf(groupName.apply(item)) : null, createTimeMapper.apply(item) - )) - .collect(Collectors.toList()); + )).collect(Collectors.toList()); } @Data @@ -82,17 +80,17 @@ public class TaskAssigneeDTO implements Serializable { /** * 权限编码 */ - private String handlerCode = "无"; + private String handlerCode; /** * 权限名称 */ - private String handlerName = "无"; + private String handlerName; /** * 权限分组 */ - private String groupName = "默认分组"; + private String groupName; /** * 创建时间 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java index b2c2c3a5d..c11a4e556 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java @@ -221,11 +221,10 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { wrapper.orderByAsc(SysDept::getDeptId); Page page = baseMapper.selectPageDeptList(pageQuery.build(), wrapper); - // TODO 需要回显父部门名称 // 使用封装的字段映射方法进行转换 List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRecords(), - SysDeptVo::getDeptId, SysDeptVo::getDeptCategory, SysDeptVo::getDeptName, SysDeptVo::getParentName, SysDeptVo::getCreateTime); + SysDeptVo::getDeptId, SysDeptVo::getDeptCategory, SysDeptVo::getDeptName, SysDeptVo::getParentId, SysDeptVo::getCreateTime); return new TaskAssigneeDTO(page.getTotal(), handlers); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java index 590b8bc8d..45ef799cb 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysPostServiceImpl.java @@ -270,11 +270,10 @@ public class SysPostServiceImpl implements ISysPostService, PostService { } Page page = baseMapper.selectPagePostList(pageQuery.build(), wrapper); - // TODO 需要回显部门名称 // 使用封装的字段映射方法进行转换 List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRecords(), - SysPostVo::getPostId, SysPostVo::getPostCategory, SysPostVo::getPostName, SysPostVo::getDeptName, SysPostVo::getCreateTime); + SysPostVo::getPostId, SysPostVo::getPostCategory, SysPostVo::getPostName, SysPostVo::getDeptId, SysPostVo::getCreateTime); return new TaskAssigneeDTO(page.getTotal(), handlers); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java index eb7b30f54..72db67b3b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java @@ -536,7 +536,6 @@ public class SysRoleServiceImpl implements ISysRoleService, RoleService { params.put("endTime", taskQuery.getEndTime()); } Page page = baseMapper.selectPageRoleList(pageQuery.build(), this.buildQueryWrapper(role)); - // TODO 回显数据范围 // 使用封装的字段映射方法进行转换 List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRecords(), diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java index 8bb93b5e6..02ce28321 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java @@ -726,11 +726,10 @@ public class SysUserServiceImpl implements ISysUserService, UserService { params.put("endTime", taskQuery.getEndTime()); } Page page = baseMapper.selectPageUserList(pageQuery.build(), this.buildQueryWrapper(user)); - // TODO 需要回显部门名称 // 使用封装的字段映射方法进行转换 List handlers = TaskAssigneeDTO.convertToHandlerList(page.getRecords(), - SysUserVo::getUserId, SysUserVo::getUserName, SysUserVo::getNickName, SysUserVo::getDeptName, SysUserVo::getCreateTime); + SysUserVo::getUserId, SysUserVo::getUserName, SysUserVo::getNickName, SysUserVo::getDeptId, SysUserVo::getCreateTime); return new TaskAssigneeDTO(page.getTotal(), handlers); } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfTaskAssigneeServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfTaskAssigneeServiceImpl.java index 73789731c..e89f3a18a 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfTaskAssigneeServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WfTaskAssigneeServiceImpl.java @@ -17,11 +17,13 @@ import org.dromara.common.core.service.PostService; import org.dromara.common.core.service.RoleService; import org.dromara.common.core.service.UserService; import org.dromara.common.core.utils.DateUtils; +import org.dromara.common.core.utils.StringUtils; import org.dromara.workflow.common.enums.TaskAssigneeEnum; import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.List; +import java.util.Optional; /** * 流程设计器-获取办理人权限设置列表 @@ -32,6 +34,7 @@ import java.util.List; @RequiredArgsConstructor @Service public class WfTaskAssigneeServiceImpl implements HandlerSelectService { + final static String DEFAULT_GROUP_NAME = "默认分组"; private final UserService userService; private final DeptService deptService; private final RoleService roleService; @@ -106,9 +109,12 @@ public class WfTaskAssigneeServiceImpl implements HandlerSelectService { private HandlerFunDto buildHandlerData(TaskAssigneeDTO dto, TaskAssigneeEnum type) { return new HandlerFunDto<>(dto.getList(), dto.getTotal()) .setStorageId(assignee -> type.getCode() + assignee.getStorageId()) - .setHandlerCode(TaskAssigneeDTO.TaskHandler::getHandlerCode) - .setHandlerName(TaskAssigneeDTO.TaskHandler::getHandlerName) - .setGroupName(TaskAssigneeDTO.TaskHandler::getGroupName) + .setHandlerCode(assignee -> StringUtils.blankToDefault(assignee.getHandlerCode(), "无")) + .setHandlerName(assignee -> StringUtils.blankToDefault(assignee.getHandlerName(), "无")) + .setGroupName(assignee -> StringUtils.defaultIfBlank( + Optional.ofNullable(assignee.getGroupName()) + .map(deptService::selectDeptNameByIds) + .orElse(DEFAULT_GROUP_NAME), DEFAULT_GROUP_NAME)) .setCreateTime(assignee -> DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, assignee.getCreateTime())); }