diff --git a/src/main/java/com/supervision/police/dto/CaseAtomicIndexDTO.java b/src/main/java/com/supervision/police/dto/CaseAtomicIndexDTO.java index 807ad5b..0965dec 100644 --- a/src/main/java/com/supervision/police/dto/CaseAtomicIndexDTO.java +++ b/src/main/java/com/supervision/police/dto/CaseAtomicIndexDTO.java @@ -66,6 +66,9 @@ public class CaseAtomicIndexDTO { this.caseId = modelAtomicResult.getCaseId(); this.remark = modelAtomicResult.getRemark(); } + if (StrUtil.isEmpty(this.atomicResult)){ + this.atomicResult = "5"; + } } /** diff --git a/src/main/java/com/supervision/police/service/impl/ModelIndexServiceImpl.java b/src/main/java/com/supervision/police/service/impl/ModelIndexServiceImpl.java index 43ee7b1..df9958f 100644 --- a/src/main/java/com/supervision/police/service/impl/ModelIndexServiceImpl.java +++ b/src/main/java/com/supervision/police/service/impl/ModelIndexServiceImpl.java @@ -248,15 +248,18 @@ public class ModelIndexServiceImpl extends ServiceImpl modelAtomicResultMap = modelAtomicResults.stream() - .filter(modelAtomicResult -> StrUtil.isNotEmpty(modelAtomicResult.getAtomicId())).collect(Collectors.toMap(ModelAtomicResult::getAtomicId, v -> v, (v1, v2) -> v1)); + Map>> modelAtomicResultGroup = modelAtomicResults.stream() + .filter(modelAtomicResult -> StrUtil.isNotEmpty(modelAtomicResult.getAtomicId())) + .collect(Collectors.groupingBy(ModelAtomicResult::getIndexId, Collectors.groupingBy(ModelAtomicResult::getAtomicId))); Map> modelIndexMapAtomic = groupModelIndexByAtomicIndexId(modelIndexList); // 以原子指标为基准,组装数据 return modelAtomicIndexList.stream().flatMap(atomicIndex -> - modelIndexMapAtomic.get(atomicIndex.getId()).stream().map(modelIndex -> - new CaseAtomicIndexDTO(atomicIndex, modelIndex, modelAtomicResultMap.get(atomicIndex.getId()))) + modelIndexMapAtomic.get(atomicIndex.getId()).stream().map(modelIndex ->{ + Map> map = modelAtomicResultGroup.getOrDefault(modelIndex.getId(),new HashMap<>(1)); + return new CaseAtomicIndexDTO(atomicIndex, modelIndex,CollUtil.getFirst(map.get(atomicIndex.getId()))); + }) ).toList(); } diff --git a/src/test/java/com/supervision/demo/FuHsiApplicationTests.java b/src/test/java/com/supervision/demo/FuHsiApplicationTests.java index 40d02e6..d227d53 100644 --- a/src/test/java/com/supervision/demo/FuHsiApplicationTests.java +++ b/src/test/java/com/supervision/demo/FuHsiApplicationTests.java @@ -75,7 +75,7 @@ public class FuHsiApplicationTests { @Test public void classificationTest() { - String recordId = "1824320931821637633"; + String recordId = "1824329325387304962"; final String NEW_TEMPLATE = """ 分类任务: 将对话笔录文本进行分类。 @@ -146,7 +146,8 @@ public class FuHsiApplicationTests { log.error("分类任务执行失败:{}", e.getMessage(), e); type = "无"; } - log.info("question:{},answer:{},分析的结果是:{}", noteRecordSplit.getQuestion(),noteRecordSplit.getAnswer(),type); + + log.info("最后结果 question:{},answer:{},分析的结果是:{}", noteRecordSplit.getQuestion(),noteRecordSplit.getAnswer(),type); }