提交 2804d217 编写于 作者: hebao@lab.ibiz5.com's avatar hebao@lab.ibiz5.com

同步规则构建返回符合规则条件的数据集合

上级 ee9c1607
package cn.ibizlab.core.extensions.service; package cn.ibizlab.core.extensions.service;
import cn.ibizlab.core.analysis.domain.DADimension;
import cn.ibizlab.core.dict.extensions.service.DictDstService; import cn.ibizlab.core.dict.extensions.service.DictDstService;
import cn.ibizlab.core.extensions.domain.BaseRequest; import cn.ibizlab.core.extensions.domain.BaseRequest;
import cn.ibizlab.core.extensions.util.ExpiryMap; import cn.ibizlab.core.extensions.util.ExpiryMap;
...@@ -13,7 +12,6 @@ import cn.ibizlab.core.rule.service.IExecResultService; ...@@ -13,7 +12,6 @@ import cn.ibizlab.core.rule.service.IExecResultService;
import cn.ibizlab.util.dict.CodeList; import cn.ibizlab.util.dict.CodeList;
import cn.ibizlab.util.helper.CachedBeanCopier; import cn.ibizlab.util.helper.CachedBeanCopier;
import cn.ibizlab.util.helper.DataObject; import cn.ibizlab.util.helper.DataObject;
import cn.ibizlab.util.helper.RuleUtils;
import com.baomidou.mybatisplus.core.toolkit.IdWorker; import com.baomidou.mybatisplus.core.toolkit.IdWorker;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.kie.api.KieBase; import org.kie.api.KieBase;
...@@ -76,12 +74,9 @@ public class BaseEntityServiceImpl implements BaseEntityService ...@@ -76,12 +74,9 @@ public class BaseEntityServiceImpl implements BaseEntityService
result.setName(RU_EXECRESULTNAME); result.setName(RU_EXECRESULTNAME);
result.setRetValue(RETVALUE); result.setRetValue(RETVALUE);
List<ExecResult> saveResults; List<ExecResult> saveResults = null;
if(param.containsKey(Tag_SaveResults)){ if(param.containsKey(Tag_SaveResults)){
saveResults = (List<ExecResult>) param.get(Tag_SaveResults); saveResults = (List<ExecResult>) param.get(Tag_SaveResults);
}else{
saveResults = new ArrayList<>();
param.set(Tag_SaveResults, saveResults);
} }
if(KEYVALUEFIELD==null) if(KEYVALUEFIELD==null)
...@@ -235,7 +230,9 @@ public class BaseEntityServiceImpl implements BaseEntityService ...@@ -235,7 +230,9 @@ public class BaseEntityServiceImpl implements BaseEntityService
result2.setId(result2.getDefaultKey(true).toString()); result2.setId(result2.getDefaultKey(true).toString());
result2.setRuleId(RULECODE); result2.setRuleId(RULECODE);
saveResults.add(result2); if(saveResults != null) {
saveResults.add(result2);
}
if (bSyncRun){ if (bSyncRun){
ruExecResultService.save(result2); ruExecResultService.save(result2);
}else { }else {
...@@ -520,18 +517,12 @@ public class BaseEntityServiceImpl implements BaseEntityService ...@@ -520,18 +517,12 @@ public class BaseEntityServiceImpl implements BaseEntityService
if(!StringUtils.isEmpty(msg.getResultTopic())){ if(!StringUtils.isEmpty(msg.getResultTopic())){
modelObj.set("resultTopic", msg.getResultTopic()); modelObj.set("resultTopic", msg.getResultTopic());
} }
processRule(modelObj, modelObj.getRowKey(),strResId);
//设置符合规则条件的数据集合 //设置符合规则条件的数据集合
Object saveResults = modelObj.get(Tag_SaveResults); if(msg.getBatch().startsWith(Tag_Batch_SyncRun)){
if(saveResults != null && saveResults instanceof List){ modelObj.set(Tag_SaveResults, msg.getResults());
List<ExecResult> results = msg.getResults();
if(results == null){
msg.setResults((List<ExecResult>)saveResults);
}else{
results.addAll((List<ExecResult>)saveResults);
}
} }
processRule(modelObj, modelObj.getRowKey(),strResId);
} }
catch (Exception e) catch (Exception e)
{ {
......
...@@ -161,18 +161,9 @@ public class RuleEngineExService extends RuleEngineServiceImpl { ...@@ -161,18 +161,9 @@ public class RuleEngineExService extends RuleEngineServiceImpl {
execlog.setSystemId(msg.getSystemid()); execlog.setSystemId(msg.getSystemid());
ruExecLogService.create(execlog); ruExecLogService.create(execlog);
msg.setDatas(liteDataService.getModelObjs(msg.getModelId(),msg.getFillpropertys(),lists)); msg.setDatas(liteDataService.getModelObjs(msg.getModelId(),msg.getFillpropertys(),lists));
msg.setResults(new ArrayList<ExecResult>());
baseEntityService.processAll(msg); baseEntityService.processAll(msg);
List<String> ruleIdsList = msg.getRuleIds(); et.setResult(JSON.toJSONString(msg.getResults()));
ArrayList<String> dataKeysList = new ArrayList<>();
for (EntityObj entityObj : lists) {
for (Map.Entry<String, Object> entries : entityObj.entrySet()){
dataKeysList.add((String) entries.getValue());
}
}
QueryWrapper<ExecResult> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("systemid",et.getSystemId()).in("ruleid",ruleIdsList).in("keyvaluefield",dataKeysList);
List<ExecResult> execResults = execResultExService.list(queryWrapper);
et.setResult(JSON.toJSONString(execResults));
et.setDatakeys(dataKeys); et.setDatakeys(dataKeys);
et.setRuleids(ruleIds); et.setRuleids(ruleIds);
return et; return et;
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册