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

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

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