提交 b49a9f53 编写于 作者: chenxiang@lab.ibiz5.com's avatar chenxiang@lab.ibiz5.com

添加LogicNodeModel

上级 b4644091
...@@ -19,11 +19,9 @@ public class LogicModel extends BaseModel { ...@@ -19,11 +19,9 @@ public class LogicModel extends BaseModel {
private boolean hasStartWF = false; private boolean hasStartWF = false;
private List<String> ruleGlobalParams = new ArrayList<>(); private List<String> ruleGlobalParams = new ArrayList<>();
public List<String> getRuleGlobalParams() { private List<LogicNodeModel> logicNodeModels = new ArrayList<>();
return ruleGlobalParams;
}
public LogicModel(EntityModel entityModel, IPSDELogic iPSDELogic) { public LogicModel(EntityModel entityModel, IPSDELogic iPSDELogic) {
this.opt = iPSDELogic; this.opt = iPSDELogic;
this.entity = entityModel; this.entity = entityModel;
this.setCodeName(iPSDELogic.getCodeName()); this.setCodeName(iPSDELogic.getCodeName());
...@@ -48,6 +46,8 @@ public class LogicModel extends BaseModel { ...@@ -48,6 +46,8 @@ public class LogicModel extends BaseModel {
if (!CollectionUtils.isEmpty(iPSDELogic.getPSDELogicNodes())) { if (!CollectionUtils.isEmpty(iPSDELogic.getPSDELogicNodes())) {
Map<String, String> map = new HashMap<>(); Map<String, String> map = new HashMap<>();
for (IPSDELogicNode iPSDELogicNode : iPSDELogic.getPSDELogicNodes()) { for (IPSDELogicNode iPSDELogicNode : iPSDELogic.getPSDELogicNodes()) {
LogicNodeModel logicNodeModel = new LogicNodeModel(this,iPSDELogicNode);
logicNodeModels.add(logicNodeModel);
if (iPSDELogicNode.getLogicNodeType().equals("STARTWF")) { if (iPSDELogicNode.getLogicNodeType().equals("STARTWF")) {
hasStartWF = true; hasStartWF = true;
} }
...@@ -60,7 +60,7 @@ public class LogicModel extends BaseModel { ...@@ -60,7 +60,7 @@ public class LogicModel extends BaseModel {
dstPSDataEntity.getPSSystemModule().getCodeName().toLowerCase(), dstPSDataEntity.getPSSystemModule().getCodeName().toLowerCase(),
dstPSDataEntity.getCodeName() dstPSDataEntity.getCodeName()
); );
ruleGlobalParams.add(String.format("global %s %s;", strDataType, String.format("%sservice;",dstPSDataEntity.getCodeName().toLowerCase()))); ruleGlobalParams.add(String.format("global %s %s;", strDataType, String.format("%sservice",dstPSDataEntity.getCodeName().toLowerCase())));
map.put(dstPSDataEntity.getName(), dstPSDataEntity.getName()); map.put(dstPSDataEntity.getName(), dstPSDataEntity.getName());
} }
} catch (Exception e) { } catch (Exception e) {
...@@ -78,7 +78,7 @@ public class LogicModel extends BaseModel { ...@@ -78,7 +78,7 @@ public class LogicModel extends BaseModel {
entityModel.getDataEntity().getPSSystemModule().getCodeName().toLowerCase(), entityModel.getDataEntity().getPSSystemModule().getCodeName().toLowerCase(),
entityModel.getDataEntity().getCodeName() entityModel.getDataEntity().getCodeName()
); );
ruleGlobalParams.add(String.format("global %s %s;", strDataType, String.format("iBzSys%sDefaultService;",entityModel.getCodeName()))); ruleGlobalParams.add(String.format("global %s %s;", strDataType, String.format("iBzSys%sDefaultService",entityModel.getCodeName())));
} }
ruleGlobalParams.add(String.format("global %s %s;", "cn.ibizlab.util.security.AuthenticationUser", "curuser")); ruleGlobalParams.add(String.format("global %s %s;", "cn.ibizlab.util.security.AuthenticationUser", "curuser"));
} }
...@@ -87,4 +87,11 @@ public class LogicModel extends BaseModel { ...@@ -87,4 +87,11 @@ public class LogicModel extends BaseModel {
return (IPSDELogic) opt; return (IPSDELogic) opt;
} }
public List<String> getRuleGlobalParams() {
return ruleGlobalParams;
}
public List<LogicNodeModel> getLogicNodeModels() {
return logicNodeModels;
}
} }
package cn.ibizlab.codegen.model;
import net.ibizsys.model.dataentity.logic.IPSDELogicNode;
import java.util.ArrayList;
import java.util.List;
public class LogicNodeModel extends BaseModel {
private LogicModel logicModel;
private List<String> ruleGlobalParams = new ArrayList<>();
public LogicNodeModel(LogicModel logicModel, IPSDELogicNode iPSDELogicNode) {
this.opt = iPSDELogicNode;
this.logicModel = logicModel;
this.setCodeName(iPSDELogicNode.getCodeName());
this.setName(iPSDELogicNode.getName());
this.setId(String.format("%1$s-%2$s", logicModel.getCodeName(), iPSDELogicNode.getCodeName()));
}
public String getLogicNodeType(){
return this.getPSDELogicNode().getLogicNodeType();
}
public LogicModel getLogicModel() {
return logicModel;
}
public IPSDELogicNode getPSDELogicNode() {
return (IPSDELogicNode) opt;
}
}
{{#if (eq deLogicNode.dstPSDEAction.codeName 'Get')}} {{#if (eq logicNodeModel.pSDELogicNode.dstPSDEAction.codeName 'Get')}}
cn.ibizlab.util.helper.CachedBeanCopier.copy({{lowerCase deLogicNode.dstPSDataEntity.codeName}}service.get({{lowerCase deLogicNode.dstPSDELogicParam.codeName}}.get{{deLogicNode.dstPSDataEntity.keyPSDEField.codeName}}()),{{lowerCase deLogicNode.dstPSDELogicParam.codeName}}); cn.ibizlab.util.helper.CachedBeanCopier.copy({{lowerCase logicNodeModel.pSDELogicNode.dstPSDataEntity.codeName}}service.get({{lowerCase logicNodeModel.pSDELogicNode.dstPSDELogicParam.codeName}}.get{{logicNodeModel.pSDELogicNode.dstPSDataEntity.keyPSDEField.codeName}}()),{{lowerCase logicNodeModel.pSDELogicNode.dstPSDELogicParam.codeName}});
{{else}} {{else}}
{{#if (eq deLogicNode.dstPSDEAction.codeName 'Remove')}} {{#if (eq logicNodeModel.pSDELogicNode.dstPSDEAction.codeName 'Remove')}}
{{lowerCase deLogicNode.dstPSDataEntity.codeName}}service.remove({{lowerCase deLogicNode.dstPSDELogicParam.codeName}}.get{{deLogicNode.dstPSDataEntity.keyPSDEField.codeName}}()); {{lowerCase logicNodeModel.pSDELogicNode.dstPSDataEntity.codeName}}service.remove({{lowerCase logicNodeModel.pSDELogicNode.dstPSDELogicParam.codeName}}.get{{logicNodeModel.pSDELogicNode.dstPSDataEntity.keyPSDEField.codeName}}());
{{else}} {{else}}
{{lowerCase deLogicNode.dstPSDataEntity.codeName}}service.{{camelCase deLogicNode.dstPSDEAction.codeName}}({{lowerCase deLogicNode.dstPSDELogicParam.codeName}}); {{lowerCase logicNodeModel.pSDELogicNode.dstPSDataEntity.codeName}}service.{{camelCase logicNodeModel.pSDELogicNode.dstPSDEAction.codeName}}({{lowerCase logicNodeModel.pSDELogicNode.dstPSDELogicParam.codeName}});
{{/if}} {{/if}}
{{/if}} {{/if}}
{{#each deLogicNode.pSDELogicNodeParams as |nodeParam|}} {{#each logicNodeModel.pSDELogicNode.pSDELogicNodeParams as |nodeParam|}}
{{#if (eq nodeParam.srcValueType "SRCVALUE")}}{{lowerCase nodeParam.dstPSDELogicParam.codeName}}.set("{{lowerCase nodeParam.dstFieldName}}","{{nodeParam.srcValue}}");{{/if}} {{#if (eq nodeParam.srcValueType "SRCVALUE")}}{{lowerCase nodeParam.dstPSDELogicParam.codeName}}.set("{{lowerCase nodeParam.dstFieldName}}","{{nodeParam.srcValue}}");{{/if}}
{{#if (eq nodeParam.srcValueType "SRCDLPARAM")}}{{lowerCase nodeParam.dstPSDELogicParam.codeName}}.set("{{lowerCase nodeParam.dstFieldName}}",{{lowerCase nodeParam.srcPSDELogicParam.codeName}}.get("{{lowerCase nodeParam.srcFieldName}}"));{{/if}} {{#if (eq nodeParam.srcValueType "SRCDLPARAM")}}{{lowerCase nodeParam.dstPSDELogicParam.codeName}}.set("{{lowerCase nodeParam.dstFieldName}}",{{lowerCase nodeParam.srcPSDELogicParam.codeName}}.get("{{lowerCase nodeParam.srcFieldName}}"));{{/if}}
{{#if (eq nodeParam.srcValueType "CURTIME")}}{{lowerCase nodeParam.dstPSDELogicParam.codeName}}.set("{{lowerCase nodeParam.dstFieldName}}",(new java.sql.Timestamp(new java.util.Date().getTime()))));{{/if}} {{#if (eq nodeParam.srcValueType "CURTIME")}}{{lowerCase nodeParam.dstPSDELogicParam.codeName}}.set("{{lowerCase nodeParam.dstFieldName}}",(new java.sql.Timestamp(new java.util.Date().getTime()))));{{/if}}
......
...@@ -9,18 +9,18 @@ import cn.ibizlab.util.errors.BadRequestAlertException; ...@@ -9,18 +9,18 @@ import cn.ibizlab.util.errors.BadRequestAlertException;
{{ruleGlobalParam}} {{ruleGlobalParam}}
{{/each}} {{/each}}
{{#each entityLogic.pSDELogicNodes as |deLogicNode|}} {{#each entityLogic.logicNodeModels as |logicNodeModel|}}
//逻辑处理节点[{{deLogicNode.name}}] //逻辑处理节点[{{logicNodeModel.name}}]
rule "{{lowerCase deLogicNode.codeName}}" rule "{{lowerCase logicNodeModel.codeName}}"
ruleflow-group "{{lowerCase deLogicNode.codeName}}" ruleflow-group "{{lowerCase logicNodeModel.codeName}}"
when when
then then
{{#eq deLogicNode.logicNodeType "PREPAREPARAM"}}{{> @macro/logic/drl/PrepareParam.hbs deLogicNode=deLogicNode}}{{/eq}} {{#eq logicNodeModel.logicNodeType "PREPAREPARAM"}}{{> @macro/logic/drl/PrepareParam.hbs logicNodeModel=logicNodeModel}}{{/eq}}
{{#eq deLogicNode.logicNodeType "DEACTION"}}{{> @macro/logic/drl/DEAction.hbs deLogicNode=deLogicNode}}{{/eq}} {{#eq logicNodeModel.logicNodeType "DEACTION"}}{{> @macro/logic/drl/DEAction.hbs logicNodeModel=logicNodeModel}}{{/eq}}
{{#eq deLogicNode.logicNodeType "RAWSQLCALL"}}{{> @macro/logic/drl/RawSQLCall.hbs deLogicNode=deLogicNode}}{{/eq}} {{#eq logicNodeModel.logicNodeType "RAWSQLCALL"}}{{> @macro/logic/drl/RawSQLCall.hbs logicNodeModel=logicNodeModel}}{{/eq}}
{{#eq deLogicNode.logicNodeType "RAWSQLANDLOOPCALL"}}{{> @macro/logic/drl/RawSQLAndLoopCall.hbs deLogicNode=deLogicNode}}{{/eq}} {{#eq logicNodeModel.logicNodeType "RAWSQLANDLOOPCALL"}}{{> @macro/logic/drl/RawSQLAndLoopCall.hbs logicNodeModel=logicNodeModel}}{{/eq}}
{{#eq deLogicNode.logicNodeType "STARTWF"}}{{> @macro/logic/drl/StartWF.hbs deLogicNode=deLogicNode}}{{/eq}} {{#eq logicNodeModel.logicNodeType "STARTWF"}}{{> @macro/logic/drl/StartWF.hbs logicNodeModel=logicNodeModel}}{{/eq}}
{{#each entityLogic.pSDELogicParams as |logicParam|}} {{#each entityLogic.pSDELogicParams as |logicParam|}}
update({{lowerCase logicParam.codeName}});//更新fact中变量值 update({{lowerCase logicParam.codeName}});//更新fact中变量值
{{/each}} {{/each}}
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册