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

处理逻辑发布器

上级 b2a26b08
......@@ -14,6 +14,7 @@ import net.ibizsys.model.dataentity.der.*;
import net.ibizsys.model.dataentity.ds.IPSDEDataQueryCodeCond;
import net.ibizsys.model.dataentity.ds.IPSDEDataSetGroupParam;
import net.ibizsys.model.dataentity.ds.PSDEDataSetGroupParamImpl;
import net.ibizsys.model.dataentity.logic.IPSDELogic;
import org.springframework.util.Assert;
import org.springframework.util.ObjectUtils;
import org.springframework.util.StringUtils;
......@@ -110,6 +111,15 @@ public class EntityModel extends BaseModel {
return this;
}
private List<LogicModel> logics;
public EntityModel addLogic(LogicModel logicModel) {
if (fields == null)
fields = new ArrayList<>();
logics.add(logicModel);
return this;
}
public boolean isHasReferences() {
return !ObjectUtils.isEmpty(references);
}
......@@ -743,6 +753,11 @@ public class EntityModel extends BaseModel {
this.addField(fieldModel);
}
//处理逻辑
for (IPSDELogic logic : dataEntity.getAllPSDELogics()) {
LogicModel logicModel = new LogicModel(this, logic);
this.addLogic(logicModel);
}
if (dataEntity.getAllPSDEDataQueries() != null) {
dataEntity.getAllPSDEDataQueries().forEach(dataQuery -> {
......
package cn.ibizlab.codegen.model;
import net.ibizsys.model.dataentity.logic.IPSDELogic;
import net.ibizsys.model.dataentity.service.IPSDEServiceAPIMethod;
public class LogicModel extends BaseModel {
private EntityModel entity;
public LogicModel(EntityModel entityModel, IPSDELogic iPSDELogic) {
this.opt = iPSDELogic;
this.entity = entityModel;
this.setCodeName(iPSDELogic.getCodeName());
this.setName(iPSDELogic.getName());
this.setId(String.format("%1$s-%2$s", entity.getCodeName(), iPSDELogic.getCodeName()));
}
public IPSDELogic getPSDELogic() {
return (IPSDELogic) opt;
}
}
......@@ -173,6 +173,13 @@ public class ModelStorage {
rt.addOption(opt);
});
}
else if (type.equals(TemplateFileType.entityLogic)) {
getSystemModel().getEntities().forEach(item -> item.getLogics().forEach(logicModel -> {
CliOption opt = newCliOption(TemplateFileType.entityLogic).baseData(item, item.getCodeName())
.set("entities", item.getCodeName());
rt.addOption(opt);
}));
}
else if (type.equals(TemplateFileType.workflow)) {
getSystemModel().getWorkflows().forEach(item -> {
......
......@@ -8,6 +8,7 @@ public enum TemplateFileType {
apiEntity(Constants.API_ENTITIES),
apiDto(Constants.API_DTOS),
entity(Constants.ENTITIES),
entityLogic(Constants.ENTITIY_LOGICS),
module(Constants.MODULES),
workflow(Constants.WORKFLOWS),
sysUtil(Constants.SYSUTILS),
......@@ -54,6 +55,7 @@ public enum TemplateFileType {
public static final String APPS = "apps";
public static final String DICTS = "dicts";
public static final String ENTITIES = "entities";
public static final String ENTITIY_LOGICS = "entityLogics";
public static final String WORKFLOWS = "workflows";
public static final String SYSUTILS = "syUtils";
public static final String CLIENTS = "clients";
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册