diff --git a/inspect-main/inspect-main-statistics/src/main/java/com/inspect/statistics/controller/PatrolStatisticsController.java b/inspect-main/inspect-main-statistics/src/main/java/com/inspect/statistics/controller/PatrolStatisticsController.java index ceff8ce..a2ea329 100644 --- a/inspect-main/inspect-main-statistics/src/main/java/com/inspect/statistics/controller/PatrolStatisticsController.java +++ b/inspect-main/inspect-main-statistics/src/main/java/com/inspect/statistics/controller/PatrolStatisticsController.java @@ -3,6 +3,7 @@ package com.inspect.statistics.controller; import cn.hutool.poi.excel.ExcelWriter; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.inspect.base.core.constant.AlgConstants; import com.inspect.base.core.exception.ServiceException; import com.inspect.base.core.utils.StringUtils; import com.inspect.base.core.utils.poi.ExcelUtil; @@ -17,9 +18,9 @@ import com.inspect.statistics.service.PatrolStatisticsService; import java.io.IOException; import java.io.UnsupportedEncodingException; +import java.lang.reflect.Array; import java.net.URLEncoder; -import java.util.HashMap; -import java.util.List; +import java.util.*; import javax.annotation.Resource; import javax.servlet.http.HttpServletResponse; @@ -58,6 +59,22 @@ public class PatrolStatisticsController extends BaseController { public TableDataInfo queryPatrolResultMulti(StatisticsPatrolResult result) { this.statisticsService.verifyParam(result); this.startPage(); + if (StringUtils.isNotEmpty(result.getRecognitionType())) { + if ("4".equals(result.getRecognitionType())) { + List arrayList = new ArrayList<>(); + arrayList.add(AlgConstants.INFRA_1800); + arrayList.add(AlgConstants.INFRA_YU3); + arrayList.add(AlgConstants.INFRA_CAMERA); + arrayList.add(AlgConstants.INFRA_CAMERA_REVERSE); + // 红外测温 + result.setRecognitionTypes(arrayList); + } else { + List arrayList = new ArrayList<>(); + arrayList.add(result.getRecognitionType()); + result.setRecognitionTypes(arrayList); + } + } + List patrolResults = this.statisticsService.queryPatrolResultMulti(result); return this.getDataTable(patrolResults); } @@ -65,6 +82,21 @@ public class PatrolStatisticsController extends BaseController { @GetMapping({"/chartsMulti"}) public AjaxResult chartsMulti(StatisticsPatrolResult result) { this.statisticsService.verifyParam(result); + if (StringUtils.isNotEmpty(result.getRecognitionType())) { + if ("4".equals(result.getRecognitionType())) { + List arrayList = new ArrayList(); + arrayList.add(AlgConstants.INFRA_1800); + arrayList.add(AlgConstants.INFRA_YU3); + arrayList.add(AlgConstants.INFRA_CAMERA); + arrayList.add(AlgConstants.INFRA_CAMERA_REVERSE); + // 红外测温 + result.setRecognitionTypes(arrayList); + } else { + List arrayList = new ArrayList<>(); + arrayList.add(result.getRecognitionType()); + result.setRecognitionTypes(arrayList); + } + } JSONArray group = this.statisticsService.chartsMulti(result); return AjaxResult.success(group); } diff --git a/inspect-main/inspect-main-statistics/src/main/java/com/inspect/statistics/domain/StatisticsPatrolResult.java b/inspect-main/inspect-main-statistics/src/main/java/com/inspect/statistics/domain/StatisticsPatrolResult.java index 348d33b..8509de1 100644 --- a/inspect-main/inspect-main-statistics/src/main/java/com/inspect/statistics/domain/StatisticsPatrolResult.java +++ b/inspect-main/inspect-main-statistics/src/main/java/com/inspect/statistics/domain/StatisticsPatrolResult.java @@ -7,6 +7,7 @@ import lombok.Getter; import lombok.Setter; import java.util.Date; +import java.util.List; @Setter @Getter @@ -66,5 +67,8 @@ public class StatisticsPatrolResult extends BaseEntity { private String productionId; private String configCol; private String materialId; + // 单位 + private String purpose; + private List recognitionTypes; } diff --git a/inspect-main/inspect-main-statistics/src/main/java/com/inspect/statistics/service/impl/PatrolStatisticsServiceImpl.java b/inspect-main/inspect-main-statistics/src/main/java/com/inspect/statistics/service/impl/PatrolStatisticsServiceImpl.java index c6370fa..ba0c670 100644 --- a/inspect-main/inspect-main-statistics/src/main/java/com/inspect/statistics/service/impl/PatrolStatisticsServiceImpl.java +++ b/inspect-main/inspect-main-statistics/src/main/java/com/inspect/statistics/service/impl/PatrolStatisticsServiceImpl.java @@ -57,17 +57,16 @@ public class PatrolStatisticsServiceImpl implements PatrolStatisticsService { public JSONArray chartsMulti(StatisticsPatrolResult result) { List list = this.resultMapper.queryPatrolResultMulti(result); - Map group = list.stream().collect(Collectors.groupingBy(StatisticsPatrolResult::getDeviceId)); + Map> group = list.stream().collect(Collectors.groupingBy(StatisticsPatrolResult::getDeviceId)); JSONArray jsonArray = new JSONArray(); - for (Object object : group.keySet()) { - String key = (String) object; - List resultList = (List) group.get(key); + for (String deviceId : group.keySet()) { + List resultList = group.get(deviceId); if (CollectionUtils.isNotEmpty(resultList)) { StatisticsPatrolResult statisticsPatrolResult = resultList.get(0); String deviceName = statisticsPatrolResult.getDeviceName(); JSONObject job = new JSONObject(); - job.put("deviceId", key); + job.put("deviceId", deviceId); job.put("deviceName", deviceName); job.put("data", resultList); jsonArray.add(job); diff --git a/inspect-main/inspect-main-statistics/src/main/resources/mapper/PatrolResultMapper.xml b/inspect-main/inspect-main-statistics/src/main/resources/mapper/PatrolResultMapper.xml index 8ef2572..39692fe 100644 --- a/inspect-main/inspect-main-statistics/src/main/resources/mapper/PatrolResultMapper.xml +++ b/inspect-main/inspect-main-statistics/src/main/resources/mapper/PatrolResultMapper.xml @@ -29,6 +29,7 @@ + @@ -38,7 +39,7 @@ - select result.*,point.device_id productionId from basedata_patrolpoint point + select result.*,point.device_id productionId,point.purpose purpose from basedata_patrolpoint point left join patrol_result result on point.patrol_point_id = result.device_id @@ -91,7 +92,12 @@ and find_in_set(point.device_id, #{deviceIds}) - and result.recognition_type = #{recognitionType} + + and result.recognition_type in + + #{item} + + and result.time between #{startTime} and #{endTime} and device_name like concat('%', #{deviceName}, '%') diff --git a/inspect-main/inspect-main-task/src/main/java/com/inspect/partrolresult/service/impl/PatrolResultServiceImpl.java b/inspect-main/inspect-main-task/src/main/java/com/inspect/partrolresult/service/impl/PatrolResultServiceImpl.java index 788f99e..d3ef7f6 100644 --- a/inspect-main/inspect-main-task/src/main/java/com/inspect/partrolresult/service/impl/PatrolResultServiceImpl.java +++ b/inspect-main/inspect-main-task/src/main/java/com/inspect/partrolresult/service/impl/PatrolResultServiceImpl.java @@ -7,6 +7,7 @@ import com.inspect.analysis.domain.AnalyseResPoint; import com.inspect.analysis.domain.ResultAnalysis; import com.inspect.analysis.domain.resultList; import com.inspect.analysis.mapper.ResultAnalysisMapper; +import com.inspect.base.core.constant.AlgConstants; import com.inspect.base.core.exception.ServiceException; import com.inspect.base.core.utils.DateUtils; import com.inspect.base.core.utils.StringUtils; @@ -49,6 +50,9 @@ public class PatrolResultServiceImpl implements IPatrolResultService { @Value("${inspect.task.report.voltage:±800kv}") private String voltage; + @Value("${inspect.task.report.all:0}") + private String exportReportFlag; + private final PatrolResultMapper patrolResultMapper; final PatrolResultDefaultValueMapper patrolResultDefaultvalueMapper; @@ -63,6 +67,15 @@ public class PatrolResultServiceImpl implements IPatrolResultService { @Autowired private MessageUtils messageUtils; + private static final Set validAlgTypes = new HashSet<>(Arrays.asList( + AlgConstants.METER, + AlgConstants.XB, + AlgConstants.INFRA_1800, + AlgConstants.INFRA_YU3, + AlgConstants.INFRA_CAMERA, + AlgConstants.INFRA_CAMERA_REVERSE + ));; + public PatrolResultServiceImpl(PatrolResultMapper patrolResultMapper, PatrolResultDefaultValueMapper patrolResultDefaultvalueMapper, PatrolTaskResultMainMapper patrolTaskResultMainMapper, PatrolTaskStatusMapper patrolTaskStatusMapper, PatrolTaskMapper patrolTaskMapper, InspectionReportMapper inspectionReportMapper, InspectionReportImgMapper inspectionReportImgMapper, InspectionReportDataMapper inspectionReportDataMapper, ResultAnalysisMapper resultAnalysisMapper) { this.patrolResultMapper = patrolResultMapper; this.patrolResultDefaultvalueMapper = patrolResultDefaultvalueMapper; @@ -375,6 +388,7 @@ public class PatrolResultServiceImpl implements IPatrolResultService { Map stationMap = patrolResultMapper.selectBasedataStation(); String stationName = stationMap.get("station_name"); String stationType = stationMap.get("station_type"); + String voltLevel = stationMap.get("volt_level"); for (int i = 0; i < nums.length; i++) { InspectionReport report = new InspectionReport(); resetReport(report, nums[i], mainId, task, taskStatus); @@ -385,7 +399,7 @@ public class PatrolResultServiceImpl implements IPatrolResultService { report.setCheckPerson(resultMain.getCheckPerson()); report.setCheckTime(resultMain.getCheckTime()); report.setStationName(stationName); - report.setVoltLevel(voltage); + report.setVoltLevel(StringUtils.isEmpty(voltLevel) ? voltage : voltLevel); report.setFilter(String.valueOf(i)); report.setStationType(stationType); inspectionReportMapper.insertInspectionReport(report); @@ -508,6 +522,11 @@ public class PatrolResultServiceImpl implements IPatrolResultService { long startTime = System.currentTimeMillis(); // List patrolResultRefs = patrolResultMapper.selectResultRefByLineId(mainId); List patrolResultRefs = patrolResultMapper.selectResultRefByLineIds(mainIds, filter); + if ("0".equals(exportReportFlag)) { + // 导出缺陷 + patrolResultRefs = patrolResultRefs.stream().filter((item) -> "0".equals(item.getResultType())).collect(Collectors.toList()); + } + log.info("batchInsertReportData patrolResultRefs:" + patrolResultRefs); startTime = PrintUtil.useTime("SELECT RESULT", startTime); // List basePointAreaInfoList = patrolResultMapper.selectBaseInfoByMainId(mainId); @@ -520,7 +539,7 @@ public class PatrolResultServiceImpl implements IPatrolResultService { long okNum = 1L; long failNum = 1L; - long confirmNum = 1L; + long defectNum = 1L; int index; for (index = 0; index < patrolResultRefs.size(); ++index) { PatrolResultRef patrolResultRef = patrolResultRefs.get(index); @@ -542,7 +561,11 @@ public class PatrolResultServiceImpl implements IPatrolResultService { reportData.setPointName(basePointAreaInfo.getPatrolPointName()); reportData.setDataSources("0".equals(devType) ? messageUtils.get("无人机") : "1".equals(devType) ? messageUtils.get("机器人") : messageUtils.get("高清视频")); reportData.setAcquisitionTime(DateUtils.parse(DateUtils.yyyyMMddHHmmss2, patrolResultRef.getTime())); - reportData.setInspectionResults(patrolResultRef.getDescription()); + if ("1".equals(patrolResultRef.getResultType()) && validAlgTypes.contains(patrolResultRef.getAlgType())) { + reportData.setInspectionResults(patrolResultRef.getValue()); + } else { + reportData.setInspectionResults(patrolResultRef.getDescription()); + } reportData.setAlgName(patrolResultRef.getAlgName()); String threshold = patrolResultRef.getThreshold(); if(StringUtils.isBlank(threshold)) { @@ -584,6 +607,15 @@ public class PatrolResultServiceImpl implements IPatrolResultService { } else if (resultType.equals("0")) { reportData.setPointStatus(messageUtils.get("缺陷")); // 缺陷编号 + reportData.setCode(defectNum); + ++defectNum; + } else if (resultType.equals("1")) { + reportData.setPointStatus(messageUtils.get("正常")); + reportData.setCode(okNum); + ++okNum; + } else { + reportData.setPointStatus(messageUtils.get("异常")); + // 异常编号 reportData.setCode(failNum); ++failNum; } diff --git a/inspect-main/inspect-main-task/src/main/resources/mapper/task/PatrolResultMapper.xml b/inspect-main/inspect-main-task/src/main/resources/mapper/task/PatrolResultMapper.xml index 0b4adf1..b919593 100644 --- a/inspect-main/inspect-main-task/src/main/resources/mapper/task/PatrolResultMapper.xml +++ b/inspect-main/inspect-main-task/src/main/resources/mapper/task/PatrolResultMapper.xml @@ -616,7 +616,7 @@ a.device_id, c.dev_type, a.time, - a.value, + b.res_value value, a.threshold, a.file_path, b.description, @@ -633,7 +633,6 @@ and a.device_id = c.device_id and a.patrol_device_code = c.dev_no where - b.result_type = '0' and a.main_id in #{item} diff --git a/inspect-main/inspect-main-video/src/main/java/com/inspect/patrol/domain/PatrolPresetPos.java b/inspect-main/inspect-main-video/src/main/java/com/inspect/patrol/domain/PatrolPresetPos.java index fdbce32..4f3cca7 100644 --- a/inspect-main/inspect-main-video/src/main/java/com/inspect/patrol/domain/PatrolPresetPos.java +++ b/inspect-main/inspect-main-video/src/main/java/com/inspect/patrol/domain/PatrolPresetPos.java @@ -76,6 +76,8 @@ public class PatrolPresetPos extends BaseEntity { private List presetActionList; private List presetParamList; + private String purpose; + @Override public String toString() { return "PatrolPresetPos{" + @@ -100,6 +102,7 @@ public class PatrolPresetPos extends BaseEntity { ", videoNvrCode='" + videoNvrCode + '\'' + ", presetActionList=" + presetActionList + ", presetParamList=" + presetParamList + + ", purpose='" + purpose + '\'' + '}'; } } diff --git a/inspect-main/inspect-main-video/src/main/resources/mapper/patrol/PatrolPresetPosMapper.xml b/inspect-main/inspect-main-video/src/main/resources/mapper/patrol/PatrolPresetPosMapper.xml index 6b025ab..2cc8830 100644 --- a/inspect-main/inspect-main-video/src/main/resources/mapper/patrol/PatrolPresetPosMapper.xml +++ b/inspect-main/inspect-main-video/src/main/resources/mapper/patrol/PatrolPresetPosMapper.xml @@ -23,6 +23,7 @@ + @@ -135,8 +136,10 @@ a.channel_code, a.channel_type, a.channel_img, - c.channel_name patrol_device_name + c.channel_name patrol_device_name, + p.purpose purpose from patrol_preset_pos a + left join basedata_patrolpoint p on a.patrol_point_id = p.patrol_point_id -- left join basedata_eqpbook b on a.eqp_book_id = b.eqp_book_id left join basedata_eqpbook_channel c on c.channel_id = a.channel_id where a.patrol_point_id = #{patrolPointId} diff --git a/inspect-metadata/src/main/java/com/inspect/metadata/patrolpointmnt/controller/BasedataPatrolPointController.java b/inspect-metadata/src/main/java/com/inspect/metadata/patrolpointmnt/controller/BasedataPatrolPointController.java index 8c82a4e..4eaef9a 100644 --- a/inspect-metadata/src/main/java/com/inspect/metadata/patrolpointmnt/controller/BasedataPatrolPointController.java +++ b/inspect-metadata/src/main/java/com/inspect/metadata/patrolpointmnt/controller/BasedataPatrolPointController.java @@ -113,6 +113,7 @@ public class BasedataPatrolPointController extends BaseController { basedataPatrolPoint2.setPatrolTypeId(basedataPatrolPoint.getPatrolTypeId()); basedataPatrolPoint2.setPointImptLevel(basedataPatrolPoint.getPointImptLevel()); basedataPatrolPoint2.setAlgSubtypeName(basedataPatrolPoint.getAlgSubtypeName()); + basedataPatrolPoint2.setPurpose(basedataPatrolPoint.getPurpose()); listEx.add(basedataPatrolPoint2); } return getDataTable(listEx);