diff --git a/src/main/java/com/supervision/police/service/impl/ModelServiceImpl.java b/src/main/java/com/supervision/police/service/impl/ModelServiceImpl.java index 4e25d85..97a7228 100644 --- a/src/main/java/com/supervision/police/service/impl/ModelServiceImpl.java +++ b/src/main/java/com/supervision/police/service/impl/ModelServiceImpl.java @@ -323,7 +323,7 @@ public class ModelServiceImpl implements ModelService { * @return 是否存在 */ private boolean graphIndexAnalysis(String casePersonName, String queryLang, String caseId, RuleCondition ruleCondition, ModelAtomicResult atomicResult) { - boolean exist = false; + boolean flag = false; Session session = driver.session(); //图谱 Map params = new HashMap<>(); @@ -336,7 +336,7 @@ public class ModelServiceImpl implements ModelService { run = session.run(queryLang, params); } catch (Exception e) { log.error("图数据库查询出现错误,查询语句{},参数{}", queryLang, JSONUtil.toJsonStr(params), e); - return exist; + return flag; } List res = Neo4jUtils.getResultDTOList(run); int count = 0; @@ -357,12 +357,12 @@ public class ModelServiceImpl implements ModelService { } } } - //如果关系判断要求“存在”,则判断count是否大于value - if (ruleCondition.getRelationalSymbol().equals("3") && StringUtils.isNotEmpty(ruleCondition.getOperator()) && StringUtils.isNotEmpty(ruleCondition.getValue()) && CalculationUtil.evaluateExpression(String.valueOf(count), ruleCondition.getOperator(), ruleCondition.getValue())) { - exist = true; + //如果关系判断要求“不存在”,则判断条数需要大于0,如果关系判断要求“存在”,则判断count是否大于value + if ((ruleCondition.getRelationalSymbol().equals("4") && count > 0) || ruleCondition.getRelationalSymbol().equals("3") && StringUtils.isNotEmpty(ruleCondition.getOperator()) && StringUtils.isNotEmpty(ruleCondition.getValue()) && CalculationUtil.evaluateExpression(String.valueOf(count), ruleCondition.getOperator(), ruleCondition.getValue())) { + flag = true; } modelAtomicResultService.saveOrUpdate(atomicResult); - return exist; + return flag; } /**