From b895c5b4bf3078939b4ef792787e2fc956ea9c84 Mon Sep 17 00:00:00 2001 From: wangguangyuan Date: Mon, 2 Feb 2026 14:02:19 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E7=81=B5=E5=B7=9E=E7=BC=BA=E9=99=B7?= =?UTF-8?q?=E6=B1=87=E6=80=BB=EF=BC=8C=E5=B0=86=E7=9B=B8=E5=90=8C=E7=82=B9?= =?UTF-8?q?=E4=BD=8D=E7=AE=97=E6=B3=95=E7=9A=84=E7=BC=BA=E9=99=B7=E5=90=88?= =?UTF-8?q?=E5=B9=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/ResultAnalysisServiceImpl.java | 45 ++++++++++++++++++- .../mapper/task/ResultAnalysisMapper.xml | 4 ++ 2 files changed, 48 insertions(+), 1 deletion(-) diff --git a/inspect-main/inspect-main-task/src/main/java/com/inspect/analysis/service/impl/ResultAnalysisServiceImpl.java b/inspect-main/inspect-main-task/src/main/java/com/inspect/analysis/service/impl/ResultAnalysisServiceImpl.java index dfff707..75089f6 100644 --- a/inspect-main/inspect-main-task/src/main/java/com/inspect/analysis/service/impl/ResultAnalysisServiceImpl.java +++ b/inspect-main/inspect-main-task/src/main/java/com/inspect/analysis/service/impl/ResultAnalysisServiceImpl.java @@ -5,18 +5,22 @@ import com.inspect.analysis.domain.AnalyseSummaryAlarmModel; import com.inspect.analysis.domain.ResultAnalysis; import com.inspect.analysis.mapper.ResultAnalysisMapper; import com.inspect.analysis.service.IResultAnalysisService; +import com.inspect.base.core.utils.StringUtils; import com.inspect.partrolresult.domain.PatrolResult; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.stream.Collectors; import com.inspect.task.domain.PatrolData; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @Service +@Slf4j public class ResultAnalysisServiceImpl implements IResultAnalysisService { private final ResultAnalysisMapper resultAnalysisMapper; @@ -137,7 +141,46 @@ public class ResultAnalysisServiceImpl implements IResultAnalysisService { } public List selectResultAnalysisListForAlarm(AnalyseSummaryAlarmModel alarmModel) { - return this.resultAnalysisMapper.selectResultAnalysisListForAlarm(alarmModel); + List patrolDataList = this.resultAnalysisMapper.selectResultAnalysisListForAlarm(alarmModel); + if (patrolDataList == null || patrolDataList.isEmpty()) { + return patrolDataList; + } + Map> collect = patrolDataList.stream().collect(Collectors.groupingBy(item -> item.getAlgType() + "_" + item.getObjectId())); + List resultList = new ArrayList<>(); + collect.forEach((key, value) -> { + PatrolData patrolData = new PatrolData(); + String algType = key.split("_")[0]; + String objectId = key.split("_")[1]; + patrolData.setAlgType(algType); + patrolData.setObjectId(objectId); + for (PatrolData data : value) { + // 初筛有缺陷 展示初筛结果图片 + if ("1".equals(data.getFilter()) && StringUtils.isEmpty(patrolData.getImgAnalyse())) { + patrolData.setImgAnalyse(data.getImgAnalyse()); + } + if ("1".equals(data.getFilter()) && StringUtils.isEmpty(patrolData.getImg())) { + patrolData.setImg(data.getImg()); + } + // 大模型有缺陷 展示大模型结果图片 + if ("0".equals(data.getFilter())) { + patrolData.setImgAnalyse(data.getImgAnalyse()); + patrolData.setImg(data.getImg()); + } + } + patrolData.setPointName(value.stream().map(item -> item.getPointName() != null ? item.getPointName() : "").distinct().findFirst().orElse("")); + patrolData.setPatrolTime(value.stream().map(item -> item.getPatrolTime() != null ? item.getPatrolTime() : "").distinct().findFirst().orElse("")); + patrolData.setPointStatus(value.stream().map(item -> item.getPointStatus() != null ? item.getPointStatus() : "").distinct().findFirst().orElse("")); + patrolData.setWarnStatus(value.stream().map(item -> item.getWarnStatus() != null ? item.getWarnStatus() : "").distinct().findFirst().orElse("")); + patrolData.setDesc(value.stream().map(PatrolData::getDesc).distinct().collect(Collectors.joining(","))); + patrolData.setImgType(value.stream().map(item -> item.getImgType() != null ? item.getImgType() : "").distinct().findFirst().orElse("")); + patrolData.setLineId(value.stream().map(item -> item.getLineId() != null ? item.getLineId() : "").distinct().findFirst().orElse("")); + patrolData.setDataType(value.stream().map(item -> item.getDataType() != null ? item.getDataType() : "").distinct().findFirst().orElse("")); + patrolData.setResStatus(value.stream().map(item -> item.getResStatus() != null ? item.getResStatus() : "").distinct().findFirst().orElse("")); + patrolData.setSuggestion(value.stream().map(item -> item.getSuggestion() != null ? item.getSuggestion() : "").distinct().findFirst().orElse("")); + resultList.add(patrolData); + + }); + return resultList; } } diff --git a/inspect-main/inspect-main-task/src/main/resources/mapper/task/ResultAnalysisMapper.xml b/inspect-main/inspect-main-task/src/main/resources/mapper/task/ResultAnalysisMapper.xml index 5061e64..032e80e 100644 --- a/inspect-main/inspect-main-task/src/main/resources/mapper/task/ResultAnalysisMapper.xml +++ b/inspect-main/inspect-main-task/src/main/resources/mapper/task/ResultAnalysisMapper.xml @@ -649,6 +649,8 @@ + + @@ -668,6 +670,8 @@ resultMap="PatrolDataResult"> select b.line_id , + b.objectId as objectId, + b.alg_type as alg_type, a.device_name as point_name, a.create_time as patrol_time, b.point_status ,