|
@@ -1,10 +1,12 @@
|
|
|
package org.jeecg.modules.medical.ruleengine;
|
|
package org.jeecg.modules.medical.ruleengine;
|
|
|
|
|
|
|
|
|
|
+import cn.hutool.core.bean.BeanUtil;
|
|
|
import cn.hutool.core.collection.CollectionUtil;
|
|
import cn.hutool.core.collection.CollectionUtil;
|
|
|
import com.alibaba.fastjson.JSON;
|
|
import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
|
+import net.sf.json.JSONArray;
|
|
|
import org.apache.commons.lang.StringUtils;
|
|
import org.apache.commons.lang.StringUtils;
|
|
|
import org.jeecg.common.api.vo.Result;
|
|
import org.jeecg.common.api.vo.Result;
|
|
|
import org.jeecg.common.constant.CommonConstant;
|
|
import org.jeecg.common.constant.CommonConstant;
|
|
@@ -33,6 +35,7 @@ import org.jeecg.modules.medical.entity.MidIncidentAuditDiagnose;
|
|
|
import org.jeecg.modules.medical.entity.MidIncidentVisitDetailLog;
|
|
import org.jeecg.modules.medical.entity.MidIncidentVisitDetailLog;
|
|
|
import org.jeecg.modules.medical.entity.MidIncidentVisitLog;
|
|
import org.jeecg.modules.medical.entity.MidIncidentVisitLog;
|
|
|
import org.jeecg.modules.medical.entity.MidIncidentWarningVO;
|
|
import org.jeecg.modules.medical.entity.MidIncidentWarningVO;
|
|
|
|
|
+import org.jeecg.modules.medical.entity.MidResult;
|
|
|
import org.jeecg.modules.medical.entity.RuleAttr;
|
|
import org.jeecg.modules.medical.entity.RuleAttr;
|
|
|
import org.jeecg.modules.medical.entity.RuleFactorRela;
|
|
import org.jeecg.modules.medical.entity.RuleFactorRela;
|
|
|
import org.jeecg.modules.medical.entity.TreatmentItems;
|
|
import org.jeecg.modules.medical.entity.TreatmentItems;
|
|
@@ -58,15 +61,17 @@ import org.jeecg.modules.medical.service.IMidIncidentVisitLogService;
|
|
|
import org.jeecg.modules.medical.service.IRuleAttrService;
|
|
import org.jeecg.modules.medical.service.IRuleAttrService;
|
|
|
import org.jeecg.modules.medical.service.IRuleFactorRelaService;
|
|
import org.jeecg.modules.medical.service.IRuleFactorRelaService;
|
|
|
import org.jeecg.modules.medical.service.ITreatmentItemsService;
|
|
import org.jeecg.modules.medical.service.ITreatmentItemsService;
|
|
|
|
|
+import org.jeecg.modules.medical.threadpool.MidRunRuleEngineCallable;
|
|
|
import org.jeecg.modules.message.websocket.WebSocket;
|
|
import org.jeecg.modules.message.websocket.WebSocket;
|
|
|
import org.jeecg.modules.system.service.ISysDictService;
|
|
import org.jeecg.modules.system.service.ISysDictService;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
|
import org.springframework.data.redis.core.RedisTemplate;
|
|
import org.springframework.data.redis.core.RedisTemplate;
|
|
|
-import org.springframework.scheduling.annotation.Async;
|
|
|
|
|
|
|
+import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
|
|
|
import org.springframework.stereotype.Component;
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
|
|
|
import javax.annotation.PostConstruct;
|
|
import javax.annotation.PostConstruct;
|
|
|
|
|
+import javax.annotation.Resource;
|
|
|
import java.math.BigDecimal;
|
|
import java.math.BigDecimal;
|
|
|
import java.text.ParseException;
|
|
import java.text.ParseException;
|
|
|
import java.util.ArrayList;
|
|
import java.util.ArrayList;
|
|
@@ -77,6 +82,7 @@ import java.util.HashSet;
|
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
import java.util.Map;
|
|
|
import java.util.Set;
|
|
import java.util.Set;
|
|
|
|
|
+import java.util.concurrent.Future;
|
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
@Slf4j
|
|
@Slf4j
|
|
@@ -137,6 +143,8 @@ public class RuleEngine {
|
|
|
ISysDictService sysDictService;
|
|
ISysDictService sysDictService;
|
|
|
@Autowired
|
|
@Autowired
|
|
|
IAfterIncidentDetailLogService afterIncidentDetailLogService;
|
|
IAfterIncidentDetailLogService afterIncidentDetailLogService;
|
|
|
|
|
+ @Resource(name = "commonTaskAsyncPool")
|
|
|
|
|
+ ThreadPoolTaskExecutor threadPoolTaskExecutor;
|
|
|
|
|
|
|
|
@Value("${cache.auto:false}")
|
|
@Value("${cache.auto:false}")
|
|
|
private Boolean cacheAutoInit;
|
|
private Boolean cacheAutoInit;
|
|
@@ -585,25 +593,28 @@ public class RuleEngine {
|
|
|
return Result.ok();
|
|
return Result.ok();
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- public Result dealMidInterfaceEngin(String intefName, MidIncidentWarningVO midIncidentWarningVO, String ipStr) {
|
|
|
|
|
- JSONObject sendJson = new JSONObject();
|
|
|
|
|
|
|
+ public MidResult dealMidInterfaceEngin(MidIncidentWarningVO midIncidentWarningVO) {
|
|
|
|
|
+ MidResult midResult = new MidResult();
|
|
|
try {
|
|
try {
|
|
|
- List<RuleAttr> ruleAttrList = interfRuleAttrList.get(intefName);
|
|
|
|
|
- if (null == ruleAttrList) {
|
|
|
|
|
- return Result.error("接口:" + intefName + " 未配置 对应的规则属性");
|
|
|
|
|
- }
|
|
|
|
|
dictUtil.transferMidIncidentWarningVO(midIncidentWarningVO);
|
|
dictUtil.transferMidIncidentWarningVO(midIncidentWarningVO);
|
|
|
String jsonStr = JSON.toJSONString(midIncidentWarningVO);
|
|
String jsonStr = JSON.toJSONString(midIncidentWarningVO);
|
|
|
log.info("事中提醒接收报文:{}", jsonStr);
|
|
log.info("事中提醒接收报文:{}", jsonStr);
|
|
|
- JSONObject paramMap = JSON.parseObject(jsonStr);
|
|
|
|
|
- List<Map<String, Object>> itemList = interfItemListPlugin.findProIntersection(paramMap, ruleAttrList);
|
|
|
|
|
MidIncidentAudit midIncidentAudit = insertMidWarning(midIncidentWarningVO);
|
|
MidIncidentAudit midIncidentAudit = insertMidWarning(midIncidentWarningVO);
|
|
|
insertLog(midIncidentWarningVO);
|
|
insertLog(midIncidentWarningVO);
|
|
|
- midIncidentAudit.setInterfName(intefName);
|
|
|
|
|
//callScenario 1=事前 2=事后 3=事前/事后 4=事中 5=事后/事中
|
|
//callScenario 1=事前 2=事后 3=事前/事后 4=事中 5=事后/事中
|
|
|
List<String> callScenarioList = Arrays.asList("4", "5");
|
|
List<String> callScenarioList = Arrays.asList("4", "5");
|
|
|
boolean sendFlag = false;
|
|
boolean sendFlag = false;
|
|
|
- for (Map<String, Object> itemMap : itemList) {
|
|
|
|
|
|
|
+ MidRunRuleEngineCallable midRunRuleEngineCallable = null;
|
|
|
|
|
+
|
|
|
|
|
+ List<Map<String,Object>> detailMapList = new ArrayList<>();
|
|
|
|
|
+ for(AdviceDetailsVO adviceDetailsVO : midIncidentWarningVO.getAdvice_details()){
|
|
|
|
|
+ detailMapList.add(BeanUtil.beanToMap(adviceDetailsVO));
|
|
|
|
|
+ }
|
|
|
|
|
+ List<Future> futureList = new ArrayList();
|
|
|
|
|
+ List<String> medicalDiagnoseStrList = midIncidentWarningVO.getDiagnoses().stream().map(DiagnosesVO::getMedical_diagnose_code).collect(Collectors.toList());
|
|
|
|
|
+
|
|
|
|
|
+ for (Map<String, Object> itemMap : detailMapList) {
|
|
|
|
|
+ itemMap.put(Constant.MEDICAL_DIAGNOSE_CODE_KEY, medicalDiagnoseStrList);
|
|
|
List<MedicalInsRuleProject> medicalInsRuleProjectList = medicalInsRuleProjectService.getRuleProjectByMedicalProjectCode(itemMap.get(Constant.MEDICAL_PROJECT_CODE_KEY).toString(), callScenarioList);
|
|
List<MedicalInsRuleProject> medicalInsRuleProjectList = medicalInsRuleProjectService.getRuleProjectByMedicalProjectCode(itemMap.get(Constant.MEDICAL_PROJECT_CODE_KEY).toString(), callScenarioList);
|
|
|
if (CollectionUtil.isEmpty(medicalInsRuleProjectList)) {
|
|
if (CollectionUtil.isEmpty(medicalInsRuleProjectList)) {
|
|
|
log.error("项目编码未匹配到对应的医保规则:{} 在规则库数据库中未检索到数据", itemMap.get(Constant.MEDICAL_PROJECT_CODE_KEY));
|
|
log.error("项目编码未匹配到对应的医保规则:{} 在规则库数据库中未检索到数据", itemMap.get(Constant.MEDICAL_PROJECT_CODE_KEY));
|
|
@@ -611,49 +622,59 @@ public class RuleEngine {
|
|
|
Set<Integer> medicalInsRuleInfoIdList = medicalInsRuleProjectList.stream().map(MedicalInsRuleProject::getMedicalInsRuleInfoId).collect(Collectors.toSet());
|
|
Set<Integer> medicalInsRuleInfoIdList = medicalInsRuleProjectList.stream().map(MedicalInsRuleProject::getMedicalInsRuleInfoId).collect(Collectors.toSet());
|
|
|
log.info("项目编码:{} 数据库检索到匹配规则ID列表:{}", itemMap.get(Constant.MEDICAL_PROJECT_CODE_KEY), medicalInsRuleInfoIdList);
|
|
log.info("项目编码:{} 数据库检索到匹配规则ID列表:{}", itemMap.get(Constant.MEDICAL_PROJECT_CODE_KEY), medicalInsRuleInfoIdList);
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
- Object diagnose = itemMap.get(Constant.MEDICAL_DIAGNOSE_CODE_KEY);
|
|
|
|
|
- if (null != diagnose) {
|
|
|
|
|
- List<String> diagnoseList = (List<String>) diagnose;
|
|
|
|
|
|
|
+ if (CollectionUtil.isNotEmpty(medicalDiagnoseStrList)) {
|
|
|
//获取诊断编码配置的规则ID,加入需要执行的规则
|
|
//获取诊断编码配置的规则ID,加入需要执行的规则
|
|
|
- getAndSetDiagRule(diagnoseList, medicalInsRuleProjectList);
|
|
|
|
|
-
|
|
|
|
|
|
|
+ getAndSetDiagRule(medicalDiagnoseStrList, medicalInsRuleProjectList);
|
|
|
}
|
|
}
|
|
|
if (CollectionUtil.isEmpty(medicalInsRuleProjectList)) {
|
|
if (CollectionUtil.isEmpty(medicalInsRuleProjectList)) {
|
|
|
log.error("项目编码未匹配到对应的医保规则:{} 在规则库数据库中未检索到数据,退出规则执行", itemMap.get(Constant.MEDICAL_PROJECT_CODE_KEY));
|
|
log.error("项目编码未匹配到对应的医保规则:{} 在规则库数据库中未检索到数据,退出规则执行", itemMap.get(Constant.MEDICAL_PROJECT_CODE_KEY));
|
|
|
continue;
|
|
continue;
|
|
|
}
|
|
}
|
|
|
Map<Integer, List<MedicalInsRuleProject>> ruleAndProjectMap = medicalInsRuleProjectList.stream().collect(Collectors.groupingBy(MedicalInsRuleProject::getMedicalInsRuleInfoId));
|
|
Map<Integer, List<MedicalInsRuleProject>> ruleAndProjectMap = medicalInsRuleProjectList.stream().collect(Collectors.groupingBy(MedicalInsRuleProject::getMedicalInsRuleInfoId));
|
|
|
- paramMap.put(SystemEventAttrConstant.ADVICE_DETAILS_LIST_KEY, itemList);
|
|
|
|
|
|
|
+ itemMap.put(SystemEventAttrConstant.ADVICE_DETAILS_LIST_KEY, detailMapList);
|
|
|
for (Integer medicalInsRuleInfoId : ruleAndProjectMap.keySet()) {
|
|
for (Integer medicalInsRuleInfoId : ruleAndProjectMap.keySet()) {
|
|
|
List<String> medicalInsCorrProjectCodeList = ruleAndProjectMap.get(medicalInsRuleInfoId).stream().map(MedicalInsRuleProject::getCorrelationProjectCode).collect(Collectors.toList());
|
|
List<String> medicalInsCorrProjectCodeList = ruleAndProjectMap.get(medicalInsRuleInfoId).stream().map(MedicalInsRuleProject::getCorrelationProjectCode).collect(Collectors.toList());
|
|
|
MedicalInsRuleProject medicalInsRuleProject = ruleAndProjectMap.get(medicalInsRuleInfoId).get(0);
|
|
MedicalInsRuleProject medicalInsRuleProject = ruleAndProjectMap.get(medicalInsRuleInfoId).get(0);
|
|
|
setProjectToLocalMap(itemMap, medicalInsRuleProject);
|
|
setProjectToLocalMap(itemMap, medicalInsRuleProject);
|
|
|
itemMap.put(SystemEventAttrConstant.MEDICAL_INS_CORRELATIONPROJECTCODELIST, medicalInsCorrProjectCodeList);
|
|
itemMap.put(SystemEventAttrConstant.MEDICAL_INS_CORRELATIONPROJECTCODELIST, medicalInsCorrProjectCodeList);
|
|
|
- setItemCodeListToItemMap(itemList, itemMap);
|
|
|
|
|
- boolean sendFlagTemp = false;
|
|
|
|
|
|
|
+ setItemCodeListToItemMap(detailMapList, itemMap);
|
|
|
|
|
+
|
|
|
try {
|
|
try {
|
|
|
- sendFlagTemp = runMidEngine(itemMap, medicalInsRuleInfoId, midIncidentAudit, itemList);
|
|
|
|
|
|
|
+ midRunRuleEngineCallable = new MidRunRuleEngineCallable(itemMap, medicalInsRuleInfoId, midIncidentAudit, detailMapList);
|
|
|
|
|
+ Future future = threadPoolTaskExecutor.submit(midRunRuleEngineCallable);
|
|
|
|
|
+ futureList.add(future);
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
log.error(e.getMessage(), e);
|
|
log.error(e.getMessage(), e);
|
|
|
}
|
|
}
|
|
|
- sendFlag = sendFlagTemp || sendFlag;
|
|
|
|
|
|
|
+
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
- sendJson.put("id", midIncidentAudit.getId());
|
|
|
|
|
- sendJson.put("violationFlag", sendFlag);
|
|
|
|
|
|
|
+ for (Future future : futureList) {
|
|
|
|
|
+ try {
|
|
|
|
|
+ boolean auditFlag = (boolean) future.get();
|
|
|
|
|
+ sendFlag = auditFlag || sendFlag;
|
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
|
+ log.error(e.getMessage(), e);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
if (!sendFlag) {
|
|
if (!sendFlag) {
|
|
|
log.error("无违规,事中审核无需提醒 门诊/住院号:{}", midIncidentWarningVO.getVisit_no());
|
|
log.error("无违规,事中审核无需提醒 门诊/住院号:{}", midIncidentWarningVO.getVisit_no());
|
|
|
|
|
+ } else {
|
|
|
|
|
+
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
log.error(e.getMessage(), e);
|
|
log.error(e.getMessage(), e);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- return Result.ok(sendJson);
|
|
|
|
|
|
|
+ return midResult;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
- public Result dealMidInterfaceEnginSocket(String intefName, MidIncidentWarningVO midIncidentWarningVO, String ipStr) {
|
|
|
|
|
|
|
+ public Result dealMidInterfaceEnginSocket(String intefName, MidIncidentWarningVO midIncidentWarningVO, String
|
|
|
|
|
+ ipStr) {
|
|
|
midIncidentWarningVOThreadLocal.set(midIncidentWarningVO);
|
|
midIncidentWarningVOThreadLocal.set(midIncidentWarningVO);
|
|
|
try {
|
|
try {
|
|
|
List<RuleAttr> ruleAttrList = interfRuleAttrList.get(intefName);
|
|
List<RuleAttr> ruleAttrList = interfRuleAttrList.get(intefName);
|
|
@@ -733,7 +754,8 @@ public class RuleEngine {
|
|
|
* @param afterwardsAudit
|
|
* @param afterwardsAudit
|
|
|
* @param afterIncidentDetailLog
|
|
* @param afterIncidentDetailLog
|
|
|
*/
|
|
*/
|
|
|
- public void dealAfterInterfaceEngin(AfterwardsAudit afterwardsAudit, AfterIncidentDetailLog afterIncidentDetailLog, List<Map<String, Object>> itemList) {
|
|
|
|
|
|
|
+ public void dealAfterInterfaceEngin(AfterwardsAudit afterwardsAudit, AfterIncidentDetailLog
|
|
|
|
|
+ afterIncidentDetailLog, List<Map<String, Object>> itemList) {
|
|
|
try {
|
|
try {
|
|
|
dictUtil.transferAfterIncidentWarning(afterIncidentDetailLog);
|
|
dictUtil.transferAfterIncidentWarning(afterIncidentDetailLog);
|
|
|
String jsonStr = JSON.toJSONString(afterIncidentDetailLog);
|
|
String jsonStr = JSON.toJSONString(afterIncidentDetailLog);
|
|
@@ -790,7 +812,8 @@ public class RuleEngine {
|
|
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- public void getAndSetDiagRule(List<String> diagnoseList, List<MedicalInsRuleProject> medicalInsRuleProjectList) {
|
|
|
|
|
|
|
+ public void getAndSetDiagRule
|
|
|
|
|
+ (List<String> diagnoseList, List<MedicalInsRuleProject> medicalInsRuleProjectList) {
|
|
|
if (CollectionUtil.isNotEmpty(diagRuleIdList)) {
|
|
if (CollectionUtil.isNotEmpty(diagRuleIdList)) {
|
|
|
List<MedicalInsRuleProjectDiagnose> projectDiagnoseList = medicalInsRuleProjectDiagnoseService.getRuleProjectByDiagCodeAndRuleId(diagRuleIdList, diagnoseList);
|
|
List<MedicalInsRuleProjectDiagnose> projectDiagnoseList = medicalInsRuleProjectDiagnoseService.getRuleProjectByDiagCodeAndRuleId(diagRuleIdList, diagnoseList);
|
|
|
if (CollectionUtil.isNotEmpty(projectDiagnoseList)) {
|
|
if (CollectionUtil.isNotEmpty(projectDiagnoseList)) {
|
|
@@ -943,7 +966,7 @@ public class RuleEngine {
|
|
|
midIncidentVisitDetailLog.setMedicalProjectName(adviceDetailsVO.getMedical_project_name());
|
|
midIncidentVisitDetailLog.setMedicalProjectName(adviceDetailsVO.getMedical_project_name());
|
|
|
midIncidentVisitDetailLog.setTakeFrequence(adviceDetailsVO.getTake_frequence());
|
|
midIncidentVisitDetailLog.setTakeFrequence(adviceDetailsVO.getTake_frequence());
|
|
|
midIncidentVisitDetailLog.setMedicalSpecification(adviceDetailsVO.getMedical_specification());
|
|
midIncidentVisitDetailLog.setMedicalSpecification(adviceDetailsVO.getMedical_specification());
|
|
|
- if(null != adviceDetailsVO.getPrice()) {
|
|
|
|
|
|
|
+ if (null != adviceDetailsVO.getPrice()) {
|
|
|
midIncidentVisitDetailLog.setPrice(new BigDecimal(adviceDetailsVO.getPrice()));
|
|
midIncidentVisitDetailLog.setPrice(new BigDecimal(adviceDetailsVO.getPrice()));
|
|
|
}
|
|
}
|
|
|
midIncidentVisitDetailLog.setRecipeNo(adviceDetailsVO.getRecipe_no());
|
|
midIncidentVisitDetailLog.setRecipeNo(adviceDetailsVO.getRecipe_no());
|
|
@@ -1039,7 +1062,7 @@ public class RuleEngine {
|
|
|
midIncidentAuditDiagnose.setMedDiagnoseDesc(diagnosesVO.getMedical_diagnose_name());
|
|
midIncidentAuditDiagnose.setMedDiagnoseDesc(diagnosesVO.getMedical_diagnose_name());
|
|
|
midIncidentAuditDiagnose.setCreateTime(date);
|
|
midIncidentAuditDiagnose.setCreateTime(date);
|
|
|
midIncidentAuditDiagnose.setOutpatientNumber(midIncidentWarningVO.getVisit_no());
|
|
midIncidentAuditDiagnose.setOutpatientNumber(midIncidentWarningVO.getVisit_no());
|
|
|
- midIncidentAuditDiagnose.setPrescriptionNumber(midIncidentWarningVO.getDoctor_advice_no());
|
|
|
|
|
|
|
+// midIncidentAuditDiagnose.setPrescriptionNumber(diagnosesVO.get);
|
|
|
midIncidentAuditDiagnoseList.add(midIncidentAuditDiagnose);
|
|
midIncidentAuditDiagnoseList.add(midIncidentAuditDiagnose);
|
|
|
}
|
|
}
|
|
|
midIncidentAuditDiagnoseService.saveBatch(midIncidentAuditDiagnoseList);
|
|
midIncidentAuditDiagnoseService.saveBatch(midIncidentAuditDiagnoseList);
|
|
@@ -1115,7 +1138,8 @@ public class RuleEngine {
|
|
|
*
|
|
*
|
|
|
* @param paramMap
|
|
* @param paramMap
|
|
|
*/
|
|
*/
|
|
|
- public boolean runAdvanceWaringEngine(Map<String, Object> paramMap, MedicalInsRuleInfo medicalInsRuleInfo, Object audit, List<Map<String, Object>> itemList) {
|
|
|
|
|
|
|
+ public boolean runAdvanceWaringEngine(Map<String, Object> paramMap, MedicalInsRuleInfo
|
|
|
|
|
+ medicalInsRuleInfo, Object audit, List<Map<String, Object>> itemList) {
|
|
|
if (null == medicalInsRuleInfo) {
|
|
if (null == medicalInsRuleInfo) {
|
|
|
log.error("未有对应的规则,接口数据:{}", paramMap);
|
|
log.error("未有对应的规则,接口数据:{}", paramMap);
|
|
|
return false;
|
|
return false;
|
|
@@ -1187,7 +1211,8 @@ public class RuleEngine {
|
|
|
*
|
|
*
|
|
|
* @param paramMap
|
|
* @param paramMap
|
|
|
*/
|
|
*/
|
|
|
- public boolean runAfterEngine(Map<String, Object> paramMap, Integer medicalRuleInsInfoId, AfterwardsAudit afterIncidentAudit, List<Map<String, Object>> itemList) throws Exception {
|
|
|
|
|
|
|
+ public boolean runAfterEngine(Map<String, Object> paramMap, Integer medicalRuleInsInfoId, AfterwardsAudit
|
|
|
|
|
+ afterIncidentAudit, List<Map<String, Object>> itemList) throws Exception {
|
|
|
if (null == medicalRuleInsInfoId) {
|
|
if (null == medicalRuleInsInfoId) {
|
|
|
log.error("未有对应的规则,接口数据:{}", paramMap);
|
|
log.error("未有对应的规则,接口数据:{}", paramMap);
|
|
|
return false;
|
|
return false;
|
|
@@ -1220,7 +1245,8 @@ public class RuleEngine {
|
|
|
* @param paramMap
|
|
* @param paramMap
|
|
|
*/
|
|
*/
|
|
|
// @Async("commonTaskAsyncPool")
|
|
// @Async("commonTaskAsyncPool")
|
|
|
- public boolean runMidEngine(Map<String, Object> paramMap, Integer medicalRuleInsInfoId, MidIncidentAudit midIncidentAudit, List<Map<String, Object>> itemList) throws Exception {
|
|
|
|
|
|
|
+ public boolean runMidEngine(Map<String, Object> paramMap, Integer medicalRuleInsInfoId, MidIncidentAudit
|
|
|
|
|
+ midIncidentAudit, List<Map<String, Object>> itemList) throws Exception {
|
|
|
boolean auditFlag = false;
|
|
boolean auditFlag = false;
|
|
|
if (null == medicalRuleInsInfoId) {
|
|
if (null == medicalRuleInsInfoId) {
|
|
|
log.error("未有对应的规则,接口数据:{}", paramMap);
|
|
log.error("未有对应的规则,接口数据:{}", paramMap);
|