update 优化工作流获取流程变量

This commit is contained in:
AprilWind 2025-04-10 16:44:51 +08:00
parent 564ab331d7
commit 53cf1b2013
2 changed files with 5 additions and 43 deletions

View File

@ -1,28 +0,0 @@
package org.dromara.workflow.domain.vo;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
/**
* 流程变量
*
* @author may
*/
@Data
public class FlowVariableVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 变量key
*/
private String key;
/**
* 变量值
*/
private String value;
}

View File

@ -42,7 +42,6 @@ import org.dromara.workflow.domain.bo.FlowInstanceBo;
import org.dromara.workflow.domain.bo.FlowInvalidBo; import org.dromara.workflow.domain.bo.FlowInvalidBo;
import org.dromara.workflow.domain.vo.FlowHisTaskVo; import org.dromara.workflow.domain.vo.FlowHisTaskVo;
import org.dromara.workflow.domain.vo.FlowInstanceVo; import org.dromara.workflow.domain.vo.FlowInstanceVo;
import org.dromara.workflow.domain.vo.FlowVariableVo;
import org.dromara.workflow.handler.FlowProcessEventHandler; import org.dromara.workflow.handler.FlowProcessEventHandler;
import org.dromara.workflow.mapper.FlwCategoryMapper; import org.dromara.workflow.mapper.FlwCategoryMapper;
import org.dromara.workflow.mapper.FlwInstanceMapper; import org.dromara.workflow.mapper.FlwInstanceMapper;
@ -346,21 +345,12 @@ public class FlwInstanceServiceImpl implements IFlwInstanceService {
*/ */
@Override @Override
public Map<String, Object> instanceVariable(Long instanceId) { public Map<String, Object> instanceVariable(Long instanceId) {
Map<String, Object> map = new HashMap<>();
FlowInstance flowInstance = flowInstanceMapper.selectById(instanceId); FlowInstance flowInstance = flowInstanceMapper.selectById(instanceId);
Map<String, Object> variableMap = flowInstance.getVariableMap(); Map<String, Object> variableMap = Optional.ofNullable(flowInstance.getVariableMap()).orElse(Collections.emptyMap());
List<FlowVariableVo> list = new ArrayList<>(); List<Map<String, Object>> variableList = variableMap.entrySet().stream()
if (CollUtil.isNotEmpty(variableMap)) { .map(entry -> Map.of("key", entry.getKey(), "value", entry.getValue()))
for (Map.Entry<String, Object> entry : variableMap.entrySet()) { .toList();
FlowVariableVo flowVariableVo = new FlowVariableVo(); return Map.of("variableList", variableList, "variable", flowInstance.getVariable());
flowVariableVo.setKey(entry.getKey());
flowVariableVo.setValue(entry.getValue().toString());
list.add(flowVariableVo);
}
}
map.put("variableList", list);
map.put("variable", flowInstance.getVariable());
return map;
} }
/** /**