| | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.JSONArray; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.stylefeng.guns.core.util.ToolUtil; |
| | | import com.stylefeng.guns.modular.system.util.videoGateway.model.*; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.apache.commons.lang.StringUtils; |
| | |
| | | HttpRequest post = HttpUtil.createPost("https://zhyn.cg.gz.gov.cn/map/web/vehicleCtrl/" + terminalId + "/cameraShot"); |
| | | post.header("operate-terminal", "4"); |
| | | post.header("token", accountLogin.getToken()); |
| | | log.info("【2018年协议发送拍摄指令接口】请求地址:" + post.getUrl()); |
| | | Map<String, Object> body = new HashMap<>(); |
| | | body.put("channelId", channelId); |
| | | log.info("【2018年协议发送拍摄指令接口】请求参数:" + JSON.toJSONString(body)); |
| | |
| | | log.error("token失效,重新登录"); |
| | | if(num == 3){ |
| | | log.error("token失效,请联系管理员"); |
| | | return null; |
| | | throw new RuntimeException("token失效,请联系管理员"); |
| | | } |
| | | num++; |
| | | accountLogin = null; |
| | |
| | | Integer code = result.getInteger("code"); |
| | | if(0 != code){ |
| | | log.error(result.getString("msg")); |
| | | return null; |
| | | throw new RuntimeException("【2018年协议发送拍摄指令接口】失败:" + execute.body()); |
| | | } |
| | | //返回文件ID |
| | | return result.getString("data"); |
| | | String data = result.getString("data"); |
| | | if(ToolUtil.isEmpty(data)){ |
| | | if(num == 12){ |
| | | log.error(result.getString("msg")); |
| | | throw new RuntimeException("【2018年协议发送拍摄指令接口】12次(1分钟)失败:" + execute.body()); |
| | | } |
| | | num++; |
| | | try { |
| | | Thread.sleep(5000); |
| | | } catch (InterruptedException e) { |
| | | throw new RuntimeException(e); |
| | | } |
| | | return cameraShot2018(terminalId, channelId, num); |
| | | } |
| | | return data; |
| | | } |
| | | |
| | | |
| | |
| | | HttpRequest get = HttpUtil.createGet("https://zhyn.cg.gz.gov.cn/api/cws-business/biz-device-send-records/v1/cameraShot?vehicleId=" + vehicleId + "&vehicleType=" + vehicleType + "&terminalId=" + terminalId + "&channelId=" + channelId); |
| | | get.header("operate-terminal", "4"); |
| | | get.header("token", accountLogin.getToken()); |
| | | Map<String, Object> body = new HashMap<>(); |
| | | log.info("【2023年协议发送拍摄指令接口】请求参数:" + get.getUrl()); |
| | | HttpResponse execute = get.execute(); |
| | | if(401 == execute.getStatus()){ |
| | | log.error("token失效,重新登录"); |
| | | if(num == 3){ |
| | | log.error("token失效,请联系管理员"); |
| | | return null; |
| | | throw new RuntimeException("token失效,请联系管理员"); |
| | | } |
| | | num++; |
| | | accountLogin = null; |
| | |
| | | Integer code = result.getInteger("code"); |
| | | if(0 != code){ |
| | | log.error(result.getString("msg")); |
| | | return null; |
| | | throw new RuntimeException("【2023年协议发送拍摄指令接口】失败:" + execute.body()); |
| | | } |
| | | //返回文件ID |
| | | return result.getString("data"); |
| | | String data = result.getString("data"); |
| | | if(ToolUtil.isEmpty(data)){ |
| | | if(num == 12){ |
| | | log.error(result.getString("msg")); |
| | | throw new RuntimeException("【2023年协议发送拍摄指令接口】12次(1分钟)失败:" + execute.body()); |
| | | } |
| | | num++; |
| | | try { |
| | | Thread.sleep(5000); |
| | | } catch (InterruptedException e) { |
| | | throw new RuntimeException(e); |
| | | } |
| | | return cameraShot2023(vehicleId, vehicleType, terminalId, channelId, num); |
| | | } |
| | | return data; |
| | | } |
| | | |
| | | |
| | |
| | | log.error("token失效,重新登录"); |
| | | if(num == 3){ |
| | | log.error("token失效,请联系管理员"); |
| | | return null; |
| | | throw new RuntimeException("token失效,请联系管理员"); |
| | | } |
| | | num++; |
| | | accountLogin = null; |
| | |
| | | Integer code = result.getInteger("code"); |
| | | if(0 != code){ |
| | | log.error(result.getString("msg")); |
| | | return null; |
| | | throw new RuntimeException("【2018年协议车辆获取拍摄图片】失败:" + execute.body()); |
| | | } |
| | | //图片地址 |
| | | String data = result.getString("data"); |
| | | if(null == data){ |
| | | return null; |
| | | if(ToolUtil.isEmpty(data)){ |
| | | if(num == 12){ |
| | | log.error(result.getString("msg")); |
| | | throw new RuntimeException("【2018年协议车辆获取拍摄图片】12次(1分钟)失败:" + execute.body()); |
| | | } |
| | | num++; |
| | | try { |
| | | Thread.sleep(5000); |
| | | } catch (InterruptedException e) { |
| | | throw new RuntimeException(e); |
| | | } |
| | | return getCameraShotByFileId2018(terminalId, fileId, num); |
| | | } |
| | | data = data.replaceAll(";", ""); |
| | | return "https://zhyn-pic.cg.gz.gov.cn" + data; |
| | | } |
| | | |
| | |
| | | log.error("token失效,重新登录"); |
| | | if(num == 3){ |
| | | log.error("token失效,请联系管理员"); |
| | | return null; |
| | | throw new RuntimeException("token失效,请联系管理员"); |
| | | } |
| | | num++; |
| | | accountLogin = null; |
| | |
| | | Integer code = result.getInteger("code"); |
| | | if(0 != code){ |
| | | log.error(result.getString("msg")); |
| | | return null; |
| | | throw new RuntimeException("【2023年协议车辆获取拍摄图片】失败:" + execute.body()); |
| | | } |
| | | //图片地址 |
| | | String data = result.getString("data"); |
| | | if(null == data){ |
| | | return null; |
| | | if(ToolUtil.isEmpty(data)){ |
| | | if(num == 12){ |
| | | log.error(result.getString("msg")); |
| | | throw new RuntimeException("【2023年协议车辆获取拍摄图片】12次(1分钟)失败:" + execute.body()); |
| | | } |
| | | num++; |
| | | try { |
| | | Thread.sleep(5000); |
| | | } catch (InterruptedException e) { |
| | | throw new RuntimeException(e); |
| | | } |
| | | return getCameraShotByFileId2023(fileId, num); |
| | | } |
| | | data = data.replaceAll(";", ""); |
| | | return "https://zhyn-pic.cg.gz.gov.cn" + data; |
| | | } |
| | | |
| | |
| | | // locationRealTimeInfoCache(0); |
| | | |
| | | |
| | | List<Vehicle> 粤AFX998 = VideoGateway.getVehicleList("粤AFX998", null, null, 0); |
| | | System.err.println(粤AFX998); |
| | | List<VehicleOnline> vehicleOnlines = queryRuntimeInfoByCache(0); |
| | | System.err.println(vehicleOnlines); |
| | | } |
| | | |
| | | // public static void main(String[] args) { |