add 增加节点查询

master
gssong 10 months ago
parent 055d1f3bb2
commit c4ef053958

@ -6,6 +6,7 @@ import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.warm.flow.core.entity.Node;
import org.dromara.warm.flow.orm.entity.FlowHisTask;
import org.dromara.warm.flow.orm.entity.FlowNode;
import org.dromara.warm.flow.orm.entity.FlowTask;
import org.dromara.workflow.domain.bo.*;
import org.dromara.workflow.domain.vo.FlowHisTaskVo;
@ -188,4 +189,13 @@ public interface IFlwTaskService {
* @return
*/
List<UserDTO> currentTaskAllUser(Long taskId);
/**
*
*
* @param nodeCode
* @param definitionId id
* @return
*/
FlowNode getByNodeCode(String nodeCode, Long definitionId);
}

@ -33,6 +33,7 @@ import org.dromara.warm.flow.core.service.*;
import org.dromara.warm.flow.orm.entity.*;
import org.dromara.warm.flow.orm.mapper.FlowHisTaskMapper;
import org.dromara.warm.flow.orm.mapper.FlowInstanceMapper;
import org.dromara.warm.flow.orm.mapper.FlowNodeMapper;
import org.dromara.warm.flow.orm.mapper.FlowTaskMapper;
import org.dromara.workflow.common.ConditionalOnEnable;
import org.dromara.workflow.common.enums.TaskAssigneeType;
@ -79,6 +80,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService {
private final UserService userService;
private final FlwTaskMapper flwTaskMapper;
private final FlwCategoryMapper flwCategoryMapper;
private final FlowNodeMapper flowNodeMapper;
/**
*
@ -488,11 +490,10 @@ public class FlwTaskServiceImpl implements IFlwTaskService {
flowTaskVo.setFlowName(definition.getFlowName());
flowTaskVo.setBusinessId(instance.getBusinessId());
//设置按钮权限
List<Node> nodeList = nodeService.getByNodeCodes(Collections.singletonList(flowTaskVo.getNodeCode()), instance.getDefinitionId());
if (CollUtil.isNotEmpty(nodeList)) {
Node node = nodeList.get(0);
flowTaskVo.setButtonList(flowTaskVo.getButtonList(node.getExt()));
flowTaskVo.setNodeRatio(node.getNodeRatio());
FlowNode flowNode = getByNodeCode(flowTaskVo.getNodeCode(), instance.getDefinitionId());
if (ObjectUtil.isNotNull(flowNode)) {
flowTaskVo.setButtonList(flowTaskVo.getButtonList(flowNode.getExt()));
flowTaskVo.setNodeRatio(flowNode.getNodeRatio());
}
return flowTaskVo;
}
@ -686,4 +687,17 @@ public class FlwTaskServiceImpl implements IFlwTaskService {
}
return userService.selectListByIds(StreamUtils.toList(userList, e -> Long.valueOf(e.getProcessedBy())));
}
/**
*
*
* @param nodeCode
* @param definitionId id
*/
@Override
public FlowNode getByNodeCode(String nodeCode, Long definitionId) {
return flowNodeMapper.selectOne(new LambdaQueryWrapper<FlowNode>()
.eq(FlowNode::getNodeCode, nodeCode)
.eq(FlowNode::getDefinitionId, definitionId));
}
}

Loading…
Cancel
Save