优化模型清理父节点逻辑
This commit is contained in:
parent
8490cc470f
commit
76950b705e
@ -288,7 +288,7 @@ public class RuntimeServiceImpl implements RuntimeService {
|
||||
// 更新流程实例模型
|
||||
FlwExtInstance extInstance = new FlwExtInstance();
|
||||
extInstance.setId(instanceId);
|
||||
extInstance.setModelContent(FlowLongContext.toJson(processModel));
|
||||
extInstance.setModelContent(FlowLongContext.toJson(processModel.cleanParentNode()));
|
||||
return extInstanceDao.updateById(extInstance);
|
||||
}
|
||||
|
||||
@ -360,13 +360,10 @@ public class RuntimeServiceImpl implements RuntimeService {
|
||||
selectNode.setChildNode(nodeModel);
|
||||
}
|
||||
|
||||
// 清理父节点关系
|
||||
processModel.cleanParentNode(processModel.getNodeConfig());
|
||||
|
||||
// 更新最新模型
|
||||
FlwExtInstance temp = new FlwExtInstance();
|
||||
temp.setId(flwExtInstance.getId());
|
||||
temp.setModelContent(FlowLongContext.toJson(processModel));
|
||||
temp.setModelContent(FlowLongContext.toJson(processModel.cleanParentNode()));
|
||||
Assert.isFalse(extInstanceDao.updateById(temp), "Update FlwExtInstance Failed");
|
||||
|
||||
// 使缓存失效
|
||||
|
@ -361,11 +361,8 @@ public class ModelHelper {
|
||||
}
|
||||
});
|
||||
|
||||
// 清理父节点
|
||||
processModel.cleanParentNode(processModel.getNodeConfig());
|
||||
|
||||
// 更新模型
|
||||
consumer.accept(processModel);
|
||||
// 清理父节点,更新模型
|
||||
consumer.accept(processModel.cleanParentNode());
|
||||
|
||||
// 删除动态分配处理人员参数
|
||||
FlowDataTransfer.removeByKey(FlowConstants.processDynamicAssignee);
|
||||
|
@ -97,12 +97,19 @@ public class ProcessModel implements Serializable {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 清理父节点关系
|
||||
*/
|
||||
public ProcessModel cleanParentNode() {
|
||||
return this.cleanParentNode(this.nodeConfig);
|
||||
}
|
||||
|
||||
/**
|
||||
* 清理父节点关系
|
||||
*
|
||||
* @param rootNode 根节点
|
||||
*/
|
||||
public void cleanParentNode(NodeModel rootNode) {
|
||||
public ProcessModel cleanParentNode(NodeModel rootNode) {
|
||||
rootNode.setParentNode(null);
|
||||
|
||||
// 清理条件节点
|
||||
@ -124,6 +131,7 @@ public class ProcessModel implements Serializable {
|
||||
if (null != childNode) {
|
||||
this.cleanParentNode(childNode);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -66,8 +66,7 @@ public class TestModel extends MysqlTest {
|
||||
String jsonContent = StreamUtils.readBytes(StreamUtils.getResourceAsStream(jsonFile));
|
||||
ProcessModel processModel = FlowLongContext.fromJson(jsonContent, ProcessModel.class);
|
||||
Assertions.assertEquals(processModel.getName(), modelName);
|
||||
processModel.cleanParentNode(processModel.getNodeConfig());
|
||||
System.err.println(FlowLongContext.toJson(processModel));
|
||||
System.err.println(FlowLongContext.toJson(processModel.cleanParentNode()));
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
x
Reference in New Issue
Block a user