update 调整获取下一节点,增加用户分页查询参数

This commit is contained in:
gssong 2025-03-04 21:51:16 +08:00
parent 2340556091
commit 15eb08c065
4 changed files with 28 additions and 15 deletions

View File

@ -103,6 +103,11 @@ public class SysUserBo extends BaseEntity {
*/
private Long roleId;
/**
* 用户ID
*/
private String userIds;
/**
* 排除不查询的用户(工作流用)
*/

View File

@ -16,10 +16,17 @@ import java.util.List;
public interface ISysUserService {
/**
* 根据条件分页查询用户列表
*
* @param user 用户信息
* @param pageQuery 发呢也
* @return 用户信息
*/
TableDataInfo<SysUserVo> selectPageUserList(SysUserBo user, PageQuery pageQuery);
/**
* 根据条件分页查询用户列表
* 导出用户列表
*
* @param user 用户信息
* @return 用户信息集合信息
@ -29,7 +36,8 @@ public interface ISysUserService {
/**
* 根据条件分页查询已分配用户角色列表
*
* @param user 用户信息
* @param user 用户信息
* @param pageQuery 分页
* @return 用户信息集合信息
*/
TableDataInfo<SysUserVo> selectAllocatedList(SysUserBo user, PageQuery pageQuery);
@ -37,7 +45,8 @@ public interface ISysUserService {
/**
* 根据条件分页查询未分配用户角色列表
*
* @param user 用户信息
* @param user 用户信息
* @param pageQuery 分页
* @return 用户信息集合信息
*/
TableDataInfo<SysUserVo> selectUnallocatedList(SysUserBo user, PageQuery pageQuery);

View File

@ -79,6 +79,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService {
QueryWrapper<SysUser> wrapper = Wrappers.query();
wrapper.eq("u.del_flag", SystemConstants.NORMAL)
.eq(ObjectUtil.isNotNull(user.getUserId()), "u.user_id", user.getUserId())
.in(StringUtils.isNotBlank(user.getUserIds()), "u.user_id", StringUtils.splitTo(user.getUserIds(), Convert::toLong))
.like(StringUtils.isNotBlank(user.getUserName()), "u.user_name", user.getUserName())
.eq(StringUtils.isNotBlank(user.getStatus()), "u.status", user.getStatus())
.like(StringUtils.isNotBlank(user.getPhonenumber()), "u.phonenumber", user.getPhonenumber())

View File

@ -518,24 +518,22 @@ public class FlwTaskServiceImpl implements IFlwTaskService {
Definition definition = defService.getById(task.getDefinitionId());
//获取下一节点列表
List<Node> nextNodeList = nodeService.getNextNodeList(task.getDefinitionId(), task.getNodeCode(), null, SkipType.PASS.getKey(), variables);
List<FlowNode> nextFlowNodes = BeanUtil.copyToList(nextNodeList, FlowNode.class);
if (CollUtil.isNotEmpty(nextNodeList)) {
//构建以下节点数据
List<Task> buildTaskList = StreamUtils.toList(nextNodeList, node -> taskService.addTask(node, instance, definition, null));
List<Task> buildNextTaskList = StreamUtils.toList(nextNodeList, node -> taskService.addTask(node, instance, definition, null));
//办理人变量替换
ExpressionUtil.evalVariable(buildTaskList, MapUtil.mergeAll(instance.getVariableMap(), variables));
for (Node nextNode : nextNodeList) {
buildTaskList.stream().filter(t -> t.getNodeCode().equals(nextNode.getNodeCode())).findFirst().ifPresent(t -> {
nextNode.setPermissionFlag(StringUtils.join(t.getPermissionList(), StringUtils.SEPARATOR));
ExpressionUtil.evalVariable(buildNextTaskList, MapUtil.mergeAll(instance.getVariableMap(), variables));
for (FlowNode flowNode : nextFlowNodes) {
buildNextTaskList.stream().filter(t -> t.getNodeCode().equals(flowNode.getNodeCode())).findFirst().ifPresent(t -> {
List<UserDTO> users = flwTaskAssigneeService.fetchUsersByStorageId(flowNode.getPermissionFlag());
if (CollUtil.isNotEmpty(users)) {
flowNode.setPermissionFlag(StreamUtils.join(users, e -> String.valueOf(e.getUserId())));
}
});
}
List<FlowNode> flowNodes = BeanUtil.copyToList(nextNodeList, FlowNode.class);
for (FlowNode flowNode : flowNodes) {
if (StringUtils.isNotBlank(flowNode.getPermissionFlag())) {
flwTaskAssigneeService.fetchUsersByStorageId(flowNode.getPermissionFlag());
}
}
}
return BeanUtil.copyToList(nextNodeList, FlowNode.class);
return nextFlowNodes;
}
/**