From 7e2382e701604e97f775dca55dc00cee7c5da053 Mon Sep 17 00:00:00 2001 From: zhangnaisong <2434969829@qq.com> Date: 星期五, 09 八月 2024 08:02:16 +0800 Subject: [PATCH] 电磁锁异常停车加入临时电子围栏提交 --- ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankLockProcessLogServiceImpl.java | 7 +++++-- ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankAbnormalParkAlarmServiceImpl.java | 34 ++++++++++++++++++++++++++-------- 2 files changed, 31 insertions(+), 10 deletions(-) diff --git a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankAbnormalParkAlarmServiceImpl.java b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankAbnormalParkAlarmServiceImpl.java index 5cc3611..aaf117b 100644 --- a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankAbnormalParkAlarmServiceImpl.java +++ b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankAbnormalParkAlarmServiceImpl.java @@ -11,16 +11,13 @@ import com.ruoyi.common.core.domain.entity.SysDept; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.utils.uuid.IdUtils; -import com.ruoyi.sy.domain.ArdSyCar; -import com.ruoyi.sy.domain.ArdTankLoadLog; -import com.ruoyi.sy.domain.ArdTankWall; +import com.ruoyi.sy.domain.*; import com.ruoyi.sy.gps31.PositionContainer; -import com.ruoyi.sy.mapper.ArdSyCarMapper; -import com.ruoyi.sy.mapper.ArdTankLoadLogMapper; -import com.ruoyi.sy.mapper.ArdTankWallMapper; +import com.ruoyi.sy.mapper.*; import com.ruoyi.system.mapper.SysConfigMapper; import com.ruoyi.system.mapper.SysDeptMapper; import com.ruoyi.system.mapper.SysUserMapper; +import com.ruoyi.utils.gis.GisUtil; import com.ruoyi.utils.gps.GeoTools; import com.ruoyi.utils.websocket.util.WebSocketUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -28,8 +25,6 @@ import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.SecurityUtils; -import com.ruoyi.sy.mapper.ArdTankAbnormalParkAlarmMapper; -import com.ruoyi.sy.domain.ArdTankAbnormalParkAlarm; import com.ruoyi.sy.service.IArdTankAbnormalParkAlarmService; import javax.annotation.Resource; @@ -61,6 +56,9 @@ @Resource private SysUserMapper sysUserMapper; + + @Resource + private ArdTankWallTemporaryMapper ardTankWallTemporaryMapper; @Resource private ArdTankLoadLogMapper ardTankLoadLogMapper; @@ -262,6 +260,26 @@ } } + + //涓存椂鐢靛瓙鍥存爮 + List<ArdTankWallTemporary> ardTankWallTemporaryList = ardTankWallTemporaryMapper.getArdTankWallTemporaryByCarId((String) gpsMap.get("carId")); + if(!ardTankWallTemporaryList.isEmpty()){ + for(ArdTankWallTemporary ardTankWallTemporary : ardTankWallTemporaryList){ + Double longitude = ardTankWallTemporary.getLongitude(); + Double latitude = ardTankWallTemporary.getLatitude(); + Integer distance = ardTankWallTemporary.getDistance(); + + Double[] From = new Double[]{longitude,latitude}; + Double[] To = new Double[]{((Number) gpsMap.get("lng")).doubleValue(),((Number) gpsMap.get("lat")).doubleValue()}; + Number realDistance = GisUtil.getDistance(From,To); + if(realDistance.intValue() <= distance) {//瀹為檯璺濈灏忎簬鍗婂緞 + PositionContainer.getTankCarParkingAlarmTHread().remove((String)gpsMap.get("carId")); + return ardTankLoadLogMapper.deleteArdTankLoadLogByCarId((String)gpsMap.get("carId"));//杩涘叆涓存椂鐢靛瓙鍥存爮灏卞垹闄よ娌硅褰� + } + } + } + + for(ArdTankWall ardTankWall : unloadOilOrGarageArdTankWallResult){//鍦ㄤ换鎰忓嵏娌圭偣鎴栬溅搴撶數瀛愬洿鏍忓唴 pts.clear(); String[] wallpoiArro = ardTankWall.getWallPoi().split(","); diff --git a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankLockProcessLogServiceImpl.java b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankLockProcessLogServiceImpl.java index 0761bbb..607f1dc 100644 --- a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankLockProcessLogServiceImpl.java +++ b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankLockProcessLogServiceImpl.java @@ -218,7 +218,7 @@ return AjaxResult.error("褰撳墠杞﹁締姝e鍦ㄧ數瀛愬洿鏍忓"); }else{ try{ - if(PositionContainer.getCarLockProcessThreadMap().get(carId).get(lockNum).get("lockProcess") != null){ + if(PositionContainer.getCarLockProcessThreadMap().get(carId).get(lockNum).get("lockProcess") == null){ PositionContainer.getCarLockProcessThreadMap().get(carId).get(lockNum).put("lockProcess",new Thread());//鍔犲叆瀹瑰櫒 String lockNumHead = lockNum.substring(0,2); String lockNumTail = lockNum.substring(2,4); @@ -451,7 +451,10 @@ continue; } } - break;//澶勫湪浠绘剰鐢靛瓙鍥存爮涓� + //break; + return;//澶勫湪浠绘剰鐢靛瓙鍥存爮涓� + }else{ + continue; } } } -- Gitblit v1.9.3