| | |
| | | } |
| | | } |
| | | //车辆有值优先判断是否为手动添加车辆 |
| | | if(ardAccessFence.getIsAlarm()==1){ |
| | | //1为手动添加车辆无需报警信息,更新位置即可 |
| | | ardAccessFence.setLng(lng); |
| | | ardAccessFence.setLat(lat); |
| | | ardAccessFenceService.updAccess(ardAccessFence); |
| | | }else if(ardAccessFence.getIsAlarm() == 2){ |
| | | //2为手动添加报警车辆有报警,所在围栏名称赋null,排查报警信息,只需处理路上情况 |
| | | ardAccessFence.setNowWallName(null); |
| | | //如果在路上判断坐标是否与上次一样 |
| | | if(ardAccessFence.getLng().equals(lng) && ardAccessFence.getLat().equals(lat)){ |
| | | if(timeType){ |
| | | Date nowTime = sdf.parse(time); |
| | | Date lastTime = sdf.parse(ardAccessFence.getLastTime()); |
| | | Long diff = (nowTime.getTime() - lastTime.getTime())/1000; |
| | | ArdAccessNum list = accessNumService.queryNum(); |
| | | if(list!=null){ |
| | | int alarm = list.getAlarm(); |
| | | if(diff>=alarm){ |
| | | //报警字段为1提示报警 |
| | | ardAccessFence.setIsWarning(1); |
| | | ardAccessFence.setAlarmLat(lat); |
| | | ardAccessFence.setAlarmLng(lng); |
| | | ardAccessFenceService.updAccess(ardAccessFence); |
| | | } |
| | | } |
| | | }else { |
| | | log.debug(carId+"号车定位时间为空"); |
| | | } |
| | | }else { |
| | | //如果不一样更新坐标 |
| | | ardAccessFence.setLat(lat); |
| | | ardAccessFence.setLng(lng); |
| | | ardAccessFence.setLastTime(time); |
| | | ardAccessFenceService.updAccess(ardAccessFence); |
| | | } |
| | | }else if(ardAccessFence.getIsAlarm() == 0 || ardAccessFence.getIsAlarm() == null){ |
| | | if(ardAccessFence.getIsAlarm() == 0 || ardAccessFence.getIsAlarm() == null){ |
| | | //车辆非手动添加数据,判断是否有进入围栏ID |
| | | if(ardAccessFence.getIntoShipmentId()==null){ |
| | | //没有进入装油点,赋值经纬度 |
| | |
| | | } |
| | | } |
| | | } |
| | | }else |
| | | if(ardAccessFence.getIsAlarm()==1){ |
| | | //1为手动添加车辆无需报警信息,更新位置即可 |
| | | ardAccessFence.setLng(lng); |
| | | ardAccessFence.setLat(lat); |
| | | ardAccessFenceService.updAccess(ardAccessFence); |
| | | }else if(ardAccessFence.getIsAlarm() == 2){ |
| | | //2为手动添加报警车辆有报警,所在围栏名称赋null,排查报警信息,只需处理路上情况 |
| | | ardAccessFence.setNowWallName(null); |
| | | //如果在路上判断坐标是否与上次一样 |
| | | if(ardAccessFence.getLng().equals(lng) && ardAccessFence.getLat().equals(lat)){ |
| | | if(timeType){ |
| | | Date nowTime = sdf.parse(time); |
| | | Date lastTime = sdf.parse(ardAccessFence.getLastTime()); |
| | | Long diff = (nowTime.getTime() - lastTime.getTime())/1000; |
| | | ArdAccessNum list = accessNumService.queryNum(); |
| | | if(list!=null){ |
| | | int alarm = list.getAlarm(); |
| | | if(diff>=alarm){ |
| | | //报警字段为1提示报警 |
| | | ardAccessFence.setIsWarning(1); |
| | | ardAccessFence.setAlarmLat(lat); |
| | | ardAccessFence.setAlarmLng(lng); |
| | | ardAccessFenceService.updAccess(ardAccessFence); |
| | | } |
| | | } |
| | | }else { |
| | | log.debug(carId+"号车定位时间为空"); |
| | | } |
| | | }else { |
| | | //如果不一样更新坐标 |
| | | ardAccessFence.setLat(lat); |
| | | ardAccessFence.setLng(lng); |
| | | ardAccessFence.setLastTime(time); |
| | | ardAccessFenceService.updAccess(ardAccessFence); |
| | | } |
| | | } |
| | | } |
| | | //清淤结束------------ |