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 d3a71fc..f50af1e 100644 --- a/src/main/java/com/supervision/police/service/impl/ModelServiceImpl.java +++ b/src/main/java/com/supervision/police/service/impl/ModelServiceImpl.java @@ -255,12 +255,17 @@ public class ModelServiceImpl implements ModelService { operandUnitResultSet.add(relationSymbol == manualIndexAnalysis(ruleCondition.getAtomicIndexId(), caseId)); break; case OPERAND_TYPE_DB: - operandUnitResultSet.add(relationSymbol == dbIndexAnalysis(caseId, modelAtomicIndex,evidenceDirectories, result)); + operandUnitResultSet.add(relationSymbol == dbIndexAnalysis(caseId, modelAtomicIndex, evidenceDirectories, result)); break; case OPERAND_TYPE_GRAPH: operandUnitResultSet.add(relationSymbol == graphIndexAnalysis(casePerson.getName(), modelAtomicIndex.getQueryLang(), analyseCaseDTO.getCaseId(), ruleCondition, result)); break; case OPERAND_TYPE_STRUCTURE: + if (ruleCondition.getOperandUnitList().isEmpty()) { + log.info("结构化查询条件为空,直接设置为不存在并更新原子指标结果"); + result.setAtomicResult(JudgeResultEnum.NOT_EXIST.getCode()); + modelAtomicResultService.saveOrUpdate(result); + } ruleCondition.getOperandUnitList().forEach(operandUnit -> operandUnitResultSet.add(structureIndexAnalysis(operandUnit, ruleCondition.getAtomicIndexId(), atomicIndices, notePrompts, evidenceDirectories, caseEvidences, result))); break; default: @@ -328,13 +333,14 @@ public class ModelServiceImpl implements ModelService { /** * 数据库查询指标分析 - * @param caseId 案件ID - * @param modelAtomicIndex 原子指标 + * + * @param caseId 案件ID + * @param modelAtomicIndex 原子指标 * @param evidenceDirectories 证据目录 - * @param atomicResult 原子指标结果 + * @param atomicResult 原子指标结果 * @return */ - private boolean dbIndexAnalysis(String caseId, ModelAtomicIndex modelAtomicIndex,List evidenceDirectories, ModelAtomicResult atomicResult) { + private boolean dbIndexAnalysis(String caseId, ModelAtomicIndex modelAtomicIndex, List evidenceDirectories, ModelAtomicResult atomicResult) { Map params = new HashMap<>(); params.put("caseId", caseId); List mapList = rowSqlMapper.selectList(modelAtomicIndex.getQueryLang(), params, Map.class);