|
|
|
@ -793,8 +793,39 @@ public class PatrolResultServiceImpl implements IPatrolResultService { |
|
|
|
// List<PatrolResultRef> patrolResultRefs = patrolResultMapper.selectResultRefByLineId(mainId); |
|
|
|
// List<PatrolResultRef> patrolResultRefs = patrolResultMapper.selectResultRefByLineIds(mainIds, filter); |
|
|
|
if ("0".equals(exportReportFlag)) { |
|
|
|
// 导出缺陷 |
|
|
|
List <PatrolResultRef> resultRefs = new ArrayList<>(); |
|
|
|
// 只导出缺陷 |
|
|
|
patrolResultRefs = patrolResultRefs.stream().filter((item) -> "0".equals(item.getResultType())).collect(Collectors.toList()); |
|
|
|
// 分组,按点位ID和算法类型进行分组 |
|
|
|
Map<GroupKey, List<PatrolResultRef>> groupKeyListMap = patrolResultRefs.stream().collect(Collectors.groupingBy(item -> new GroupKey(item.getDeviceId(), item.getAlgType()))); |
|
|
|
groupKeyListMap.forEach((key, value) -> { |
|
|
|
PatrolResultRef patrolResultRef = new PatrolResultRef(); |
|
|
|
patrolResultRef.setDeviceId(key.objectId); |
|
|
|
patrolResultRef.setAlgType(key.algType); |
|
|
|
patrolResultRef.setDescription(value.stream().map(PatrolResultRef::getDescription).collect(Collectors.joining(","))); |
|
|
|
patrolResultRef.setValue(value.stream().map(PatrolResultRef::getValue).collect(Collectors.joining(","))); |
|
|
|
for (PatrolResultRef resultRef : value) { |
|
|
|
// 初筛有缺陷,展示初筛结果 |
|
|
|
if ("1".equals(resultRef.getFilter()) && StringUtils.isEmpty(patrolResultRef.getResultContent())) { |
|
|
|
patrolResultRef.setResultContent(resultRef.getResultContent()); |
|
|
|
} |
|
|
|
if ("1".equals(resultRef.getFilter()) && StringUtils.isEmpty(patrolResultRef.getFilePath())) { |
|
|
|
patrolResultRef.setFilePath(resultRef.getFilePath()); |
|
|
|
} |
|
|
|
// 大模型有缺陷,展示大模型结果 |
|
|
|
if ("0".equals(resultRef.getFilter())) { |
|
|
|
patrolResultRef.setResultContent(resultRef.getResultContent()); |
|
|
|
patrolResultRef.setFilePath(resultRef.getFilePath()); |
|
|
|
} |
|
|
|
} |
|
|
|
patrolResultRef.setDevType(value.stream().map(item -> item.getDevType() != null ? item.getDevType() : "").distinct().findFirst().orElse("")); |
|
|
|
patrolResultRef.setTime(value.stream().map(item -> item.getTime() != null ? item.getTime() : "").distinct().findFirst().orElse("")); |
|
|
|
patrolResultRef.setThreshold(value.stream().map(item -> item.getThreshold() != null ? item.getThreshold() : "").distinct().findFirst().orElse("")); |
|
|
|
patrolResultRef.setAlgName(value.get(0).getAlgName()); |
|
|
|
patrolResultRef.setResultType("0"); |
|
|
|
resultRefs.add(patrolResultRef); |
|
|
|
}); |
|
|
|
patrolResultRefs = resultRefs; |
|
|
|
} |
|
|
|
|
|
|
|
// log.info("batchInsertReportData patrolResultRefs:" + patrolResultRefs); |
|
|
|
|