diff --git a/inspect-ivs/src/main/java/com/inspect/ivs/controller/IvsDeviceController.java b/inspect-ivs/src/main/java/com/inspect/ivs/controller/IvsDeviceController.java index f777265..4c54eca 100644 --- a/inspect-ivs/src/main/java/com/inspect/ivs/controller/IvsDeviceController.java +++ b/inspect-ivs/src/main/java/com/inspect/ivs/controller/IvsDeviceController.java @@ -60,14 +60,14 @@ public class IvsDeviceController { public ResponseEntity channelSnap(IvsDevChanSnapVo ivsDevChanSnapVo) throws Exception { if (version.equals("1800")) { byte[] bytes = Ivs1800channelSnap(ivsDevChanSnapVo); - String filePath = "/home/1.JPG"; // 替换为你想保存图片的本地路径 - try (FileOutputStream fos = new FileOutputStream(filePath)) { - fos.write(bytes); - log.info("图片已成功保存到本地:" + filePath); - } catch (IOException e) { - e.printStackTrace(); - log.info("保存图片时出现错误:" + e.getMessage()); - } +// String filePath = "/home/1.JPG"; // 替换为你想保存图片的本地路径 +// try (FileOutputStream fos = new FileOutputStream(filePath)) { +// fos.write(bytes); +// log.info("图片已成功保存到本地:" + filePath); +// } catch (IOException e) { +// e.printStackTrace(); +// log.info("保存图片时出现错误:" + e.getMessage()); +// } // byte[] bytes = readStream(content); InputStream inputStream = new ByteArrayInputStream(bytes); return ResponseEntity.ok().body(new InputStreamResource(inputStream)); diff --git a/inspect-ivs/src/main/java/com/inspect/ivs/service/IvsCommonService.java b/inspect-ivs/src/main/java/com/inspect/ivs/service/IvsCommonService.java index a62ead6..3179136 100644 --- a/inspect-ivs/src/main/java/com/inspect/ivs/service/IvsCommonService.java +++ b/inspect-ivs/src/main/java/com/inspect/ivs/service/IvsCommonService.java @@ -168,6 +168,8 @@ public class IvsCommonService { } public byte[] sendSSLPost(String url, String param) throws Exception { + OutputStream out = null; +// log.info("执行sendssl方法"); String Cookie = this.getCookie(); StringBuilder result = new StringBuilder(); String urlNameString = url; @@ -180,19 +182,30 @@ public class IvsCommonService { conn.setRequestProperty("accept", "*/*"); conn.setRequestProperty("connection", "Keep-Alive"); conn.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)"); -// conn.setRequestProperty("Accept-Charset", "utf-8"); -// conn.setRequestProperty("Content-Type", "application/json;charset=UTF-8"); - conn.setRequestProperty("Cookie", Cookie); -// conn.setDoOutput(true); + conn.setRequestProperty("Accept-Charset", "utf-8"); + conn.setRequestProperty("Content-Type", "application/json;charset=UTF-8"); + conn.setRequestProperty("Cookie", "JSESSIONID=" + Cookie); + conn.setDoOutput(true); conn.setDoInput(true); + conn.connect(); + out = conn.getOutputStream(); + out.write(param.getBytes()); + out.flush(); try (InputStream is = conn.getInputStream()){ +// log.info("返回sendssl方法"); return readStream(is); + } catch (Exception e) { + e.printStackTrace(); } - } finally { + } catch (Exception e) { + e.printStackTrace(); + } + finally { if (conn != null) { conn.disconnect(); } } + return null; } public byte[] readStream(InputStream inStream) throws Exception { ByteArrayOutputStream outStream = new ByteArrayOutputStream(); @@ -203,6 +216,7 @@ public class IvsCommonService { } outStream.close(); inStream.close(); +// log.info("返回readStream方法{}" , outStream.toByteArray()); return outStream.toByteArray(); } public static void main(String[] args) { 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 98055f4..b504a19 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 @@ -387,6 +387,7 @@ and e.device_type_name like concat('%',#{deviceTypeName},'%') + and a.device_id =#{deviceId} and a.main_id =#{mainId} and a.task_name like concat('%',#{taskName},'%') diff --git a/inspect-metadata/src/main/java/com/inspect/metadata/eqpbook/controller/BasedataEqpBookChannelController.java b/inspect-metadata/src/main/java/com/inspect/metadata/eqpbook/controller/BasedataEqpBookChannelController.java index 163a3b1..fa05c8b 100644 --- a/inspect-metadata/src/main/java/com/inspect/metadata/eqpbook/controller/BasedataEqpBookChannelController.java +++ b/inspect-metadata/src/main/java/com/inspect/metadata/eqpbook/controller/BasedataEqpBookChannelController.java @@ -2,6 +2,7 @@ package com.inspect.metadata.eqpbook.controller; import com.inspect.metadata.eqpbook.domain.BasedataEqpBook; import com.inspect.metadata.eqpbook.domain.BasedataEqpBookChannel; +import com.inspect.metadata.eqpbook.domain.vo.PatrolDeviceStatusVo; import com.inspect.metadata.eqpbook.service.IBasedataEqpBookChannelService; import com.inspect.metadata.eqpbook.service.IBasedataEqpBookService; import com.inspect.base.core.utils.poi.ExcelUtil; @@ -12,6 +13,7 @@ import com.inspect.common.log.annotation.Log; import com.inspect.common.log.enums.BizType; import com.inspect.common.security.annotation.RequiresPermissions; +import java.util.ArrayList; import java.util.List; import javax.servlet.http.HttpServletResponse; @@ -115,4 +117,36 @@ public class BasedataEqpBookChannelController extends BaseController { List list = this.basedataEqpBookChannelService.getChannelByEqpBookCode(basedataEqpbook); return AjaxResult.success(list); } + + + /** + * 获取双光摄像头、可⻅光摄像头数量统计,包括正常和异常状 态 + * @return + */ + @GetMapping({"/patroldeviceState"}) + public AjaxResult patroldeviceState() { + List list = this.basedataEqpBookChannelService.selectBasedataEqpBookChannelList(new BasedataEqpBookChannel()); + List patroDeviceStatusVoList = new ArrayList<>(); + PatrolDeviceStatusVo vl = new PatrolDeviceStatusVo("可⻅光摄像头", 0, 0); + PatrolDeviceStatusVo ir = new PatrolDeviceStatusVo("双光摄像头", 0, 0); + for (BasedataEqpBookChannel channel : list) { + if(channel.getChannelType().equals("vl")){ + if(channel.getOnlineState().equals("1")){ + vl.setNormalCount(vl.getNormalCount() + 1); + } else { + vl.setAnomalyCount(vl.getAnomalyCount() + 1); + } + } + if(channel.getChannelType().equals("ir")){ + if(channel.getOnlineState().equals("1")){ + ir.setNormalCount(vl.getNormalCount() + 1); + } else { + ir.setAnomalyCount(vl.getAnomalyCount() + 1); + } + } + } + patroDeviceStatusVoList.add(vl); + patroDeviceStatusVoList.add(ir); + return AjaxResult.success(patroDeviceStatusVoList); + } } diff --git a/inspect-metadata/src/main/java/com/inspect/metadata/eqpbook/domain/vo/PatrolDeviceStatusVo.java b/inspect-metadata/src/main/java/com/inspect/metadata/eqpbook/domain/vo/PatrolDeviceStatusVo.java new file mode 100644 index 0000000..41ef466 --- /dev/null +++ b/inspect-metadata/src/main/java/com/inspect/metadata/eqpbook/domain/vo/PatrolDeviceStatusVo.java @@ -0,0 +1,16 @@ +package com.inspect.metadata.eqpbook.domain.vo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.checkerframework.checker.units.qual.N; + +@AllArgsConstructor +@NoArgsConstructor +@Data +public class PatrolDeviceStatusVo { + private String patroldeviceType; + private int normalCount; + private int anomalyCount; + +} 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 9329ea4..3db5be6 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 @@ -9,6 +9,8 @@ import com.inspect.metadata.montdatamqhandle.service.component.BasedataMontPatro import com.inspect.metadata.patrolpointmnt.domain.BasedataPatrolPoint; import com.inspect.metadata.patrolpointmnt.domain.BasedataStdPatrolPoint; import com.inspect.metadata.patrolpointmnt.domain.vo.DevicePointModelItem; +import com.inspect.metadata.patrolpointmnt.domain.vo.PointLatestResultVo; +import com.inspect.metadata.patrolpointmnt.domain.vo.PointStatsVo; import com.inspect.metadata.patrolpointmnt.service.IBasedataPatrolPointService; import com.inspect.metadata.patrolpointmnt.service.IBasedataStdPatrolPointService; import com.inspect.metadata.prodevmnt.domain.BasedataDevice; @@ -244,4 +246,33 @@ public class BasedataPatrolPointController extends BaseController { return null; } + + + /** + * 获取巡检点位总数和异常数 + * @param + * @return + * 获取巡检点位的总数以及异常点位的数量。比如查询当天的异常 点位数,如果⼀个点位多次告警,算⼀次统计。 + */ + @GetMapping({"/getInspectPointStats"}) + public AjaxResult getInspectPointStats (PointStatsVo pointStatsVo) { + return AjaxResult.success(this.basedataPatrolPointService.getInspectPointStats(pointStatsVo)); + } + + + /** + * 获取某个巡视设备相关点位最近⼀次巡检结果列表接⼝ + * @param + * @return + * 获取某摄像头相关点位最近⼀次巡检结果列表接⼝ + */ + @GetMapping({"/pointLatestResult"}) + public AjaxResult pointLatestResult (PointLatestResultVo pointLatestResultVo) { + return AjaxResult.success(this.basedataPatrolPointService.pointLatestResult(pointLatestResultVo)); + } + + + + + } diff --git a/inspect-metadata/src/main/java/com/inspect/metadata/patrolpointmnt/domain/vo/PointLatestResultVo.java b/inspect-metadata/src/main/java/com/inspect/metadata/patrolpointmnt/domain/vo/PointLatestResultVo.java new file mode 100644 index 0000000..e2a8132 --- /dev/null +++ b/inspect-metadata/src/main/java/com/inspect/metadata/patrolpointmnt/domain/vo/PointLatestResultVo.java @@ -0,0 +1,34 @@ +package com.inspect.metadata.patrolpointmnt.domain.vo; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class PointLatestResultVo { + + private Integer id; + private String patroldeviceCode; + private String patroldeviceName; + private String taskCode; + private String taskName; + private String taskPatrolledId; + private String deviceId; + private String deviceName; + private String mainDevId; + private String mainDevName; + private String componentId; + private String componentName; + private String value; + private String unit; + private String recognitionType; + private String time; + private String fileType; + private String filePath; + private String baseFilePath; + private String rectangle; + private String valid; +} diff --git a/inspect-metadata/src/main/java/com/inspect/metadata/patrolpointmnt/domain/vo/PointStatsVo.java b/inspect-metadata/src/main/java/com/inspect/metadata/patrolpointmnt/domain/vo/PointStatsVo.java new file mode 100644 index 0000000..67cafd3 --- /dev/null +++ b/inspect-metadata/src/main/java/com/inspect/metadata/patrolpointmnt/domain/vo/PointStatsVo.java @@ -0,0 +1,20 @@ +package com.inspect.metadata.patrolpointmnt.domain.vo; + +import io.swagger.models.auth.In; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class PointStatsVo { + //开始时间 + String startTime; + //结束时间 + String endTime; + //巡检点总数 + Integer inspectionPointTotal; + //异常数 + Integer inspectionPointAnomalyCount; +} diff --git a/inspect-metadata/src/main/java/com/inspect/metadata/patrolpointmnt/mapper/BasedataPatrolPointMapper.java b/inspect-metadata/src/main/java/com/inspect/metadata/patrolpointmnt/mapper/BasedataPatrolPointMapper.java index 2a5a646..18dbbf5 100644 --- a/inspect-metadata/src/main/java/com/inspect/metadata/patrolpointmnt/mapper/BasedataPatrolPointMapper.java +++ b/inspect-metadata/src/main/java/com/inspect/metadata/patrolpointmnt/mapper/BasedataPatrolPointMapper.java @@ -1,6 +1,8 @@ package com.inspect.metadata.patrolpointmnt.mapper; import com.inspect.metadata.patrolpointmnt.domain.BasedataPatrolPoint; +import com.inspect.metadata.patrolpointmnt.domain.vo.PointLatestResultVo; +import com.inspect.metadata.patrolpointmnt.domain.vo.PointStatsVo; import org.apache.ibatis.annotations.Mapper; import java.util.List; @@ -26,4 +28,8 @@ public interface BasedataPatrolPointMapper { int selectPresetPosByPatrolPointId(Long[] patrolPointIds); BasedataPatrolPoint selectBasedataPatrolPointPresetForOne(BasedataPatrolPoint patrolPoint); + + PointStatsVo getInspectPointStats(PointStatsVo pointStatsVo); + + List pointLatestResult(PointLatestResultVo pointLatestResultVo); } diff --git a/inspect-metadata/src/main/java/com/inspect/metadata/patrolpointmnt/service/IBasedataPatrolPointService.java b/inspect-metadata/src/main/java/com/inspect/metadata/patrolpointmnt/service/IBasedataPatrolPointService.java index 96f03f1..eb683c8 100644 --- a/inspect-metadata/src/main/java/com/inspect/metadata/patrolpointmnt/service/IBasedataPatrolPointService.java +++ b/inspect-metadata/src/main/java/com/inspect/metadata/patrolpointmnt/service/IBasedataPatrolPointService.java @@ -2,6 +2,8 @@ package com.inspect.metadata.patrolpointmnt.service; import com.inspect.metadata.patrolpointmnt.domain.BasedataPatrolPoint; import com.inspect.metadata.patrolpointmnt.domain.vo.DevicePointModelItem; +import com.inspect.metadata.patrolpointmnt.domain.vo.PointLatestResultVo; +import com.inspect.metadata.patrolpointmnt.domain.vo.PointStatsVo; import java.util.List; @@ -27,4 +29,8 @@ public interface IBasedataPatrolPointService { String superSystemSynPatrolPointModel(); String xml(DevicePointModelItem item, Long[] ids); + + PointStatsVo getInspectPointStats(PointStatsVo pointStatsVo); + + List pointLatestResult(PointLatestResultVo pointLatestResultVo); } diff --git a/inspect-metadata/src/main/java/com/inspect/metadata/patrolpointmnt/service/impl/BasedataPatrolPointServiceImpl.java b/inspect-metadata/src/main/java/com/inspect/metadata/patrolpointmnt/service/impl/BasedataPatrolPointServiceImpl.java index 17175c0..bca4a59 100644 --- a/inspect-metadata/src/main/java/com/inspect/metadata/patrolpointmnt/service/impl/BasedataPatrolPointServiceImpl.java +++ b/inspect-metadata/src/main/java/com/inspect/metadata/patrolpointmnt/service/impl/BasedataPatrolPointServiceImpl.java @@ -15,6 +15,8 @@ import com.inspect.metadata.patrolpointmnt.domain.BasedataPatrolPoint; import com.inspect.metadata.patrolpointmnt.domain.BasedataPatrolPointPreset; import com.inspect.metadata.patrolpointmnt.domain.vo.DevicePointModel; import com.inspect.metadata.patrolpointmnt.domain.vo.DevicePointModelItem; +import com.inspect.metadata.patrolpointmnt.domain.vo.PointLatestResultVo; +import com.inspect.metadata.patrolpointmnt.domain.vo.PointStatsVo; import com.inspect.metadata.patrolpointmnt.mapper.BasedataPatrolPointMapper; import com.inspect.metadata.patrolpointmnt.mapper.BasedataPatrolPointPresetMapper; import com.inspect.metadata.patrolpointmnt.service.IBasedataPatrolPointService; @@ -313,6 +315,8 @@ public class BasedataPatrolPointServiceImpl implements IBasedataPatrolPointServi return pulseGet.getXml(devicePointModel).replaceAll("amp;", StringUtils.EMPTY); } + + private JSONArray modelPatrolPointPresetHandle(BasedataPatrolPointPreset basedataPatrolpointPreset) { JSONArray jsonArray = new JSONArray(); List presets = this.basedataPatrolpointPresetMapper.selectBasedataPatrolPointPresetList(basedataPatrolpointPreset); @@ -422,4 +426,21 @@ public class BasedataPatrolPointServiceImpl implements IBasedataPatrolPointServi return fileUpPath + filename + ".xml"; } + + + @Override + public PointStatsVo getInspectPointStats(PointStatsVo pointStatsVo) { + PointStatsVo inspectPointStats = basedataPatrolpointMapper.getInspectPointStats(pointStatsVo); + List basedataPatrolPoints = basedataPatrolpointMapper.selectBasedataPatrolPointList(new BasedataPatrolPoint()); + inspectPointStats.setInspectionPointTotal(basedataPatrolPoints.size()); + return inspectPointStats; + } + + @Override + public List pointLatestResult(PointLatestResultVo pointLatestResultVo) { + List result = basedataPatrolpointMapper.pointLatestResult(pointLatestResultVo); +// List basedataPatrolPoints = basedataPatrolpointMapper.selectBasedataPatrolPointList(new BasedataPatrolPoint()); +// inspectPointStats.setInspectionPointTotal(basedataPatrolPoints.size()); + return result; + } } diff --git a/inspect-metadata/src/main/resources/mapper/patrolpointmnt/BasedataPatrolPointMapper.xml b/inspect-metadata/src/main/resources/mapper/patrolpointmnt/BasedataPatrolPointMapper.xml index 2c748d6..eeedeaf 100644 --- a/inspect-metadata/src/main/resources/mapper/patrolpointmnt/BasedataPatrolPointMapper.xml +++ b/inspect-metadata/src/main/resources/mapper/patrolpointmnt/BasedataPatrolPointMapper.xml @@ -315,4 +315,79 @@ #{patrolPointId} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +