From 1af5d4eb731533ede0f5c2e58d38dc9997735625 Mon Sep 17 00:00:00 2001 From: cwchen <1048842385@qq.com> Date: Tue, 10 Dec 2024 18:33:48 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E9=A3=8E=E9=99=A9=E6=97=B6=E6=AE=B5?= =?UTF-8?q?=E5=88=86=E6=9E=90=E6=88=90=E6=9C=AC=E5=BD=B1=E5=93=8D=E5=88=86?= =?UTF-8?q?=E6=9E=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../proteam/supplement/controller/ProVioController.java | 4 +++- .../proteam/supplement/controller/RiskCostController.java | 4 +++- .../proteam/supplement/controller/RiskRectController.java | 6 ++++-- .../proteam/supplement/controller/RiskTimeController.java | 4 +++- .../proteam/supplement/domain/vo/RiskCostVo.java | 4 ++-- .../src/main/resources/mapper/supplement/RiskCostMapper.xml | 2 +- 6 files changed, 16 insertions(+), 8 deletions(-) diff --git a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/ProVioController.java b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/ProVioController.java index 9625c04..0703822 100644 --- a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/ProVioController.java +++ b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/ProVioController.java @@ -1,7 +1,9 @@ package com.sercurityControl.proteam.supplement.controller; import com.securityControl.common.log.annotation.Log; +import com.securityControl.common.log.annotation.SysLog; import com.securityControl.common.log.enums.BusinessType; +import com.securityControl.common.log.enums.OperaType; import com.sercurityControl.proteam.supplement.domain.dto.ParamsDto; import com.sercurityControl.proteam.supplement.service.ProVioService; import io.swagger.annotations.ApiOperation; @@ -30,7 +32,7 @@ public class ProVioController { @ApiOperation(value = "工程违章统计-列表") @PostMapping(value = "getProVioList") - @Log(title = "工程违章统计", menu = "值班任务->工程违章统计", businessType = BusinessType.QUERY, details = "工程违章统计") + @SysLog(title = "工程违章统计", model = "值班任务->工程违章统计", operaType = OperaType.QUERY, details = "工程违章统计",logType = 1) public Map getProVioList(ParamsDto dto) { return service.getProVioList(dto); } diff --git a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/RiskCostController.java b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/RiskCostController.java index 88f5c9e..0e4913a 100644 --- a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/RiskCostController.java +++ b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/RiskCostController.java @@ -1,7 +1,9 @@ package com.sercurityControl.proteam.supplement.controller; import com.securityControl.common.log.annotation.Log; +import com.securityControl.common.log.annotation.SysLog; import com.securityControl.common.log.enums.BusinessType; +import com.securityControl.common.log.enums.OperaType; import com.sercurityControl.proteam.supplement.domain.dto.ParamsDto; import com.sercurityControl.proteam.supplement.service.RiskCostService; import io.swagger.annotations.ApiOperation; @@ -30,7 +32,7 @@ public class RiskCostController { @ApiOperation(value = "风险成本影响分析-列表") @PostMapping(value = "getRiskCostList") - @Log(title = "风险成本影响分析", menu = "值班任务->风险时段分析", businessType = BusinessType.QUERY, details = "风险成本影响分析") + @SysLog(title = "风险成本影响分析", model = "值班任务->风险时段分析", operaType = OperaType.QUERY, details = "风险成本影响分析",logType = 1) public Map getRiskCostList(ParamsDto dto) { return service.getRiskCostList(dto); } diff --git a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/RiskRectController.java b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/RiskRectController.java index 3b23d59..8211645 100644 --- a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/RiskRectController.java +++ b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/RiskRectController.java @@ -2,7 +2,9 @@ package com.sercurityControl.proteam.supplement.controller; import com.securityControl.common.core.web.domain.AjaxResult; import com.securityControl.common.log.annotation.Log; +import com.securityControl.common.log.annotation.SysLog; import com.securityControl.common.log.enums.BusinessType; +import com.securityControl.common.log.enums.OperaType; import com.sercurityControl.proteam.supplement.domain.dto.ParamsDto; import com.sercurityControl.proteam.supplement.service.ProVioService; import com.sercurityControl.proteam.supplement.service.RiskRectService; @@ -32,14 +34,14 @@ public class RiskRectController { @ApiOperation(value = "风险整改分析-列表") @PostMapping(value = "getRiskRectList") - @Log(title = "风险整改分析", menu = "值班任务->风险整改分析", businessType = BusinessType.QUERY, details = "风险整改分析") + @SysLog(title = "风险整改分析", model = "值班任务->风险整改分析", operaType = OperaType.QUERY, details = "风险整改分析",logType = 1) public Map getRiskRectList(ParamsDto dto) { return service.getRiskRectList(dto); } @ApiOperation(value = "风险整改分析-整改详情") @PostMapping(value = "getRiskRectDetail") - @Log(title = "风险整改分析整改详情", menu = "值班任务->风险整改分析", businessType = BusinessType.QUERY, details = "整改详情") + @SysLog(title = "风险整改分析整改详情", model = "值班任务->风险整改分析", operaType = OperaType.QUERY, details = "整改详情",logType = 1) public AjaxResult getRiskRectDetail(ParamsDto dto) { return service.getRiskRectDetail(dto); } diff --git a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/RiskTimeController.java b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/RiskTimeController.java index 7776e58..5d1681b 100644 --- a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/RiskTimeController.java +++ b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/RiskTimeController.java @@ -1,7 +1,9 @@ package com.sercurityControl.proteam.supplement.controller; import com.securityControl.common.log.annotation.Log; +import com.securityControl.common.log.annotation.SysLog; import com.securityControl.common.log.enums.BusinessType; +import com.securityControl.common.log.enums.OperaType; import com.sercurityControl.proteam.supplement.domain.dto.ParamsDto; import com.sercurityControl.proteam.supplement.service.RiskTimeService; import io.swagger.annotations.ApiOperation; @@ -30,7 +32,7 @@ public class RiskTimeController { @ApiOperation(value = "风险时段分析-列表") @PostMapping(value = "getRiskTimeList") - @Log(title = "风险时段分析", menu = "值班任务->风险时段分析", businessType = BusinessType.QUERY, details = "风险时段分析") + @SysLog(title = "风险时段分析", model = "值班任务->风险时段分析", operaType = OperaType.QUERY, details = "风险时段分析",logType = 1) public Map getRiskTimeList(ParamsDto dto) { return service.getRiskTimeList(dto); } diff --git a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/domain/vo/RiskCostVo.java b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/domain/vo/RiskCostVo.java index 8ba5350..6433e35 100644 --- a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/domain/vo/RiskCostVo.java +++ b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/domain/vo/RiskCostVo.java @@ -33,7 +33,7 @@ public class RiskCostVo { private String workSite; /**工序*/ private String gx; - /**时间*/ - private String time; + /**风险成本*/ + private String riskCost; } diff --git a/securityControl-modules/securityControl-proteam/src/main/resources/mapper/supplement/RiskCostMapper.xml b/securityControl-modules/securityControl-proteam/src/main/resources/mapper/supplement/RiskCostMapper.xml index 72b5d13..83c6ade 100644 --- a/securityControl-modules/securityControl-proteam/src/main/resources/mapper/supplement/RiskCostMapper.xml +++ b/securityControl-modules/securityControl-proteam/src/main/resources/mapper/supplement/RiskCostMapper.xml @@ -13,7 +13,7 @@ jjcmi.work_manage_phone AS workManagerPhone, jjcmi.work_gx AS gx, jjcmi.work_site AS workSite, - jjcm.current_constr_date AS time + jjcmi.main_risk AS riskCost FROM jj_class_meetting jjcm LEFT JOIN jj_class_metting_info jjcmi ON jjcm.id = jjcmi.class_id LEFT JOIN jj_ticket jjt ON jjcm.ticket_id = jjt.id From b81e376eda37a1f61a8ad2e26879c0607657143c Mon Sep 17 00:00:00 2001 From: cwchen <1048842385@qq.com> Date: Wed, 11 Dec 2024 15:03:06 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E7=9B=91=E6=8E=A7=E8=A6=86=E7=9B=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MonitoringCoverageController.java | 80 +++++++++++ .../domain/vo/MonitoringCoverageVo.java | 60 ++++++++ .../mapper/MonitoringCoverageMapper.java | 80 +++++++++++ .../service/MonitoringCoverageService.java | 76 ++++++++++ .../impl/MonitoringCoverageServiceImpl.java | 136 ++++++++++++++++++ .../proteam/util/DateTimeHelper.java | 39 ++++- .../supplement/MonitoringCoverageMapper.xml | 73 ++++++++++ .../mapper/supplement/RiskCostMapper.xml | 2 +- .../mapper/supplement/RiskTimeMapper.xml | 2 +- 9 files changed, 545 insertions(+), 3 deletions(-) create mode 100644 securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/MonitoringCoverageController.java create mode 100644 securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/domain/vo/MonitoringCoverageVo.java create mode 100644 securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/mapper/MonitoringCoverageMapper.java create mode 100644 securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/service/MonitoringCoverageService.java create mode 100644 securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/service/impl/MonitoringCoverageServiceImpl.java create mode 100644 securityControl-modules/securityControl-proteam/src/main/resources/mapper/supplement/MonitoringCoverageMapper.xml diff --git a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/MonitoringCoverageController.java b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/MonitoringCoverageController.java new file mode 100644 index 0000000..5690903 --- /dev/null +++ b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/MonitoringCoverageController.java @@ -0,0 +1,80 @@ +package com.sercurityControl.proteam.supplement.controller; + +import com.securityControl.common.core.web.domain.AjaxResult; +import com.securityControl.common.log.annotation.SysLog; +import com.securityControl.common.log.enums.OperaType; +import com.sercurityControl.proteam.supplement.domain.dto.ParamsDto; +import com.sercurityControl.proteam.supplement.service.MonitoringCoverageService; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +/** + * @className:MonitoringCoverageController + * @author:cwchen + * @date:2024-12-11-9:17 + * @version:1.0 + * @description:监控覆盖-controller + */ +@RestController +@RequestMapping("/pot/monitoringCoverage/") +@Slf4j +public class MonitoringCoverageController { + + @Resource(name = "MonitoringCoverageService") + private MonitoringCoverageService service; + + @ApiOperation(value = "监控活跃度分析") + @SysLog(title = "监控覆盖", model = "安全风险->监控覆盖", operaType = OperaType.QUERY, details = "监控覆盖",logType = 1) + @GetMapping("getHyd") + public AjaxResult getHyd(ParamsDto dto){ + AjaxResult res = service.getHyd(dto); + return res; + } + + @ApiOperation(value = "监控覆盖度分析") + @GetMapping("getFgd") + public AjaxResult getFgd(ParamsDto dto){ + AjaxResult res = service.getFgd(dto); + return res; + } + + @ApiOperation(value = "地图球机") + @GetMapping("getMap") + public AjaxResult getMap(ParamsDto dto){ + AjaxResult res = service.getMap(dto); + return res; + } + + @ApiOperation(value = "球机异常数量") + @GetMapping("getErrorNum") + public AjaxResult getErrorNum(ParamsDto dto){ + AjaxResult res = service.getErrorNum(dto); + return res; + } + + @ApiOperation(value = "下行观看分析") + @GetMapping("getWatchNum") + public AjaxResult getWatchNum(ParamsDto dto){ + AjaxResult res = service.getWatchNum(dto); + return res; + } + + @ApiOperation(value = "风险球机覆盖度") + @GetMapping("getCoverRate") + public AjaxResult getCoverRate(ParamsDto dto){ + AjaxResult res = service.getCoverRate(dto); + return res; + } + + @ApiOperation(value = "球机速率正常/异常数量") + @GetMapping("getSpeedNum") + public AjaxResult getSpeedNum(ParamsDto dto){ + AjaxResult res = service.getSpeedNum(dto); + return res; + } +} diff --git a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/domain/vo/MonitoringCoverageVo.java b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/domain/vo/MonitoringCoverageVo.java new file mode 100644 index 0000000..31eb38d --- /dev/null +++ b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/domain/vo/MonitoringCoverageVo.java @@ -0,0 +1,60 @@ +package com.sercurityControl.proteam.supplement.domain.vo; + +import lombok.Data; + +/** + * @className:MonitoringCoverageVo + * @author:cwchen + * @date:2024-12-11-10:11 + * @version:1.0 + * @description:监控覆盖 + */ +@Data +public class MonitoringCoverageVo { + + private int num; + + private String id; + + private String name; + + private String runTime; + + private String time; + + private long timeValue; + + /**观看次数*/ + private int watchTime; + + /**风险等级*/ + private String riskLevel; + + /**站班会地址*/ + private String address; + + /**经度*/ + private String lon; + /**纬度*/ + private String lat; + + /**二级风险数量*/ + private int twoRiskNum; + /**三级风险数量*/ + private int threeRiskNum; + /**四级风险数量*/ + private int fourRiskNum; + /**五级风险数量*/ + private int fiveRiskNum; + private int totalRiskNum; + + private double twoRate; + private double threeRate; + private double fourRate; + private double fiveRate; + + /**视频设备视频速率正常数量*/ + private int errorNum; + /**视频设备视频速率异常数量*/ + private int normalNum; +} diff --git a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/mapper/MonitoringCoverageMapper.java b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/mapper/MonitoringCoverageMapper.java new file mode 100644 index 0000000..21330dd --- /dev/null +++ b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/mapper/MonitoringCoverageMapper.java @@ -0,0 +1,80 @@ +package com.sercurityControl.proteam.supplement.mapper; + +import com.sercurityControl.proteam.supplement.domain.dto.ParamsDto; +import com.sercurityControl.proteam.supplement.domain.vo.MonitoringCoverageVo; +import org.springframework.stereotype.Repository; + +import java.util.List; + +/** + * @className:MonitoringCoverageMapper + * @author:cwchen + * @date:2024-12-11-9:18 + * @version:1.0 + * @description:监控覆盖-mapper + */ +@Repository("MonitoringCoverageMapper") +public interface MonitoringCoverageMapper { + /** + * 监控覆盖-活跃度分析 + * @param dto + * @return List + * @author cwchen + * @date 2024/12/11 10:23 + */ + List getHyd(ParamsDto dto); + + /** + * 监控覆盖-覆盖度分析 + * @param dto + * @return List + * @author cwchen + * @date 2024/12/11 13:10 + */ + List getFgd(ParamsDto dto); + + /** + * 地图球机 + * @param dto + * @return List + * @author cwchen + * @date 2024/12/11 13:26 + */ + List getMap(ParamsDto dto); + + /** + * 球机异常数量 + * @param dto + * @return List + * @author cwchen + * @date 2024/12/11 14:11 + */ + List getErrorNum(ParamsDto dto); + + /** + * 下行观看分析 + * @param dto + * @return List + * @author cwchen + * @date 2024/12/11 14:23 + */ + List getWatchNum(ParamsDto dto); + + /** + * 风险球机覆盖度 + * @param dto + * @return List + * @author cwchen + * @date 2024/12/11 14:33 + */ + List getCoverRate(ParamsDto dto); + + /** + * 球机速率正常/异常数量 + * @param dto + * @return List + * @author cwchen + * @date 2024/12/11 14:53 + */ + List getSpeedNum(ParamsDto dto); +} diff --git a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/service/MonitoringCoverageService.java b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/service/MonitoringCoverageService.java new file mode 100644 index 0000000..5cc6f6a --- /dev/null +++ b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/service/MonitoringCoverageService.java @@ -0,0 +1,76 @@ +package com.sercurityControl.proteam.supplement.service; + +import com.securityControl.common.core.web.domain.AjaxResult; +import com.sercurityControl.proteam.supplement.domain.dto.ParamsDto; + +/** + * @className:MonitoringCoverageService + * @author:cwchen + * @date:2024-12-11-9:17 + * @version:1.0 + * @description:监控覆盖-service + */ +public interface MonitoringCoverageService { + /** + * 监控覆盖-活跃度分析 + * @param dto + * @return AjaxResult + * @author cwchen + * @date 2024/12/11 10:21 + */ + AjaxResult getHyd(ParamsDto dto); + + /** + * 监控覆盖-覆盖度分析 + * @param dto + * @return AjaxResult + * @author cwchen + * @date 2024/12/11 13:08 + */ + AjaxResult getFgd(ParamsDto dto); + + /** + * 地图球机 + * @param dto + * @return AjaxResult + * @author cwchen + * @date 2024/12/11 13:26 + */ + AjaxResult getMap(ParamsDto dto); + + /** + * 球机异常数量 + * @param dto + * @return AjaxResult + * @author cwchen + * @date 2024/12/11 14:10 + */ + AjaxResult getErrorNum(ParamsDto dto); + + /** + * 下行观看分析 + * @param dto + * @return AjaxResult + * @author cwchen + * @date 2024/12/11 14:22 + */ + AjaxResult getWatchNum(ParamsDto dto); + + /** + * 风险球机覆盖度 + * @param dto + * @return AjaxResult + * @author cwchen + * @date 2024/12/11 14:32 + */ + AjaxResult getCoverRate(ParamsDto dto); + + /** + * 球机速率正常/异常数量 + * @param dto + * @return AjaxResult + * @author cwchen + * @date 2024/12/11 14:53 + */ + AjaxResult getSpeedNum(ParamsDto dto); +} diff --git a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/service/impl/MonitoringCoverageServiceImpl.java b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/service/impl/MonitoringCoverageServiceImpl.java new file mode 100644 index 0000000..7af6b44 --- /dev/null +++ b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/service/impl/MonitoringCoverageServiceImpl.java @@ -0,0 +1,136 @@ +package com.sercurityControl.proteam.supplement.service.impl; + +import com.securityControl.common.core.web.domain.AjaxResult; +import com.sercurityControl.proteam.supplement.domain.dto.ParamsDto; +import com.sercurityControl.proteam.supplement.domain.vo.MonitoringCoverageVo; +import com.sercurityControl.proteam.supplement.mapper.MonitoringCoverageMapper; +import com.sercurityControl.proteam.supplement.service.MonitoringCoverageService; +import com.sercurityControl.proteam.util.DateTimeHelper; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; + +/** + * @className:MonitoringCoverageServiceImpl + * @author:cwchen + * @date:2024-12-11-9:18 + * @version:1.0 + * @description:监控覆盖-impl + */ +@Service("MonitoringCoverageService") +@Slf4j +public class MonitoringCoverageServiceImpl implements MonitoringCoverageService { + + @Resource(name = "MonitoringCoverageMapper") + private MonitoringCoverageMapper mapper; + + @Override + public AjaxResult getHyd(ParamsDto dto) { + List list = null; + try { + list = mapper.getHyd(dto); + int num = 0; + Date endDate = new Date(); + for (MonitoringCoverageVo vo : list) { + num ++; + vo.setNum(num); + Date runTime = DateTimeHelper.parse(vo.getRunTime(), "yyyy-MM-dd HH:mm:ss"); + String gapTime = DateTimeHelper.getGapTime(endDate, runTime); + long timeValue = DateTimeHelper.getGapTime2(endDate, runTime); + vo.setTime(gapTime); + vo.setTimeValue(timeValue); + } + } catch (Exception e) { + log.error(e.toString(),e); + } + return AjaxResult.success(list); + } + + @Override + public AjaxResult getFgd(ParamsDto dto) { + List list = null; + try { + list = mapper.getFgd(dto); + } catch (Exception e) { + log.error(e.toString(),e); + } + return AjaxResult.success(list); + } + + @Override + public AjaxResult getMap(ParamsDto dto) { + List list = null; + try { + list = mapper.getMap(dto); + } catch (Exception e) { + log.error(e.toString(),e); + } + return AjaxResult.success(list); + } + + @Override + public AjaxResult getErrorNum(ParamsDto dto) { + List list = null; + try { + list = mapper.getErrorNum(dto); + } catch (Exception e) { + log.error(e.toString(),e); + } + return AjaxResult.success(list); + } + + @Override + public AjaxResult getWatchNum(ParamsDto dto) { + List list = null; + try { + list = mapper.getWatchNum(dto); + int num = 0; + for (MonitoringCoverageVo vo : list) { + num ++; + vo.setNum(num); + } + } catch (Exception e) { + log.error(e.toString(),e); + } + return AjaxResult.success(list); + } + + @Override + public AjaxResult getCoverRate(ParamsDto dto) { + List list = null; + try { + list = mapper.getCoverRate(dto); + for (MonitoringCoverageVo vo : list) { + vo.setTwoRate(handleRate(vo.getTwoRiskNum(), vo.getTotalRiskNum())); + vo.setThreeRate(handleRate(vo.getThreeRiskNum(), vo.getTotalRiskNum())); + vo.setFourRate(handleRate(vo.getFourRiskNum(), vo.getTotalRiskNum())); + vo.setFiveRate(handleRate(vo.getFiveRiskNum(), vo.getTotalRiskNum())); + } + } catch (Exception e) { + log.error(e.toString(),e); + } + return AjaxResult.success(list); + } + + public static double handleRate(int a, int b) { + if (a == 0 || b == 0) { + return 0.0; + } + double ratio = (double) (a * 100) / b; + return Double.valueOf(String.format("%.2f", ratio)); + } + + @Override + public AjaxResult getSpeedNum(ParamsDto dto) { + List list = null; + try { + list = mapper.getSpeedNum(dto); + } catch (Exception e) { + log.error(e.toString(),e); + } + return AjaxResult.success(list); + } +} diff --git a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/util/DateTimeHelper.java b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/util/DateTimeHelper.java index 6f7179c..f2904e3 100644 --- a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/util/DateTimeHelper.java +++ b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/util/DateTimeHelper.java @@ -242,7 +242,6 @@ public class DateTimeHelper { } - /** * @return */ @@ -646,4 +645,42 @@ public class DateTimeHelper { String time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); return time; } + + public static String getGapTime(Date date1, Date date2) { + // 相差的毫秒值 + Long milliseconds = date1.getTime() - date2.getTime(); + + long nd = 1000 * 24 * 60 * 60;// 一天的毫秒数 + long nh = 1000 * 60 * 60;// 一小时的毫秒数 + long nm = 1000 * 60;// 一分钟的毫秒数 + long ns = 1000;// 一秒钟的毫秒数 + + long day = milliseconds / nd; // 计算相差多少天 + long hour = milliseconds % nd / nh; // 计算相差剩余多少小时 + long min = milliseconds % nd % nh / nm; // 计算相差剩余多少分钟 + long sec = milliseconds % nd % nh % nm / ns; // 计算相差剩余多少秒 +// System.out.println("时间相差:" + day + "天" + hour + "小时" + min + "分钟" + sec + "秒"); + + + long hourAll = milliseconds / nh; // 计算相差多少小时 +// System.out.println("时间相差:" + hourAll + "小时" + min + "分钟" + sec + "秒"); + + + long min2 = milliseconds / nm; // 计算相差多少分钟 +// System.out.println("时间相差:" + min2 + "分钟" + sec + "秒"); + + String overTime = hourAll + "小时" + min + "分" + sec + "秒"; + return overTime; + } + + public static long getGapTime2(Date date1, Date date2) { + // 相差的毫秒值 + Long milliseconds = date1.getTime() - date2.getTime(); + long nd = 1000 * 24 * 60 * 60;// 一天的毫秒数 + long nh = 1000 * 60 * 60;// 一小时的毫秒数 + long nm = 1000 * 60;// 一分钟的毫秒数 + long ns = 1000;// 一秒钟的毫秒数 + long sec = milliseconds / ns; // 计算相差剩余多少秒 + return sec; + } } diff --git a/securityControl-modules/securityControl-proteam/src/main/resources/mapper/supplement/MonitoringCoverageMapper.xml b/securityControl-modules/securityControl-proteam/src/main/resources/mapper/supplement/MonitoringCoverageMapper.xml new file mode 100644 index 0000000..fd52ab5 --- /dev/null +++ b/securityControl-modules/securityControl-proteam/src/main/resources/mapper/supplement/MonitoringCoverageMapper.xml @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/securityControl-modules/securityControl-proteam/src/main/resources/mapper/supplement/RiskCostMapper.xml b/securityControl-modules/securityControl-proteam/src/main/resources/mapper/supplement/RiskCostMapper.xml index 83c6ade..4e377b5 100644 --- a/securityControl-modules/securityControl-proteam/src/main/resources/mapper/supplement/RiskCostMapper.xml +++ b/securityControl-modules/securityControl-proteam/src/main/resources/mapper/supplement/RiskCostMapper.xml @@ -27,7 +27,7 @@ AND jjcm.current_constr_date BETWEEN #{startDay} AND #{endDay} - AND jjcm.delete_flag = '0' + AND jjcm.delete_flag = 0 ORDER BY jjcm.create_time DESC diff --git a/securityControl-modules/securityControl-proteam/src/main/resources/mapper/supplement/RiskTimeMapper.xml b/securityControl-modules/securityControl-proteam/src/main/resources/mapper/supplement/RiskTimeMapper.xml index 9f8f75b..4faecf1 100644 --- a/securityControl-modules/securityControl-proteam/src/main/resources/mapper/supplement/RiskTimeMapper.xml +++ b/securityControl-modules/securityControl-proteam/src/main/resources/mapper/supplement/RiskTimeMapper.xml @@ -27,7 +27,7 @@ AND jjcm.current_constr_date BETWEEN #{startDay} AND #{endDay} - AND jjcm.delete_flag = '0' + AND jjcm.delete_flag = 0 ORDER BY jjcm.create_time DESC From 99f3990912c9e00cdd1709909bd950c002e30a31 Mon Sep 17 00:00:00 2001 From: cwchen <1048842385@qq.com> Date: Wed, 11 Dec 2024 18:34:11 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E7=9B=91=E6=8E=A7=E8=A6=86=E7=9B=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MonitoringCoverageController.java | 9 +++ .../supplement/domain/dto/ParamsDto.java | 18 +++++ .../domain/vo/MonitoringDetailVo.java | 48 ++++++++++++ .../mapper/MonitoringCoverageMapper.java | 10 +++ .../service/MonitoringCoverageService.java | 11 +++ .../impl/MonitoringCoverageServiceImpl.java | 38 ++++++++++ .../supplement/MonitoringCoverageMapper.xml | 76 ++++++++++++++++++- 7 files changed, 207 insertions(+), 3 deletions(-) create mode 100644 securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/domain/vo/MonitoringDetailVo.java diff --git a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/MonitoringCoverageController.java b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/MonitoringCoverageController.java index 5690903..b3fa611 100644 --- a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/MonitoringCoverageController.java +++ b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/controller/MonitoringCoverageController.java @@ -8,10 +8,12 @@ import com.sercurityControl.proteam.supplement.service.MonitoringCoverageService import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; +import java.util.Map; /** * @className:MonitoringCoverageController @@ -77,4 +79,11 @@ public class MonitoringCoverageController { AjaxResult res = service.getSpeedNum(dto); return res; } + + @ApiOperation(value = "监控活跃度分析-列表") + @PostMapping(value = "getMonitoringHydList") + @SysLog(title = "监控活跃度分析详情", model = "监控覆盖->监控活跃度分析", operaType = OperaType.QUERY, details = "监控活跃度分析详情",logType = 1) + public Map getMonitoringHydList(ParamsDto dto) { + return service.getMonitoringHydList(dto); + } } diff --git a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/domain/dto/ParamsDto.java b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/domain/dto/ParamsDto.java index d10cb5a..62ef6cb 100644 --- a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/domain/dto/ParamsDto.java +++ b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/domain/dto/ParamsDto.java @@ -24,6 +24,24 @@ public class ParamsDto { private String startDay; /**结束日期*/ private String endDay; + /**班组长*/ + private String workManager; + /**班组名称*/ + private String teamName; + /**建管单位*/ + private String org; + /**名称*/ + private String name; + + /**1.监控活跃度分析 2.监控覆盖度分析 3.下行观看分析*/ + private int type; + + /**1.速率正常 2.速率异常*/ + private int operType; + + /**1.球机正常 2.异常掉线 3.画面不清晰 4.不流畅 5.信号弱 6.人为遮挡*/ + private String errorType; + private int page; diff --git a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/domain/vo/MonitoringDetailVo.java b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/domain/vo/MonitoringDetailVo.java new file mode 100644 index 0000000..4de5665 --- /dev/null +++ b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/domain/vo/MonitoringDetailVo.java @@ -0,0 +1,48 @@ +package com.sercurityControl.proteam.supplement.domain.vo; + +import com.securityControl.common.core.annotation.Sensitive; +import com.securityControl.common.core.enums.SensitizedType; +import lombok.Data; + +/** + * @className:MonitoringDetailVo + * @author:cwchen + * @date:2024-12-11-16:42 + * @version:1.0 + * @description:监控覆盖详情-vo + */ +@Data +public class MonitoringDetailVo { + private int num; + /**id*/ + private String id; + /**球机编号*/ + private String name; + /**工程名称*/ + private String proName; + /**班组长*/ + private String workManager; + /**班组长手机号*/ + @Sensitive(SensitizedType.MOBILE_PHONE) + private String workManagerPhone; + /**风险等级*/ + private String riskLevel; + /**建管单位*/ + private String org; + /**班组名称*/ + private String teamName; + /**经度*/ + private String lon; + /**纬度*/ + private String lat; + /**初次运行日期*/ + private String time; + /**运行时长 时分秒*/ + private String timeValue; + /**运行时长 秒*/ + private long timeValue2; + /**观看次数*/ + private int watchTime; + /**异常类型*/ + private String errorName; +} diff --git a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/mapper/MonitoringCoverageMapper.java b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/mapper/MonitoringCoverageMapper.java index 21330dd..ed803a7 100644 --- a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/mapper/MonitoringCoverageMapper.java +++ b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/mapper/MonitoringCoverageMapper.java @@ -2,6 +2,7 @@ package com.sercurityControl.proteam.supplement.mapper; import com.sercurityControl.proteam.supplement.domain.dto.ParamsDto; import com.sercurityControl.proteam.supplement.domain.vo.MonitoringCoverageVo; +import com.sercurityControl.proteam.supplement.domain.vo.MonitoringDetailVo; import org.springframework.stereotype.Repository; import java.util.List; @@ -77,4 +78,13 @@ public interface MonitoringCoverageMapper { * @date 2024/12/11 14:53 */ List getSpeedNum(ParamsDto dto); + + /** + * 监控活跃度分析详情 + * @param dto + * @return List + * @author cwchen + * @date 2024/12/11 16:45 + */ + List getMonitoringHydList(ParamsDto dto); } diff --git a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/service/MonitoringCoverageService.java b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/service/MonitoringCoverageService.java index 5cc6f6a..a4135e8 100644 --- a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/service/MonitoringCoverageService.java +++ b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/service/MonitoringCoverageService.java @@ -3,6 +3,8 @@ package com.sercurityControl.proteam.supplement.service; import com.securityControl.common.core.web.domain.AjaxResult; import com.sercurityControl.proteam.supplement.domain.dto.ParamsDto; +import java.util.Map; + /** * @className:MonitoringCoverageService * @author:cwchen @@ -73,4 +75,13 @@ public interface MonitoringCoverageService { * @date 2024/12/11 14:53 */ AjaxResult getSpeedNum(ParamsDto dto); + + /** + * 监控活跃度分析详情 + * @param dto + * @return Map + * @author cwchen + * @date 2024/12/11 16:41 + */ + Map getMonitoringHydList(ParamsDto dto); } diff --git a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/service/impl/MonitoringCoverageServiceImpl.java b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/service/impl/MonitoringCoverageServiceImpl.java index 7af6b44..245bab2 100644 --- a/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/service/impl/MonitoringCoverageServiceImpl.java +++ b/securityControl-modules/securityControl-proteam/src/main/java/com/sercurityControl/proteam/supplement/service/impl/MonitoringCoverageServiceImpl.java @@ -1,8 +1,13 @@ package com.sercurityControl.proteam.supplement.service.impl; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import com.securityControl.common.core.constant.HttpStatus; import com.securityControl.common.core.web.domain.AjaxResult; import com.sercurityControl.proteam.supplement.domain.dto.ParamsDto; import com.sercurityControl.proteam.supplement.domain.vo.MonitoringCoverageVo; +import com.sercurityControl.proteam.supplement.domain.vo.MonitoringDetailVo; +import com.sercurityControl.proteam.supplement.domain.vo.ProVioVo; import com.sercurityControl.proteam.supplement.mapper.MonitoringCoverageMapper; import com.sercurityControl.proteam.supplement.service.MonitoringCoverageService; import com.sercurityControl.proteam.util.DateTimeHelper; @@ -11,7 +16,9 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.Date; +import java.util.HashMap; import java.util.List; +import java.util.Map; /** * @className:MonitoringCoverageServiceImpl @@ -133,4 +140,35 @@ public class MonitoringCoverageServiceImpl implements MonitoringCoverageService } return AjaxResult.success(list); } + + @Override + public Map getMonitoringHydList(ParamsDto dto) { + PageHelper.startPage(dto.getPage(), dto.getLimit()); + Map map = new HashMap<>(16); + List list = null; + try { + list = mapper.getMonitoringHydList(dto); + int num = 0; + Date endDate = new Date(); + for (MonitoringDetailVo vo : list) { + num ++; + vo.setNum(num); + Date runTime = DateTimeHelper.parse(vo.getTime(), "yyyy-MM-dd HH:mm:ss"); + String gapTime = DateTimeHelper.getGapTime(endDate, runTime); + long timeValue = DateTimeHelper.getGapTime2(endDate, runTime); + vo.setTimeValue(gapTime); + vo.setTimeValue2(timeValue); + } + } catch (Exception e) { + log.error(e.toString(),e); + } + PageInfo pageInfo = new PageInfo<>(list); + map.put("code", HttpStatus.SUCCESS); + map.put("msg", "获取数据成功"); + map.put("count", pageInfo.getTotal()); + map.put("curr", dto.getPage()); + map.put("limit", dto.getLimit()); + map.put("data", pageInfo.getList()); + return map; + } } diff --git a/securityControl-modules/securityControl-proteam/src/main/resources/mapper/supplement/MonitoringCoverageMapper.xml b/securityControl-modules/securityControl-proteam/src/main/resources/mapper/supplement/MonitoringCoverageMapper.xml index fd52ab5..e2f2c5f 100644 --- a/securityControl-modules/securityControl-proteam/src/main/resources/mapper/supplement/MonitoringCoverageMapper.xml +++ b/securityControl-modules/securityControl-proteam/src/main/resources/mapper/supplement/MonitoringCoverageMapper.xml @@ -4,7 +4,8 @@ SELECT so.city_name AS name, - a.num + a.num, + so.org_id AS id FROM sys_org so LEFT JOIN ( SELECT jjcm.build_unit_code AS org, @@ -47,7 +49,8 @@ + + \ No newline at end of file