From 3ed870ce4eddcd1e0e88c6b41b828df492da6992 Mon Sep 17 00:00:00 2001 From: wuweida <2918581207@qq.com> Date: Wed, 22 Jun 2022 11:36:52 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=9A=E4=BD=99=E6=B3=A8=E9=87=8A=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E5=88=A0=E9=99=A4=20=E5=90=AF=E8=BF=AA=E4=B8=AD?= =?UTF-8?q?=E5=8F=B0=E6=8E=A5=E5=8F=A3=E8=BF=81=E7=A7=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../monitormanage/controller/Controller.java | 308 +--------------- .../controller/QiDiController.java | 329 ++++++++++++++++++ .../monitormanage/mapper/CameraMapper.java | 5 - .../monitormanage/service/EventService.java | 37 ++ .../service/PassengerFlowService.java | 27 -- .../monitormanage/service/QidiService.java | 32 -- .../monitormanage/service/SJZTService.java | 3 - 7 files changed, 367 insertions(+), 374 deletions(-) create mode 100644 src/main/java/com/hisense/monitormanage/controller/QiDiController.java diff --git a/src/main/java/com/hisense/monitormanage/controller/Controller.java b/src/main/java/com/hisense/monitormanage/controller/Controller.java index cebe1b6..30622c2 100644 --- a/src/main/java/com/hisense/monitormanage/controller/Controller.java +++ b/src/main/java/com/hisense/monitormanage/controller/Controller.java @@ -1,6 +1,5 @@ package com.hisense.monitormanage.controller; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.hisense.monitormanage.dto.*; import com.hisense.monitormanage.entity.*; import com.hisense.monitormanage.mapper.*; @@ -13,15 +12,12 @@ import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; -import java.util.ArrayList; import java.util.List; -import java.util.Map; @RestController @RequestMapping("api/project") -@Api(tags="通用") +@Api(tags="视频监控") public class Controller { @Autowired @@ -36,45 +32,18 @@ public class Controller { @Autowired private MonitorService monitorService; - @Autowired - private SedimentTrailService sedimentTrailService; - @Autowired private CameraChannelMapper cameraChannelMapper; @Autowired private CameraOrgenizationMapper cameraOrgenMapper; - @Autowired - private PassengerFlowService passengerFlowService; - - @Autowired - private TrailSanitationService trailSanitationService; - - @Autowired - private RoadDataService roadDataService; - @Autowired private CameraChannelService cameraChannelService; - @Autowired - private BuildingSiteService buildingSitrService; - - @Autowired - private BuildingSiteMapper buildingSiteMapper; - @Autowired private ChannelPictureMapper channelPictureMapper; - @Autowired - private PassengerFlowMapper passengerFlowlMapper; - - @Autowired - private TrailSanitationMapper trailSanitationMapper; - - @Autowired - private QidiService qidiService; - @GetMapping("all") public Object all(){ List projects = projectMapper.selectList(null); @@ -332,280 +301,5 @@ public class Controller { return success; } - //道路统计数据与排名 - @GetMapping("roadData") - @ApiOperation("道路统计数据与排名,根据后台dt调用接口") - public List roadData(){ - return roadDataService.roadData(); - } - - //启迪中台 - //登录 - @GetMapping("qidiToken") - @ApiOperation("启迪数据中台登录获取token") - public String qidiToken(){ - return qidiService.qidiToken(); - } - - //渣土车轨迹数据 - @GetMapping("resCatalogApplyZTYS") - @ApiOperation("获取渣土车轨迹数据,根据后台UPLOADTIME调用接口") - public List resCatalogApply(){ - return qidiService.resCatalogApplyZTYS(); - } - - //环卫车轨迹数据 - @GetMapping("resCatalogApplyHJWS") - @ApiOperation("环卫车轨迹数据,根据后台updatetime调用接口") - public List resCatalogApplyHJWS(){ - return qidiService.resCatalogApplyHJWS(); - } - - //工地信息 - @GetMapping("resCatalogApplyGDYS") - @ApiOperation("获取工地信息-表中获取") - public List resCatalogApplyGDYS(){ - return qidiService.resCatalogApplyGDYS(); - } - - //环卫车辆数据1,基础 - @GetMapping("resCatalogApplyHJWSBase") - @ApiOperation("环卫车辆数据1,基础--根据后台updatetime调用接口") - public List resCatalogApplyHJWSBase(){ - return qidiService.resCatalogApplyHJWSBase(); - } - //环卫车辆数据1,作业 - @GetMapping("resCatalogApplyHJWSZY") - @ApiOperation("环卫车辆数据1,作业--根据后台ZYRQ调用接口") - public List resCatalogApplyHJWSZY(){ - return qidiService.resCatalogApplyHJWSZY(); - } - - //环卫道路明细数据 - @GetMapping("resCatalogApplyHJWSRoad") - @ApiOperation("环卫道路明细数据,根据后台updatetime调用接口") - public List resCatalogApplyHJWSRoad(){ - return qidiService.resCatalogApplyHJWSRoad(); - } - - //获取渣土车轨迹并保存到t_trail_sediment - @GetMapping(value = "saveResCatalogApplyZTYS") - @ApiOperation("取渣土车轨迹并保存到t_trail_sediment,根据后台UPLOADTIME调用接口") - public Result resCatalogApplyZTYS(){ - - boolean result = sedimentTrailService.batchSaveSedimentTrail(); - if(result){ - return Result.success(); - }else{ - return Result.error(String.valueOf(result)); - } - } - - //根据输入的经纬度和查询的半径(米)时间查询范围内的渣土车轨迹信息 - @GetMapping(value = "listSedimentTrailByPoints") - @ApiOperation("渣土车轨迹信息,根据经纬度和半径从表中查询") - @ApiImplicitParams({ - @ApiImplicitParam(name = "longitude", value = "经度", paramType = "query",required = true,dataType ="double"), - @ApiImplicitParam(name = "latitude", value = "纬度", paramType = "query",required = true,dataType ="double"), - @ApiImplicitParam(name = "radius", value = "半径,米", paramType = "query",required = true,dataType ="Integer"), - @ApiImplicitParam(name = "start", value = "开始时间,2021-08-03 10:17:23", paramType = "query",required = true,dataType ="string"), - @ApiImplicitParam(name = "end", value = "结束时间,2021-08-03 12:17:23", paramType = "query",required = true,dataType ="string") - }) - public Result listSedimentTrailByPoints( - @RequestParam(value="longitude") double longitude, - @RequestParam(value="latitude") double latitude, - @RequestParam(value="radius") Integer radius, - @RequestParam(value="start") String start, - @RequestParam(value = "end") String end - ){ - Map> map = sedimentTrailService.listSedimentTrailByPoints(longitude,latitude,radius,start,end); - return Result.success(map); - } - - //测试获取最新的客流列表,从接口获取 - @GetMapping("passengerFlow") - @ApiOperation("获取最新的客流列表,测试接口,调用接口获取") - public List passengerFlow(){ - List list = passengerFlowService.passengerFlow(); - return list; - } - - //获取最新的实时客流列表,从表获取 - @GetMapping("listPassengerFlow") - @ApiOperation("获取最新的实时客流列表,从表获取,热力图") - @ApiImplicitParam(name="timeId",value = "时间点",required = false,paramType = "query",dataType = "string") - public List listPassengerFlow(@RequestParam(value="timeId",required = false,defaultValue = "1970000000") String timeId){ - List list = passengerFlowService.listPassengerFlow(timeId); - return list; - } - //从表中获取最新的客流列表,并筛选出all_nums >=5000的 - @GetMapping("listPassengerFlowByAllNums") - @ApiOperation("从表中获取最新的客流列表,并筛选出all_nums >=5000的") - public List listPassengerFlowByAllNums(){ - List list = passengerFlowService.listPassengerFlowByAllNums(); - return list; - } - - //获取实时客流并保存到表t_passenger_flow - @GetMapping("savePassengerFlow") - @ApiOperation("获取实时客流并保存到表t_passenger_flow,调用接口") - public Result savePassengerFlow(){ - List list = passengerFlowService.passengerFlow(); - boolean result = passengerFlowService.savePassengerFlow(list); - if(result){ - return Result.success(); - }else{ - return Result.error(String.valueOf(result)); - } - } - - //根据输入的经纬度和查询的半径(米)和timeId查询游客总数 - @GetMapping("getPassengerNum") - @ApiOperation("查询游客总数,根据经纬度和半径米、timeId从表中查询") - @ApiImplicitParams({ - @ApiImplicitParam(name = "longitude", value = "经度", paramType = "query",required = false,dataType ="double"), - @ApiImplicitParam(name = "latitude", value = "纬度", paramType = "query",required = false,dataType ="double"), - @ApiImplicitParam(name = "radius", value = "半径,米", paramType = "query",required = false,dataType ="Integer"), - @ApiImplicitParam(name = "timeId", value = "时间点,202205101600", paramType = "query",required = true,dataType ="string"), - }) - public Result getPassengerNum( - @RequestParam(value="longitude",required = false,defaultValue = "0.00") double longitude, - @RequestParam(value="latitude",required = false,defaultValue = "0.00") double latitude, - @RequestParam(value="radius",required = false,defaultValue = "0") Integer radius, - @RequestParam(value="timeId",required = true) String timeId - ){ - return Result.success(passengerFlowService.passengerNums(longitude,latitude,radius,timeId)); - } - - /** - * 查询半径范围内格栅 - * @param longitude - * @param latitude - * @param radius - * @param timeId - * @return - */ - @GetMapping("selectPassenger") - @ApiOperation("查询半径范围内格栅,根据经纬度和半径米、timeId从表中查询") - @ApiImplicitParams({ - @ApiImplicitParam(name = "longitude", value = "经度", paramType = "query",required = false,dataType ="double"), - @ApiImplicitParam(name = "latitude", value = "纬度", paramType = "query",required = false,dataType ="double"), - @ApiImplicitParam(name = "radius", value = "半径,米", paramType = "query",required = false,dataType ="Integer"), - @ApiImplicitParam(name = "timeId", value = "时间点,202205101600", paramType = "query",required = true,dataType ="string"), - }) - public Result selectPassenger(Double longitude,Double latitude,Integer radius,String timeId){ - double[] around = LongLatUtil.getAround(longitude, latitude, radius); - List c = passengerFlowlMapper.selectPassenger(around[0], around[2], around[1], around[3],timeId); - Result success = Result.success(c); - return success; - } - - //查询并保存环卫车轨迹到表t_trail_sanitation - @GetMapping("saveTrailSanitation") - @ApiOperation("保存环卫车轨迹到表t_trail_sanitation,根据后台updatetime调用接口") - public Result saveTrailSanitation(){ - boolean result = trailSanitationService.saveTrailSanitation(); - if(result){ - return Result.success(); - }else{ - return Result.error(String.valueOf(result)); - } - } - - //根据输入的经纬度和查询的半径(米)时间查询范围内的环卫车轨迹信息 - @GetMapping(value = "listTrailSanitationByPoints") - @ApiOperation("查询范围内环卫车轨迹信息,根据经纬度、半径米,时间从表中查询") - @ApiImplicitParams({ - @ApiImplicitParam(name = "longitude", value = "经度", paramType = "query",required = true,dataType ="double"), - @ApiImplicitParam(name = "latitude", value = "纬度", paramType = "query",required = true,dataType ="double"), - @ApiImplicitParam(name = "radius", value = "半径,米", paramType = "query",required = true,dataType ="Integer"), - @ApiImplicitParam(name = "start", value = "开始时间,2021-03-17 00:00:00", paramType = "query",required = true,dataType ="string"), - @ApiImplicitParam(name = "end", value = "结束时间,2021-03-22 00:00:00", paramType = "query",required = true,dataType ="string"), - }) - public Result listTrailSanitationByPoints( - @RequestParam(value="longitude") double longitude, - @RequestParam(value="latitude") double latitude, - @RequestParam(value="radius") Integer radius, - @RequestParam(value="start") String start, - @RequestParam(value = "end") String end - ){ - List list = trailSanitationService.listSedimentTrailByPoints(longitude,latitude,radius,start,end); - return Result.success(list); - } - - /** - * 查询全部环卫车轨迹信息 - * @return - */ - @GetMapping("selectAllTrailSanitation") - @ApiOperation("查询全部环卫车轨迹信息") - public Result selectAllTrailSanitation(){ - List trailSanitations = trailSanitationMapper.selectAllTrailSanitation(); - Result success = Result.success(trailSanitations); - return success; - } - - //查询道路污染数据 - //输入参考:2022-05-10 00:00:00,只能查询当前日期前一天及以前的 - @GetMapping(value="listRoadData") - @ApiOperation("查询道路污染数据,根据dt从表中查询,参考输入-2022-05-10 00:00:00,只能查询当前日期前一天及以前的") - @ApiImplicitParam(name="dt",value = "时间",paramType = "query",required = true,dataType = "string") - public Result listRoadData(@RequestParam(value="dt") String dt){ - List list = roadDataService.listRoadData(dt); - return Result.success(list); - } - //根据输入的日期间隔查询道路污染数据(例如:2022-05-10 00:00:00至2022-05-11 00:00:00) - @GetMapping(value="listRoadDataByTimeRegion") - @ApiOperation("根据输入的日期间隔查询道路污染数据(例如:2022-05-10 00:00:00至2022-05-11 00:00:00)") - @ApiImplicitParams({ - @ApiImplicitParam(name = "start", value = "开始日期", paramType = "query", dataType = "string", required = true), - @ApiImplicitParam(name = "end", value = "结束日期", paramType = "query", dataType = "string", required = true) - }) - public Result listRoadDataByTimeRegion( - @RequestParam(value="start") String start, - @RequestParam(value="end") String end - ){ - List list = roadDataService.listRoadDataByTimeRegion(start,end); - return Result.success(list); - } - - /** - * 查询全部道路污染累计事件数量 - * @return - */ - @GetMapping("selectRoadData") - @ApiOperation("查询全部道路污染累计事件数量") - public Result selectRoadData(){ - List roadData = roadDataService.selectRoadData(); - Result success = Result.success(roadData); - return success; - } - - - //查询工地信息,根据经纬度和半径查询 - @GetMapping(value = "listBuildingSiteByPoints") - @ApiOperation("查询工地信息,根据经纬度和半径从表中查询") - @ApiImplicitParams({ - @ApiImplicitParam(name="longitude",value = "经度",paramType = "query",required = true,dataType = "double"), - @ApiImplicitParam(name="longitude",value = "经度",paramType = "query",required = true,dataType = "double") - }) - public Result listBuildingSiteByPoints(double longitude,double latitude,Integer radius){ - List list = new ArrayList<>(); - list = buildingSitrService.listBuildingSiteByPoints(longitude,latitude,radius); - return Result.success(list); - } - - /** - * 查询全部工地信息 - * @return - */ - @GetMapping("selectBuildSite") - @ApiOperation("查询全部工地信息") - public Result selectBuildSite(){ - List buildingSites = buildingSiteMapper.selectBuildSite(); - Result success = Result.success(buildingSites); - return success; - } - } diff --git a/src/main/java/com/hisense/monitormanage/controller/QiDiController.java b/src/main/java/com/hisense/monitormanage/controller/QiDiController.java new file mode 100644 index 0000000..d44d39a --- /dev/null +++ b/src/main/java/com/hisense/monitormanage/controller/QiDiController.java @@ -0,0 +1,329 @@ +package com.hisense.monitormanage.controller; + +import com.hisense.monitormanage.dto.PassengerFlowDto; +import com.hisense.monitormanage.entity.*; +import com.hisense.monitormanage.mapper.*; +import com.hisense.monitormanage.service.*; +import com.hisense.monitormanage.utils.LongLatUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +@RestController +@RequestMapping("api/project") +@Api(tags = "启迪中台") +public class QiDiController { + @Autowired + private SedimentTrailService sedimentTrailService; + + @Autowired + private PassengerFlowService passengerFlowService; + + @Autowired + private TrailSanitationService trailSanitationService; + + @Autowired + private RoadDataService roadDataService; + + @Autowired + private BuildingSiteService buildingSitrService; + + @Autowired + private BuildingSiteMapper buildingSiteMapper; + + @Autowired + private PassengerFlowMapper passengerFlowlMapper; + + @Autowired + private TrailSanitationMapper trailSanitationMapper; + + @Autowired + private QidiService qidiService; + + //道路统计数据与排名 + @GetMapping("roadData") + @ApiOperation("道路统计数据与排名,根据后台dt调用接口") + public List roadData(){ + return roadDataService.roadData(); + } + + //启迪中台 + //登录 + @GetMapping("qidiToken") + @ApiOperation("启迪数据中台登录获取token") + public String qidiToken(){ + return qidiService.qidiToken(); + } + + //渣土车轨迹数据 + @GetMapping("resCatalogApplyZTYS") + @ApiOperation("获取渣土车轨迹数据,根据后台UPLOADTIME调用接口") + public List resCatalogApply(){ + return qidiService.resCatalogApplyZTYS(); + } + + //环卫车轨迹数据 + @GetMapping("resCatalogApplyHJWS") + @ApiOperation("环卫车轨迹数据,根据后台updatetime调用接口") + public List resCatalogApplyHJWS(){ + return qidiService.resCatalogApplyHJWS(); + } + + //工地信息 + @GetMapping("resCatalogApplyGDYS") + @ApiOperation("获取工地信息-表中获取") + public List resCatalogApplyGDYS(){ + return qidiService.resCatalogApplyGDYS(); + } + + //环卫车辆数据1,基础 + @GetMapping("resCatalogApplyHJWSBase") + @ApiOperation("环卫车辆数据1,基础--根据后台updatetime调用接口") + public List resCatalogApplyHJWSBase(){ + return qidiService.resCatalogApplyHJWSBase(); + } + //环卫车辆数据1,作业 + @GetMapping("resCatalogApplyHJWSZY") + @ApiOperation("环卫车辆数据1,作业--根据后台ZYRQ调用接口") + public List resCatalogApplyHJWSZY(){ + return qidiService.resCatalogApplyHJWSZY(); + } + + //环卫道路明细数据 + @GetMapping("resCatalogApplyHJWSRoad") + @ApiOperation("环卫道路明细数据,根据后台updatetime调用接口") + public List resCatalogApplyHJWSRoad(){ + return qidiService.resCatalogApplyHJWSRoad(); + } + + //获取渣土车轨迹并保存到t_trail_sediment + @GetMapping(value = "saveResCatalogApplyZTYS") + @ApiOperation("取渣土车轨迹并保存到t_trail_sediment,根据后台UPLOADTIME调用接口") + public Result resCatalogApplyZTYS(){ + + boolean result = sedimentTrailService.batchSaveSedimentTrail(); + if(result){ + return Result.success(); + }else{ + return Result.error(String.valueOf(result)); + } + } + + //根据输入的经纬度和查询的半径(米)时间查询范围内的渣土车轨迹信息 + @GetMapping(value = "listSedimentTrailByPoints") + @ApiOperation("渣土车轨迹信息,根据经纬度和半径从表中查询") + @ApiImplicitParams({ + @ApiImplicitParam(name = "longitude", value = "经度", paramType = "query",required = true,dataType ="double"), + @ApiImplicitParam(name = "latitude", value = "纬度", paramType = "query",required = true,dataType ="double"), + @ApiImplicitParam(name = "radius", value = "半径,米", paramType = "query",required = true,dataType ="Integer"), + @ApiImplicitParam(name = "start", value = "开始时间,2021-08-03 10:17:23", paramType = "query",required = true,dataType ="string"), + @ApiImplicitParam(name = "end", value = "结束时间,2021-08-03 12:17:23", paramType = "query",required = true,dataType ="string") + }) + public Result listSedimentTrailByPoints( + @RequestParam(value="longitude") double longitude, + @RequestParam(value="latitude") double latitude, + @RequestParam(value="radius") Integer radius, + @RequestParam(value="start") String start, + @RequestParam(value = "end") String end + ){ + Map> map = sedimentTrailService.listSedimentTrailByPoints(longitude,latitude,radius,start,end); + return Result.success(map); + } + + //测试获取最新的客流列表,从接口获取 + @GetMapping("passengerFlow") + @ApiOperation("获取最新的客流列表,测试接口,调用接口获取") + public List passengerFlow(){ + List list = passengerFlowService.passengerFlow(); + return list; + } + + //获取最新的实时客流列表,从表获取 + @GetMapping("listPassengerFlow") + @ApiOperation("获取最新的实时客流列表,从表获取,热力图") + @ApiImplicitParam(name="timeId",value = "时间点",required = false,paramType = "query",dataType = "string") + public List listPassengerFlow(@RequestParam(value="timeId",required = false,defaultValue = "1970000000") String timeId){ + List list = passengerFlowService.listPassengerFlow(timeId); + return list; + } + //从表中获取最新的客流列表,并筛选出all_nums >=5000的 + @GetMapping("listPassengerFlowByAllNums") + @ApiOperation("从表中获取最新的客流列表,并筛选出all_nums >=5000的") + public List listPassengerFlowByAllNums(){ + List list = passengerFlowService.listPassengerFlowByAllNums(); + return list; + } + + //获取实时客流并保存到表t_passenger_flow + @GetMapping("savePassengerFlow") + @ApiOperation("获取实时客流并保存到表t_passenger_flow,调用接口") + public Result savePassengerFlow(){ + List list = passengerFlowService.passengerFlow(); + boolean result = passengerFlowService.savePassengerFlow(list); + if(result){ + return Result.success(); + }else{ + return Result.error(String.valueOf(result)); + } + } + + //根据输入的经纬度和查询的半径(米)和timeId查询游客总数 + @GetMapping("getPassengerNum") + @ApiOperation("查询游客总数,根据经纬度和半径米、timeId从表中查询") + @ApiImplicitParams({ + @ApiImplicitParam(name = "longitude", value = "经度", paramType = "query",required = false,dataType ="double"), + @ApiImplicitParam(name = "latitude", value = "纬度", paramType = "query",required = false,dataType ="double"), + @ApiImplicitParam(name = "radius", value = "半径,米", paramType = "query",required = false,dataType ="Integer"), + @ApiImplicitParam(name = "timeId", value = "时间点,202205101600", paramType = "query",required = true,dataType ="string"), + }) + public Result getPassengerNum( + @RequestParam(value="longitude",required = false,defaultValue = "0.00") double longitude, + @RequestParam(value="latitude",required = false,defaultValue = "0.00") double latitude, + @RequestParam(value="radius",required = false,defaultValue = "0") Integer radius, + @RequestParam(value="timeId",required = true) String timeId + ){ + return Result.success(passengerFlowService.passengerNums(longitude,latitude,radius,timeId)); + } + + /** + * 查询半径范围内格栅 + * @param longitude + * @param latitude + * @param radius + * @param timeId + * @return + */ + @GetMapping("selectPassenger") + @ApiOperation("查询半径范围内格栅,根据经纬度和半径米、timeId从表中查询") + @ApiImplicitParams({ + @ApiImplicitParam(name = "longitude", value = "经度", paramType = "query",required = false,dataType ="double"), + @ApiImplicitParam(name = "latitude", value = "纬度", paramType = "query",required = false,dataType ="double"), + @ApiImplicitParam(name = "radius", value = "半径,米", paramType = "query",required = false,dataType ="Integer"), + @ApiImplicitParam(name = "timeId", value = "时间点,202205101600", paramType = "query",required = true,dataType ="string"), + }) + public Result selectPassenger(Double longitude,Double latitude,Integer radius,String timeId){ + double[] around = LongLatUtil.getAround(longitude, latitude, radius); + List c = passengerFlowlMapper.selectPassenger(around[0], around[2], around[1], around[3],timeId); + Result success = Result.success(c); + return success; + } + + //查询并保存环卫车轨迹到表t_trail_sanitation + @GetMapping("saveTrailSanitation") + @ApiOperation("保存环卫车轨迹到表t_trail_sanitation,根据后台updatetime调用接口") + public Result saveTrailSanitation(){ + boolean result = trailSanitationService.saveTrailSanitation(); + if(result){ + return Result.success(); + }else{ + return Result.error(String.valueOf(result)); + } + } + + //根据输入的经纬度和查询的半径(米)时间查询范围内的环卫车轨迹信息 + @GetMapping(value = "listTrailSanitationByPoints") + @ApiOperation("查询范围内环卫车轨迹信息,根据经纬度、半径米,时间从表中查询") + @ApiImplicitParams({ + @ApiImplicitParam(name = "longitude", value = "经度", paramType = "query",required = true,dataType ="double"), + @ApiImplicitParam(name = "latitude", value = "纬度", paramType = "query",required = true,dataType ="double"), + @ApiImplicitParam(name = "radius", value = "半径,米", paramType = "query",required = true,dataType ="Integer"), + @ApiImplicitParam(name = "start", value = "开始时间,2021-03-17 00:00:00", paramType = "query",required = true,dataType ="string"), + @ApiImplicitParam(name = "end", value = "结束时间,2021-03-22 00:00:00", paramType = "query",required = true,dataType ="string"), + }) + public Result listTrailSanitationByPoints( + @RequestParam(value="longitude") double longitude, + @RequestParam(value="latitude") double latitude, + @RequestParam(value="radius") Integer radius, + @RequestParam(value="start") String start, + @RequestParam(value = "end") String end + ){ + List list = trailSanitationService.listSedimentTrailByPoints(longitude,latitude,radius,start,end); + return Result.success(list); + } + + /** + * 查询全部环卫车轨迹信息 + * @return + */ + @GetMapping("selectAllTrailSanitation") + @ApiOperation("查询全部环卫车轨迹信息") + public Result selectAllTrailSanitation(){ + List trailSanitations = trailSanitationMapper.selectAllTrailSanitation(); + Result success = Result.success(trailSanitations); + return success; + } + + //查询道路污染数据 + //输入参考:2022-05-10 00:00:00,只能查询当前日期前一天及以前的 + @GetMapping(value="listRoadData") + @ApiOperation("查询道路污染数据,根据dt从表中查询,参考输入-2022-05-10 00:00:00,只能查询当前日期前一天及以前的") + @ApiImplicitParam(name="dt",value = "时间",paramType = "query",required = true,dataType = "string") + public Result listRoadData(@RequestParam(value="dt") String dt){ + List list = roadDataService.listRoadData(dt); + return Result.success(list); + } + //根据输入的日期间隔查询道路污染数据(例如:2022-05-10 00:00:00至2022-05-11 00:00:00) + @GetMapping(value="listRoadDataByTimeRegion") + @ApiOperation("根据输入的日期间隔查询道路污染数据(例如:2022-05-10 00:00:00至2022-05-11 00:00:00)") + @ApiImplicitParams({ + @ApiImplicitParam(name = "start", value = "开始日期", paramType = "query", dataType = "string", required = true), + @ApiImplicitParam(name = "end", value = "结束日期", paramType = "query", dataType = "string", required = true) + }) + public Result listRoadDataByTimeRegion( + @RequestParam(value="start") String start, + @RequestParam(value="end") String end + ){ + List list = roadDataService.listRoadDataByTimeRegion(start,end); + return Result.success(list); + } + + /** + * 查询全部道路污染累计事件数量 + * @return + */ + @GetMapping("selectRoadData") + @ApiOperation("查询全部道路污染累计事件数量") + public Result selectRoadData(){ + List roadData = roadDataService.selectRoadData(); + Result success = Result.success(roadData); + return success; + } + + + //查询工地信息,根据经纬度和半径查询 + @GetMapping(value = "listBuildingSiteByPoints") + @ApiOperation("查询工地信息,根据经纬度和半径从表中查询") + @ApiImplicitParams({ + @ApiImplicitParam(name="longitude",value = "经度",paramType = "query",required = true,dataType = "double"), + @ApiImplicitParam(name="longitude",value = "经度",paramType = "query",required = true,dataType = "double") + }) + public Result listBuildingSiteByPoints(double longitude,double latitude,Integer radius){ + List list = new ArrayList<>(); + list = buildingSitrService.listBuildingSiteByPoints(longitude,latitude,radius); + return Result.success(list); + } + + /** + * 查询全部工地信息 + * @return + */ + @GetMapping("selectBuildSite") + @ApiOperation("查询全部工地信息") + public Result selectBuildSite(){ + List buildingSites = buildingSiteMapper.selectBuildSite(); + Result success = Result.success(buildingSites); + return success; + } + + +} diff --git a/src/main/java/com/hisense/monitormanage/mapper/CameraMapper.java b/src/main/java/com/hisense/monitormanage/mapper/CameraMapper.java index e3c3edf..973a90b 100644 --- a/src/main/java/com/hisense/monitormanage/mapper/CameraMapper.java +++ b/src/main/java/com/hisense/monitormanage/mapper/CameraMapper.java @@ -13,9 +13,4 @@ public interface CameraMapper extends BaseMapper { @Select("SELECT tc.pic,tc.capture_time AS captureTime FROM t_project_mtm_camera pmc JOIN t_camera tc ON pmc.project_id = #{id} AND pmc.camera_id = tc.`code` AND tc.pic IS NOT NULL") List selectPicByProjectId(String id); - @Select("SELECT tp.*,tc.* FROM t_project_mtm_camera pmc JOIN t_camera tc JOIN t_project tp ON pmc.camera_id = tc.`code` AND pmc.project_id = tp.id") - List selectCamera(); - - @Select("SELECT code FROM t_camera") - List selectCameraCodes(); } diff --git a/src/main/java/com/hisense/monitormanage/service/EventService.java b/src/main/java/com/hisense/monitormanage/service/EventService.java index 248474b..4028e3d 100644 --- a/src/main/java/com/hisense/monitormanage/service/EventService.java +++ b/src/main/java/com/hisense/monitormanage/service/EventService.java @@ -1,13 +1,19 @@ package com.hisense.monitormanage.service; +import cn.hutool.crypto.SecureUtil; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.hisense.monitormanage.entity.Event; +import com.hisense.monitormanage.mapper.EventMapper; import lombok.extern.log4j.Log4j2; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.*; import org.springframework.stereotype.Service; import org.springframework.web.client.RestTemplate; +import java.math.BigDecimal; import java.util.HashMap; +import java.util.List; import java.util.Map; @Service @@ -17,6 +23,9 @@ public class EventService { @Autowired private RestTemplate restTemplate; + @Autowired + private EventMapper eventMapper; + //1.登录 //2.获取token public String shangtangToken () { @@ -90,4 +99,32 @@ public class EventService { } + public void screenshot(){ + String url = "http://218.58.65.132:2580/api/haixin"; + QueryWrapper queryWrapper = new QueryWrapper<>(); + List events = eventMapper.selectList(queryWrapper); + events.forEach(event -> { + String key = "NcjzgcBOJaD79xQm"; + String sign = "cjname=" + event.getEventCnName() + "&datetime=" + event.getCaptureTime() + "&piclatitude=" + event.getLatitude() + + "&piclongitude=" + event.getLongitude() + "&resultpicurl1=" + event.getImageUrl()+ "&vidorpic=" + 0 + "&key=" + key; + Map map = new HashMap<>(); + map.put("cjname",event.getEventCnName()); + map.put("datetime",event.getCaptureTime()); + map.put("vidorpic",0); + map.put("resultpicurl1",event.getImageUrl()); + map.put("piclongitude",event.getLongitude()); + map.put("piclatitude",event.getLatitude()); + map.put("sign", SecureUtil.md5(sign)); + ResponseEntity responseEntity; + try { + responseEntity = restTemplate.postForEntity(url,map,JSONObject.class); + JSONObject body = responseEntity.getBody(); + System.out.println(body); + }catch (Exception e){ + log.info("[screenshot] exception:{}", e.getMessage()); + } + }); + + } + } diff --git a/src/main/java/com/hisense/monitormanage/service/PassengerFlowService.java b/src/main/java/com/hisense/monitormanage/service/PassengerFlowService.java index 459d98b..e897e3a 100644 --- a/src/main/java/com/hisense/monitormanage/service/PassengerFlowService.java +++ b/src/main/java/com/hisense/monitormanage/service/PassengerFlowService.java @@ -58,9 +58,7 @@ public class PassengerFlowService { */ //{"APIKEY":"202204141052331249fcc8-046","ParamJson":{"data":"{\"appId\":\"apitest\",\"mac\":\"f51093001255129b88deba6c5045ee26\",\"timeStamp\":\"20220510152759\",\"hourId\":\"2022051013\",\"timeId\":\"202205101300\"}"}} public List passengerFlow(){ - //JSONObject map = new JSONObject(); Map map = new HashMap<>(); - //MultiValueMap map = new LinkedMultiValueMap<>(); DateTimeFormatter dateTimeFormatter1 = DateTimeFormatter.ofPattern("yyyyMMddHHmmss"); LocalDateTime dateNow = LocalDateTime.now(); @@ -78,7 +76,6 @@ public class PassengerFlowService { jsonObject.put("timeStamp",timeStamp); jsonObject.put("hourId",tt[1]); jsonObject.put("timeId",tt[0]); - //jsonObject.put("apiType","***"); JSONObject para = new JSONObject(); para.put("data",JSONObject.toJSONString(jsonObject)); map.put("ParamJson",para); @@ -89,10 +86,8 @@ public class PassengerFlowService { List list = new ArrayList<>(); try{ responseEntity = restTemplate.postForEntity(url,map,String.class); - //System.out.println(responseEntity.getStatusCodeValue()); if(responseEntity.getStatusCodeValue() == 200){ String result = responseEntity.getBody(); - //System.out.println("passengerFlow ->"+result); JSONObject jsonResult = JSONObject.parseObject(result); System.out.println(jsonResult.keySet().toString()); if(jsonResult.getIntValue("code") == 0){ @@ -134,9 +129,7 @@ public class PassengerFlowService { //10:31 到晚上10:31,每小时的31分执行一次 public void passengerFlowSchedule(){ if (enable){ - //JSONObject map = new JSONObject(); Map map = new HashMap<>(); - //MultiValueMap map = new LinkedMultiValueMap<>(); DateTimeFormatter dateTimeFormatter1 = DateTimeFormatter.ofPattern("yyyyMMddHHmmss"); LocalDateTime dateNow = LocalDateTime.now(); @@ -154,7 +147,6 @@ public class PassengerFlowService { jsonObject.put("timeStamp",timeStamp); jsonObject.put("hourId",tt[1]); jsonObject.put("timeId",tt[0]); - //jsonObject.put("apiType","***"); JSONObject para = new JSONObject(); para.put("data",JSONObject.toJSONString(jsonObject)); map.put("ParamJson",para); @@ -164,10 +156,8 @@ public class PassengerFlowService { List list = new ArrayList<>(); try{ responseEntity = restTemplate.postForEntity(url,map,String.class); - //System.out.println(responseEntity.getStatusCodeValue()); if(responseEntity.getStatusCodeValue() == 200){ String result = responseEntity.getBody(); - //System.out.println("passengerFlow ->"+result); JSONObject jsonResult = JSONObject.parseObject(result); System.out.println(jsonResult.keySet().toString()); if(jsonResult.getIntValue("code") == 0){ @@ -197,14 +187,6 @@ public class PassengerFlowService { //根据半径,一个经纬度和timeId查询游客总数 public JSONObject passengerNums(double longitude, double latitude, Integer radius,String timeId){ - /*QueryWrapper wrapper = new QueryWrapper<>(); - if(Double.doubleToLongBits(longitude) == Double.doubleToLongBits(0.00) || Double.doubleToLongBits(latitude) == Double.doubleToLongBits(0.00)){ - wrapper.eq("time_id",timeId); - }else{ - double[] points = LongLatUtil.getAround(longitude,latitude,radius); - wrapper.eq("time_id",timeId).between("longitude",points[0],points[2]).between("latitude",points[1],points[3]); - }*/ - int allCount = 0; int localCount = 0; int nonLocalCount = 0; @@ -270,15 +252,6 @@ public class PassengerFlowService { }else{ t1 = time1.substring(0,time1.length() -2)+String.valueOf(15*i); } -// if(0 < Integer.parseInt(mm) &&Integer.parseInt(mm)<=30){ -// t1 = time1.substring(0,time1.length() -2)+"00"; -// }else if(Integer.parseInt(mm) > 30){ -// LocalDateTime lastHour = LocalDateTime.parse(time1,dateTimeFormatter).plus(1,ChronoUnit.HOURS); -// t1 = lastHour.format(dateTimeFormatter2)+"30"; -// }else{ -// t1 = time1; -// } - t2 = t1.substring(0,t1.length()-2); System.out.println("t1->"+t1+"...t2->"+t2); return new String[]{t1,t2}; diff --git a/src/main/java/com/hisense/monitormanage/service/QidiService.java b/src/main/java/com/hisense/monitormanage/service/QidiService.java index 02811db..d90db50 100644 --- a/src/main/java/com/hisense/monitormanage/service/QidiService.java +++ b/src/main/java/com/hisense/monitormanage/service/QidiService.java @@ -71,10 +71,6 @@ public class QidiService { search.put("opt","LIKE"); search.put("key","UPLOADTIME"); search.put("val",this.dateStr()); - -// search.put("opt","EQ"); -// search.put("key","SPEED"); -// search.put("val","0"); map.put("json",search); String url = "http://120.221.95.13:9090/catalog/resCatalogApply/getData/UC_QUERY_ZTYS_307013600000000022_2?search=[{json}]"; @@ -106,9 +102,6 @@ public class QidiService { search.put("opt","LIKE"); search.put("key","updatetime"); search.put("val",this.dateStr()); -// search.put("opt","EQ"); -// search.put("key","SIMKH"); -// search.put("val","13302959786"); map.put("json",search); HttpEntity> request = new HttpEntity<>(null, headers); @@ -127,7 +120,6 @@ public class QidiService { //工地信息 public List resCatalogApplyGDYS () { String token = this.qidiToken(); - //String url = "http://120.221.95.13:9090/catalog/resCatalogApply/getData/UC_QUERY_ZTYS_307013600000000025_1?search=[{json}]"; String url = "http://120.221.95.13:9090/catalog/resCatalogApply/getData/UC_QUERY_ZTYS_307013600000000025_1"; HttpHeaders headers = new HttpHeaders(); headers.add("Authorization", "Bearer " + token); @@ -137,15 +129,11 @@ public class QidiService { search.put("opt","LIKE"); search.put("key","updatetime"); search.put("val",this.dateStr()); -// search.put("opt","EQ"); -// search.put("key","SSDQ"); -// search.put("val","西海岸新区"); map.put("json",search); HttpEntity> request = new HttpEntity<>(null, headers); ResponseEntity responseEntity; try { - //responseEntity = restTemplate.exchange(url, HttpMethod.GET, request, JSONObject.class,map); responseEntity = restTemplate.exchange(url, HttpMethod.GET, request, JSONObject.class); JSONObject jsonObject = responseEntity.getBody(); JSONArray jsonArray = jsonObject.getJSONArray("list"); @@ -159,16 +147,12 @@ public class QidiService { //环卫车辆数据1,基础 public List resCatalogApplyHJWSBase () { String token = this.qidiToken(); - //String url = "http://120.221.95.13:9090/catalog/resCatalogApply/getData/UC_QUERY_HJWS_307013400000000365_1?search=[{json}]"; String url = "http://120.221.95.13:9090/catalog/resCatalogApply/getData/UC_QUERY_HJWS_307013400000000365_1"; HttpHeaders headers = new HttpHeaders(); headers.add("Authorization", "Bearer " + token); Map map = new HashMap<>(); JSONObject search = new JSONObject(); -// search.put("opt","LIKE"); -// search.put("key","updatetime"); -// search.put("val",this.dateStr()); search.put("opt","EQ"); search.put("key","SSQY"); search.put("val","胶州市"); @@ -177,7 +161,6 @@ public class QidiService { HttpEntity> request = new HttpEntity<>(null, headers); ResponseEntity responseEntity; try { - //responseEntity = restTemplate.exchange(url, HttpMethod.GET, request, JSONObject.class,map); responseEntity = restTemplate.exchange(url, HttpMethod.GET, request, JSONObject.class); JSONObject jsonObject = responseEntity.getBody(); JSONArray jsonArray = jsonObject.getJSONArray("list"); @@ -192,22 +175,17 @@ public class QidiService { public List resCatalogApplyHJWSZY () { String token = this.qidiToken(); String url = "http://120.221.95.13:9090/catalog/resCatalogApply/getData/UC_QUERY_HJWS_307013400000000363_1"; - //String url = "http://120.221.95.13:9090/catalog/resCatalogApply/getData/UC_QUERY_HJWS_307013400000000363_1?search=[{json}]"; HttpHeaders headers = new HttpHeaders(); headers.add("Authorization", "Bearer " + token); Map map = new HashMap<>(); JSONObject search = new JSONObject(); -// search.put("opt","LIKE"); -// search.put("key","ZYRQ"); -// search.put("val",this.dateStr()); map.put("json",search); HttpEntity> request = new HttpEntity<>(null, headers); ResponseEntity responseEntity; try { responseEntity = restTemplate.exchange(url, HttpMethod.GET, request, JSONObject.class,map); - //responseEntity = restTemplate.exchange(url, HttpMethod.GET, request, JSONObject.class,map); JSONObject jsonObject = responseEntity.getBody(); JSONArray jsonArray = jsonObject.getJSONArray("list"); return JSONObject.parseArray(JSONObject.toJSONString(jsonArray), Map.class); @@ -244,24 +222,14 @@ public class QidiService { public List resCatalogApplyHJWSRoad () { String token = this.qidiToken(); String url = "http://120.221.95.13:9090/catalog/resCatalogApply/getData/UC_QUERY_HJWS_307013400000000370_2"; - //String url = "http://120.221.95.13:9090/catalog/resCatalogApply/getData/UC_QUERY_HJWS_307013400000000370_2?search=[{json}]"; HttpHeaders headers = new HttpHeaders(); headers.add("Authorization", "Bearer " + token); Map map = new HashMap<>(); - // JSONObject search = new JSONObject(); -// search.put("opt","LIKE"); -// search.put("key","updatetime"); -// search.put("val",this.dateStr()); -// search.put("opt","EQ"); -// search.put("key","QDLKDLMC"); -// search.put("val","宜昌路"); -// map.put("json",search); HttpEntity> request = new HttpEntity<>(null, headers); ResponseEntity responseEntity; try { - //responseEntity = restTemplate.exchange(url, HttpMethod.GET, request, JSONObject.class,map); responseEntity = restTemplate.exchange(url, HttpMethod.GET, request, JSONObject.class); JSONObject jsonObject = responseEntity.getBody(); JSONArray jsonArray = jsonObject.getJSONArray("list"); diff --git a/src/main/java/com/hisense/monitormanage/service/SJZTService.java b/src/main/java/com/hisense/monitormanage/service/SJZTService.java index adcf06f..6d0b5bb 100644 --- a/src/main/java/com/hisense/monitormanage/service/SJZTService.java +++ b/src/main/java/com/hisense/monitormanage/service/SJZTService.java @@ -87,7 +87,6 @@ public class SJZTService { JSONObject search = new JSONObject(); search.put("opt","LIKE"); search.put("key","WTLYMC"); -// search.put("val",this.dateStr()); search.put("val","微信举报"); map.put("json",search); @@ -97,7 +96,6 @@ public class SJZTService { List maps = new ArrayList<>(); do{ String url = "http://120.221.95.13:9090/catalog/resCatalogApply/getData/UC_QUERY_QDZWT_307013311122000064_1?pageSize=10000&pageNo={1}&search=[{2}]"; - //String url = "http://120.221.95.13:9090/catalog/resCatalogApply/getData/UC_QUERY_QDZWT_307013311122000064_1?pageSize=1&pageNo=1&search={json}"; HttpEntity httpEntity = new HttpEntity<>(null, headers); ResponseEntity responseEntity; try { @@ -139,7 +137,6 @@ public class SJZTService { List mapList = new ArrayList<>(); do{ String url = "http://120.221.95.13:9090/catalog/resCatalogApply/getData/UC_QUERY_QDZWT_307013311122000064_1?pageSize=10000&pageNo={1}&search=[{2}]"; - //String url = "http://120.221.95.13:9090/catalog/resCatalogApply/getData/UC_QUERY_QDZWT_307013311122000064_1?pageSize=1&pageNo=1&search={json}"; HttpEntity httpEntity = new HttpEntity<>(null, headers); ResponseEntity responseEntity; try {