| | |
| | | package com.ruoyi.sy.controller; |
| | | |
| | | import java.io.UnsupportedEncodingException; |
| | | import java.net.URLEncoder; |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.*; |
| | | import javax.annotation.PostConstruct; |
| | | import javax.annotation.Resource; |
| | |
| | | |
| | | @GetMapping("getCarPicture") |
| | | @ApiOperation("清淤获取照片") |
| | | public AjaxResult getCarNearPositionByCarId(String carId){ |
| | | public AjaxResult getCarNearPositionByCarId(String carId) throws UnsupportedEncodingException { |
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss"); |
| | | Date currentTime = new Date(); |
| | | long tenSeconds = 1000L; |
| | | Date beforeTenSeconds = new Date(currentTime.getTime() - tenSeconds); |
| | | String startTime = sdf.format(beforeTenSeconds); |
| | | String usersId = SecurityUtils.getUserId(); |
| | | ArdSyUser ardSyUser = iArdSyUserService.userById(usersId); |
| | | String syURL = sysConfigService.getSYURL(); |
| | | //获取摄像通道信息 |
| | | Map<String, Object> result = ardSyCarService.getCarPicture(carId,syURL,ardSyUser); |
| | | String vs = ""; |
| | | try { |
| | | //提取通道信息 |
| | | Map<String,Object> map = ((List<Map<String,Object>>)result.get("list")).get(0); |
| | | Map<String, Object> videos = (Map<String, Object>) JSON.parse((String) map.get("videos")); |
| | | // System.out.println(videos); |
| | | vs = (String) videos.get("vs"); |
| | | } catch (Exception e) { |
| | | return AjaxResult.error("该车辆没有摄像通道无照片数据!"); |
| | | } |
| | | return AjaxResult.success(vs); |
| | | //筛选通道信息 |
| | | String[] vsArray = vs.split(","); |
| | | List<String> channelList = new ArrayList<>(); |
| | | for (int i = 0; i < vsArray.length; i++) { |
| | | channelList.add(vsArray[i].substring(0,1)); |
| | | } |
| | | //拍照 |
| | | Map<String,Object> sendCmdMap = ardSyCarService.sendCmd(syURL,ardSyUser,carId,channelList); |
| | | // System.out.println(sendCmdMap); |
| | | //获取照片 |
| | | Map<String,Object> photoMap = ardSyCarService.getPhoto(syURL,carId,ardSyUser,startTime); |
| | | // System.out.println(photoMap); |
| | | return AjaxResult.success(photoMap); |
| | | } |
| | | |
| | | @GetMapping("getVideo") |
| | | @ApiOperation("清淤获取视频") |
| | | public AjaxResult getVideo(String carId){ |
| | | String usersId = SecurityUtils.getUserId(); |
| | | ArdSyUser ardSyUser = iArdSyUserService.userById(usersId); |
| | | String syURL = sysConfigService.getSYURL(); |
| | | Map<String,Object> video = ardSyCarService.getVideo(syURL,carId,ardSyUser); |
| | | return AjaxResult.success(video); |
| | | } |
| | | |
| | | } |
| | |
| | | private String alarmLng; |
| | | private String alarmLat; |
| | | private String carModel; |
| | | private String drct; |
| | | } |
| | |
| | | String deptNum = (String) result.get("deptId").toString();//获取部门ID |
| | | String deptName = (String) result.get("deptName");//获取部门名称 |
| | | String carModel = (String) result.get("carModel");//获取车辆模型 |
| | | String drct = (String) gpsMap.get("drct");//获取车辆模型 |
| | | //定义2维空间 |
| | | Point2D.Double point = new Point2D.Double(Double.parseDouble(lng), Double.parseDouble(lat)); |
| | | List<Point2D.Double> pts = new ArrayList<Point2D.Double>(); |
| | |
| | | ardAccessFence1.setNowWallName(ardOilWall.getName()); |
| | | ardAccessFence1.setCarModel(carModel); |
| | | ardAccessFence1.setIsWarning(0); |
| | | ardAccessFence1.setDrct(drct); |
| | | ((ArdAccessFenceServiceImpl)SpringUtils.getBean("ArdAccessFenceServiceImpl")).access(ardAccessFence1); |
| | | break; |
| | | } |
| | |
| | | package com.ruoyi.sy.service; |
| | | |
| | | import java.io.UnsupportedEncodingException; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | |
| | | |
| | | Map<String, Object> getCarPicture(String carId, String syURL, ArdSyUser ardSyUser); |
| | | |
| | | Map<String, Object> sendCmd(String syURL,ArdSyUser ardSyUser,String carId, List<String> channelList) throws UnsupportedEncodingException; |
| | | |
| | | Map<String, Object> getPhoto(String syURL,String carId,ArdSyUser ardSyUser,String startTime); |
| | | |
| | | Map<String, Object> getVideo(String syURL,String carId,ArdSyUser ardSyUser); |
| | | |
| | | /** |
| | | * 根据用户及车辆主键追踪车辆 |
| | | */ |
| | |
| | | |
| | | import java.io.IOException; |
| | | import java.io.InputStream; |
| | | import java.io.UnsupportedEncodingException; |
| | | import java.net.URLEncoder; |
| | | import java.text.ParseException; |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.*; |
| | |
| | | } |
| | | |
| | | @Override |
| | | public Map<String, Object> sendCmd(String syURL, ArdSyUser ardSyUser, String carId, List<String> channelList) throws UnsupportedEncodingException { |
| | | //31用户名密码 |
| | | String userId = ardSyUser.getUserId(); |
| | | String password31 = ardSyUser.getPassword(); |
| | | String password = DigestUtils.md5Hex(password31); |
| | | Map<String, Object> result1 = sYClient.logIn(syURL, password, userId); |
| | | Map<String, Object> sendCmdMap = new HashMap(); |
| | | // for (int i = 0; i < channelList.size(); i++) { |
| | | Map<String,String> params = new HashMap(); |
| | | params.put("channel", channelList.get(1));//选择通道1 |
| | | params.put("interval", "0");//每隔0s照一次 |
| | | params.put("photoNum", "1");//照1张 |
| | | params.put("action", "0");//上传模式 |
| | | String paramsStr = com.alibaba.fastjson2.JSON.toJSONString(params); |
| | | paramsStr = URLEncoder.encode(paramsStr,"UTF-8"); |
| | | System.out.println(paramsStr); |
| | | sendCmdMap = sYClient.sendCmd(syURL,userId,carId,301,"MediaTake",paramsStr,(String) result1.get("sessionId")); |
| | | // } |
| | | return sendCmdMap; |
| | | } |
| | | |
| | | @Override |
| | | public Map<String, Object> getPhoto(String syURL, String carId, ArdSyUser ardSyUser,String startTime) { |
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss"); |
| | | //31用户名密码 |
| | | String username31 = ardSyUser.getUserId(); |
| | | String password31 = ardSyUser.getPassword(); |
| | | String passwordMd5 = DigestUtils.md5Hex(password31); |
| | | // System.out.println(username31+"----------"+passwordMd5); |
| | | Map<String, Object> result1 = sYClient.logIn(syURL, passwordMd5, username31); |
| | | Map<String, Object> photoMap = new HashMap(); |
| | | photoMap = sYClient.getPhoto(syURL,carId,startTime,sdf.format(new Date()),(String) result1.get("sessionId")); |
| | | return photoMap; |
| | | } |
| | | |
| | | @Override |
| | | public Map<String, Object> getVideo(String syURL,String carId,ArdSyUser ardSyUser) { |
| | | //31用户名密码 |
| | | String username = ardSyUser.getUserId(); |
| | | String password31 = ardSyUser.getPassword(); |
| | | String password = DigestUtils.md5Hex(password31); |
| | | // Map<String, Object> result1 = sYClient.logIn(syURL, passwordMd5, username31); |
| | | return sYClient.getVideo(syURL,username,password,"黑E12401",1); |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public Results chaseCarByCarId(String usersId, String carId, String cycle) { |
| | | try { |
| | | /*Map<String,Map<String,Object>> map = new HashMap(); |
| | |
| | | |
| | | @Get(url = "${syURL}/gps-web/api/get_car_list.jsp?carIds=${carId}&detail=true&sessionId=${sessionId}") |
| | | Map<String,Object> getCarPicture(@Var("syURL") String syURL, @Var("carId") String carId,@Var("sessionId") String sessionId); |
| | | |
| | | @Get(url = "${syURL}/gps-web/api/send_cmd.jsp?params=${paramsStr}&userId=${userId}&carId=${carId}&cmdId=${cmdId}&cmd=${cmd}&sessionId=${sessionId}") |
| | | Map<String,Object> sendCmd(@Var("syURL") String syURL, @Var("userId") String userId, @Var("carId") String carId,@Var("cmdId") Integer cmdId,@Var("cmd") String cmd,@Var("paramsStr") String paramsStr,@Var("sessionId") String sessionId); |
| | | |
| | | @Get(url = "${syURL}/gps-web/api/get_photo_h.jsp?carId=${carId}&startTime=${startTime}&endTime=${endTime}&sessionId=${sessionId}") |
| | | Map<String,Object> getPhoto(@Var("syURL") String syURL, @Var("carId") String carId,@Var("startTime") String startTime,@Var("endTime") String endTime,@Var("sessionId") String sessionId); |
| | | |
| | | @Get(url = "${syURL}/gps-web/api/video/realplay.jsp?username=${username}&password=${password}&plate=${plate}&color=${color}") |
| | | Map<String,Object> getVideo(@Var("syURL") String syURL, @Var("username") String username,@Var("password") String password,@Var("plate") String plate,@Var("color") Integer color); |
| | | |
| | | } |