| | |
| | | upWarnMsgOperationInfoDao.save(upWarnMsgOperationInfo); |
| | | //修改报警处理结果 |
| | | UPWarnMsgAdptInfo upWarnMsgAdptInfo = upWarnMsgAdptInfoDao.findByInfoIdIs(upWarnMsgOperationInfo.getInfoId()); |
| | | upWarnMsgAdptInfo.setResult(upWarnMsgOperationInfo.getResult()); |
| | | upWarnMsgAdptInfoDao.save(upWarnMsgAdptInfo); |
| | | if(null != upWarnMsgAdptInfo){ |
| | | upWarnMsgAdptInfo.setResult(upWarnMsgOperationInfo.getResult()); |
| | | upWarnMsgAdptInfoDao.save(upWarnMsgAdptInfo); |
| | | } |
| | | } |
| | | |
| | | |
| | |
| | | upWarnMsgFileListAck.setInferiorPlatformId(inferiorPlatformId); |
| | | upWarnMsgFileListAck.setCreateTime(LocalDateTime.now().toEpochSecond(ZoneOffset.ofHours(8))); |
| | | upWarnMsgFileListAckDao.save(upWarnMsgFileListAck); |
| | | //修改报警处理结果 |
| | | //修改报警附件数据 |
| | | UPWarnMsgAdptInfo upWarnMsgAdptInfo = upWarnMsgAdptInfoDao.findByInfoIdIs(upWarnMsgFileListAck.getInfoId()); |
| | | StringJoiner joiner = new StringJoiner(","); |
| | | upWarnMsgFileListAck.getFileList().forEach(file->{ |
| | | if(file.getFileType() == 0x00){ |
| | | joiner.add(file.getFileUrl()); |
| | | } |
| | | }); |
| | | upWarnMsgAdptInfo.setPicUrl(joiner.toString()); |
| | | if(upWarnMsgFileListAck.getFileList().size() > 0){ |
| | | StringJoiner joiner = new StringJoiner(","); |
| | | upWarnMsgFileListAck.getFileList().forEach(file->{ |
| | | if(file.getFileType() == 0x00){ |
| | | joiner.add(file.getFileUrl()); |
| | | } |
| | | }); |
| | | upWarnMsgAdptInfo.setPicUrl(joiner.toString()); |
| | | }else{ |
| | | upWarnMsgAdptInfo.setPicUrl("*"); |
| | | } |
| | | upWarnMsgAdptInfoDao.save(upWarnMsgAdptInfo); |
| | | } |
| | | |
| | | |
| | | |
| | | /** |
| | | * 定时任务督办报警请求 |
| | | * 定时任务督办报警请求和附件请求 |
| | | */ |
| | | public void taskUrgeTodo() { |
| | | List<UPWarnMsgAdptInfo> list = upWarnMsgAdptInfoDao.findByResultIsAndLevelNotNullAndPushTimeBefore(0x00, LocalDateTime.now().toEpochSecond(ZoneOffset.ofHours(8))); |
| | |
| | | //海康威视直接走接口 |
| | | if(25439966 == inferiorPlatformId){ |
| | | try { |
| | | if("***".equals(upWarnMsgAdptInfo.getPicUrl())){ |
| | | if(!StringUtils.hasLength(upWarnMsgAdptInfo.getPicUrl())){ |
| | | FindPicturesByAlarmIdRequest findPicturesByAlarmIdRequest = new FindPicturesByAlarmIdRequest(); |
| | | findPicturesByAlarmIdRequest.setAlarmId(upWarnMsgAdptInfo.getInfoId()); |
| | | long warnTime = upWarnMsgAdptInfo.getWarnTime(); |
| | | findPicturesByAlarmIdRequest.setAlarmTime(LocalDateTime.ofEpochSecond(warnTime, 0, ZoneOffset.ofHours(8)).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); |
| | | String format = LocalDateTime.ofEpochSecond(warnTime, 0, ZoneOffset.ofHours(8)).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS")); |
| | | format = format.replace(" ", "T") + "+08:00"; |
| | | findPicturesByAlarmIdRequest.setAlarmTime(format); |
| | | String pictures = Artemis.findPicturesByAlarmId(findPicturesByAlarmIdRequest); |
| | | JSONObject jsonObject = JSONObject.parseObject(pictures); |
| | | Integer code = jsonObject.getInteger("code"); |
| | |
| | | String url = jsonObject1.getString("url"); |
| | | joiner.add(url); |
| | | } |
| | | upWarnMsgAdptInfo.setPicUrl(joiner.toString()); |
| | | upWarnMsgAdptInfo.setPicUrl(joiner.length() > 0 ? joiner.toString() : "*"); |
| | | upWarnMsgAdptInfoDao.save(upWarnMsgAdptInfo); |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | |
| | | //请求报警附件(川标协议) |
| | | if(enterprise.contains(inferiorPlatformId) && !StringUtils.hasLength(upWarnMsgAdptInfo.getPicUrl())){ |
| | | DOWNWarnMsgFileListReq downWarnMsgFileListReq = new DOWNWarnMsgFileListReq(); |
| | | downWarnMsgFileListReq.setVehicleNo(upWarnMsgAdptInfo.getVehicleNo()); |
| | | downWarnMsgFileListReq.setVehicleColor(upWarnMsgAdptInfo.getVehicleColor()); |
| | | downWarnMsgFileListReq.setDataType(DataType.DOWN_WARN_MSG_FILELIST_REQ.getCode()); |
| | | downWarnMsgFileListReq.setDataLength(32); |
| | | downWarnMsgFileListReq.setInfoId(upWarnMsgAdptInfo.getInfoId()); |
| | | byte[] body = downWarnMsgFileListReq.encode(); |
| | | OuterPacket out = new OuterPacket(DataType.DOWN_WARN_MSG.getCode(), inferiorPlatformId, body); |
| | | //获取从链路通道 |
| | | Channel channel = ChannelMap.getClientChannel(inferiorPlatformId); |
| | | if (null != channel && channel.isActive()) { |
| | | channel.writeAndFlush(out); |
| | | log.info("报警附件目录请求({}):{}", DataType.DOWN_WARN_MSG_FILELIST_REQ.getCode(), JSON.toJSONString(downWarnMsgFileListReq)); |
| | | } |
| | | } |
| | | |
| | | down_warn_msg_urge_todo_req(upWarnMsgAdptInfo); |
| | | } |
| | |
| | | } |
| | | upWarnMsgAdptInfo.setInfoId(data.getAlarmId()); |
| | | upWarnMsgAdptInfo.setLevel(getLevel(data.getLevel())); |
| | | if(null != data.getLatitude()){ |
| | | upWarnMsgAdptInfo.setLongitude(data.getLatitude().intValue() * 10); |
| | | } |
| | | if(null != data.getLongitude()){ |
| | | upWarnMsgAdptInfo.setLatitude(data.getLongitude().intValue()); |
| | | // if(null != data.getLatitude()){ |
| | | // upWarnMsgAdptInfo.setLongitude(data.getLatitude().intValue() * 10); |
| | | // } |
| | | // if(null != data.getLongitude()){ |
| | | // upWarnMsgAdptInfo.setLatitude(data.getLongitude().intValue()); |
| | | // } |
| | | //调用获取实时定位数据 |
| | | UPExgMsgRealLocation upExgMsgRealLocation = upExgMsgRealLocationDao.findByVehicleNoOrderByCreateTimeDesc(upWarnMsgAdptInfo.getVehicleNo()); |
| | | if (null != upExgMsgRealLocation) { |
| | | GnssData gnssData = upExgMsgRealLocation.getGnssData(); |
| | | upWarnMsgAdptInfo.setSpeed(gnssData.getVec1()); |
| | | upWarnMsgAdptInfo.setLongitude(gnssData.getLon()); |
| | | upWarnMsgAdptInfo.setLatitude(gnssData.getLat()); |
| | | }else{ |
| | | return; |
| | | } |
| | | if(null != data.getHeight()){ |
| | | upWarnMsgAdptInfo.setAltitude(data.getHeight().intValue() / 10); |
| | |
| | | |
| | | //获取报警抓拍图片 |
| | | if(data.getPicNum() > 0){ |
| | | upWarnMsgAdptInfo.setPicUrl("***"); |
| | | FindPicturesByAlarmIdRequest findPicturesByAlarmIdRequest = new FindPicturesByAlarmIdRequest(); |
| | | findPicturesByAlarmIdRequest.setAlarmId(data.getAlarmId()); |
| | | findPicturesByAlarmIdRequest.setAlarmTime(data.getAlarmTime()); |
| | | long warnTime = upWarnMsgAdptInfo.getWarnTime(); |
| | | String format = LocalDateTime.ofEpochSecond(warnTime, 0, ZoneOffset.ofHours(8)).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS")); |
| | | format = format.replace(" ", "T") + "+08:00"; |
| | | findPicturesByAlarmIdRequest.setAlarmTime(format); |
| | | String pictures = Artemis.findPicturesByAlarmId(findPicturesByAlarmIdRequest); |
| | | JSONObject jsonObject1 = JSONObject.parseObject(pictures); |
| | | Integer code = jsonObject1.getInteger("code"); |
| | |
| | | } |
| | | upWarnMsgAdptInfo.setPicUrl(joiner.toString()); |
| | | } |
| | | }else{ |
| | | upWarnMsgAdptInfo.setPicUrl("*"); |
| | | } |
| | | upWarnMsgAdptInfoDao.save(upWarnMsgAdptInfo); |
| | | |