From ee636374a5ce515b5dd25c2b7dd48a9d01743a25 Mon Sep 17 00:00:00 2001 From: wl <173@qq.com> Date: 星期二, 13 十二月 2022 11:02:46 +0800 Subject: [PATCH] fix: 趋势分析 和 驾驶舱接口 --- ycl-platform/src/main/java/com/ycl/controller/trend/TrendAnalysisController.java | 8 ++-- ycl-platform/src/main/java/com/ycl/service/trend/impl/TrendAnalysisServiceImpl.java | 7 ++- ycl-platform/src/main/java/com/ycl/controller/cockpit/aiIot/AIIotController.java | 21 +++++++--- ycl-platform/src/main/java/com/ycl/mapper/trend/TrendAnalysisMapper.java | 3 + ycl-platform/src/main/resources/mapper/trend/TrendAnalysisMapper.xml | 50 +++++++++++++------------ ycl-platform/src/main/java/com/ycl/service/trend/TrendAnalysisService.java | 7 +-- ycl-platform/src/main/java/com/ycl/vo/cockpit/aiIot/AIIotVO.java | 10 ++-- 7 files changed, 58 insertions(+), 48 deletions(-) diff --git a/ycl-platform/src/main/java/com/ycl/controller/cockpit/aiIot/AIIotController.java b/ycl-platform/src/main/java/com/ycl/controller/cockpit/aiIot/AIIotController.java index 06a9f6d..eb5d673 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/cockpit/aiIot/AIIotController.java +++ b/ycl-platform/src/main/java/com/ycl/controller/cockpit/aiIot/AIIotController.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.ycl.api.CommonResult; import com.ycl.entity.video.VideoPoint; +import com.ycl.service.carManage.ICarSlagcarService; +import com.ycl.service.equipment.IHandheldTerminalService; +import com.ycl.service.equipment.ILoudspeakerService; import com.ycl.service.video.impl.IVideoPointService; import com.ycl.util.CheckApiUtil; import com.ycl.util.VideoUtil; @@ -41,18 +44,24 @@ private IVideoPointService iVideoPointService; @Autowired private VideoUtil videoUtil; - + @Autowired + IHandheldTerminalService iHandheldTerminalService; + @Autowired + ILoudspeakerService loudspeakerService; + @Autowired + ICarSlagcarService iCarSlagcarService; @ApiOperation(value = "鐩戞祴鏁版嵁") @GetMapping("/detection") public CommonResult<AIIotVO.DetectionVO> detection(@Validated CockpitVO params) { checkApiUtil.cockpit(params); AIIotVO.DetectionVO detectionVO = new AIIotVO.DetectionVO(); - detectionVO.setVideo(121); - detectionVO.setIndividual(20); - detectionVO.setLampblack(154); - detectionVO.setLoudspeaker(30); - detectionVO.setSlagCar(33); + detectionVO.setVideo(iVideoPointService.count()); + detectionVO.setIndividual(iHandheldTerminalService.count()); + detectionVO.setLampblack(154L); + /// TODO: 2022/12/13 缂哄皯娌圭儫鏈虹洃鎺ц〃 + detectionVO.setLoudspeaker(loudspeakerService.count()); + detectionVO.setSlagCar(iCarSlagcarService.count()); return CommonResult.success(detectionVO); } diff --git a/ycl-platform/src/main/java/com/ycl/controller/trend/TrendAnalysisController.java b/ycl-platform/src/main/java/com/ycl/controller/trend/TrendAnalysisController.java index aae2e6d..dc6665e 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/trend/TrendAnalysisController.java +++ b/ycl-platform/src/main/java/com/ycl/controller/trend/TrendAnalysisController.java @@ -27,10 +27,10 @@ } @ApiOperation("鐐逛綅鏁版嵁鏌ヨ") - @PostMapping("/pointInfo") - public CommonResult<List<TrendVo>> queryPointInfo(@RequestBody String id) { - JSONObject jsonObject = JSON.parseObject(id); - return CommonResult.success(trendAnalysisService.queryPointInfo(jsonObject.getString("id"))); + @GetMapping("/pointInfo") + public CommonResult<List<TrendVo>> queryPointInfo(@RequestParam String longitude, + @RequestParam String latitude) { + return CommonResult.success(trendAnalysisService.queryPointInfo(longitude,latitude)); } @ApiOperation("棣栨鎶ヨ鐐逛綅鏁版嵁鏌ヨ") diff --git a/ycl-platform/src/main/java/com/ycl/mapper/trend/TrendAnalysisMapper.java b/ycl-platform/src/main/java/com/ycl/mapper/trend/TrendAnalysisMapper.java index fd2d416..5c250d0 100644 --- a/ycl-platform/src/main/java/com/ycl/mapper/trend/TrendAnalysisMapper.java +++ b/ycl-platform/src/main/java/com/ycl/mapper/trend/TrendAnalysisMapper.java @@ -9,5 +9,6 @@ public interface TrendAnalysisMapper { List<TrendVo> selectTrendInfo(@Param("tap") TrendAnalysisParam trendAnalysisParam); - List<TrendVo> selectTrendPointInfo(String id); + + List<TrendVo> selectTrendPointInfo(String longitude, String latitude); } diff --git a/ycl-platform/src/main/java/com/ycl/service/trend/TrendAnalysisService.java b/ycl-platform/src/main/java/com/ycl/service/trend/TrendAnalysisService.java index fe1dbab..e18252d 100644 --- a/ycl-platform/src/main/java/com/ycl/service/trend/TrendAnalysisService.java +++ b/ycl-platform/src/main/java/com/ycl/service/trend/TrendAnalysisService.java @@ -1,9 +1,6 @@ package com.ycl.service.trend; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.baomidou.mybatisplus.extension.service.IService; import com.ycl.dto.trend.TrendAnalysisParam; -import com.ycl.entity.store.StoreScoreRule; import com.ycl.vo.TrendVo; import java.util.List; @@ -11,7 +8,7 @@ public interface TrendAnalysisService { List<TrendVo> list(TrendAnalysisParam trendAnalysisParam, Integer pageSize, Integer pageNum); - List<TrendVo> queryPointInfo(String id); - List<TrendVo> queryListByCount(TrendAnalysisParam trendAnalysisParam, Integer pageSize, Integer pageNum); + + List<TrendVo> queryPointInfo(String longitude, String latitude); } diff --git a/ycl-platform/src/main/java/com/ycl/service/trend/impl/TrendAnalysisServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/trend/impl/TrendAnalysisServiceImpl.java index a399475..cb6e39b 100644 --- a/ycl-platform/src/main/java/com/ycl/service/trend/impl/TrendAnalysisServiceImpl.java +++ b/ycl-platform/src/main/java/com/ycl/service/trend/impl/TrendAnalysisServiceImpl.java @@ -9,6 +9,7 @@ import org.springframework.boot.autoconfigure.amqp.RabbitProperties; import org.springframework.stereotype.Service; +import javax.annotation.Resource; import java.util.List; import java.util.stream.Collectors; @@ -16,7 +17,7 @@ public class TrendAnalysisServiceImpl implements TrendAnalysisService { - @Autowired + @Resource TrendAnalysisMapper trendAnalysisMapper; @Override @@ -25,8 +26,8 @@ } @Override - public List<TrendVo> queryPointInfo(String id) { - return trendAnalysisMapper.selectTrendPointInfo(id); + public List<TrendVo> queryPointInfo(String longitude,String latitude) { + return trendAnalysisMapper.selectTrendPointInfo(longitude,latitude); } @Override diff --git a/ycl-platform/src/main/java/com/ycl/vo/cockpit/aiIot/AIIotVO.java b/ycl-platform/src/main/java/com/ycl/vo/cockpit/aiIot/AIIotVO.java index 38ff11f..9c2108f 100644 --- a/ycl-platform/src/main/java/com/ycl/vo/cockpit/aiIot/AIIotVO.java +++ b/ycl-platform/src/main/java/com/ycl/vo/cockpit/aiIot/AIIotVO.java @@ -19,15 +19,15 @@ @Data public static class DetectionVO { @ApiModelProperty(value = "鍩庡競鐩戞帶") - private Integer video; + private Long video; @ApiModelProperty(value = "鍗曞叺璁惧") - private Integer individual; + private Long individual; @ApiModelProperty(value = "娌圭儫鐩戞祴") - private Integer lampblack; + private Long lampblack; @ApiModelProperty(value = "瀹ゅ闊虫煴") - private Integer loudspeaker; + private Long loudspeaker; @ApiModelProperty(value = "娓e湡杞�") - private Integer slagCar; + private Long slagCar; } diff --git a/ycl-platform/src/main/resources/mapper/trend/TrendAnalysisMapper.xml b/ycl-platform/src/main/resources/mapper/trend/TrendAnalysisMapper.xml index 930caa3..912a7c2 100644 --- a/ycl-platform/src/main/resources/mapper/trend/TrendAnalysisMapper.xml +++ b/ycl-platform/src/main/resources/mapper/trend/TrendAnalysisMapper.xml @@ -3,35 +3,37 @@ <mapper namespace="com.ycl.mapper.trend.TrendAnalysisMapper"> <select id="selectTrendInfo" resultType="com.ycl.vo.TrendVo" parameterType="com.ycl.dto.trend.TrendAnalysisParam"> - select vp.id,vp.name,count(0) as count from - ums_warn_alarm_record war - left join - ums_violations v - on v.id=war.case_number_id - left join - ums_video_point vp - on v.video_point_id=vp.id + SELECT + t2.id, + t2.NAME, + count( 0 ) AS count + FROM + ums_violations t1 + LEFT JOIN ums_video_point t2 ON t2.id = t1.video_point_id + LEFT JOIN ums_video_alarm_report t3 ON t3.id = t1.video_alarm_report_id <where> <if test="tap.startTime!=null and tap.startTime!=''and tap.endTime!=null and tap.endTime!=''" > - war.alarm_time between #{tap.startTime} and #{tap.endTime} - </if> - <if test="tap.type!=null and tap.type!=''" > - war.violation_type=#{tap.type} - </if> + t3.alarm_time between #{tap.startTime} and #{tap.endTime} </where> - group by vp.id,vp.name - order by count DESC + GROUP BY + t1.video_point_id + ORDER BY + count DESC </select> - <select id="selectTrendPointInfo" resultType="com.ycl.vo.TrendVo" parameterType="string"> - SELECT vp.address, DATE_FORMAT(war.alarm_time,"%Y-%m-%d") as dateTime,count(0) as count - from ums_warn_alarm_record war - left join ums_violations v - on v.id=war.case_number_id - left join ums_video_point vp - on v.video_point_id=vp.id - where vp.id=#{id} - GROUP BY vp.address,DATE_FORMAT(war.alarm_time,"%Y-%m-%d") + <select id="selectTrendPointInfo" resultType="com.ycl.vo.TrendVo"> + SELECT t2.address, DATE_FORMAT(t3.alarm_time,"%Y-%m-%d") as dateTime,count(0) as count + FROM + ums_violations t1 + LEFT JOIN ums_video_point t2 ON t2.id = t1.video_point_id + LEFT JOIN ums_video_alarm_report t3 ON t3.id = t1.video_alarm_report_id + <where> + <if test="longitude='' and longitude =null and latitude='' and latitude=null"> + t2.longitude=#{longitude} and t2.latitude=#{latitude} + </if> + </where> + GROUP BY + t1.video_point_id,DATE_FORMAT(t3.alarm_time,"%Y-%m-%d") </select> </mapper> -- Gitblit v1.8.0