| | |
| | | // MqttCustomerClient mqttCustomerClient = new MqttCustomerClient(); |
| | | // mqttCustomerClient.connect(lockTypeParam.getCarId()+"change"+UUID.randomUUID()); |
| | | // mqttCustomerClient.pushlish(ardSyCarRtu.getTopicPublish(),mapString); |
| | | try { |
| | | while(true){ |
| | | TimeUnit.SECONDS.sleep(5); |
| | | int min = lockTypeParam.getNum() -5; int max = lockTypeParam.getNum() +5; |
| | | while(true){ |
| | | ArdSyCarLock ardSyCarLockLoop = lockMapper.selectById(lockTypeParam.getLockId()); |
| | | Double currentInfo = ardSyCarLockLoop.getCurrentInfo(); |
| | | int d = (int) ((int)(currentInfo*150/138.3 - 4)/0.16); |
| | | if(d >= min && d <= max){ |
| | | break; |
| | | } |
| | | } catch (InterruptedException e) { |
| | | e.printStackTrace(); |
| | | // TimeUnit.SECONDS.sleep(5); |
| | | } |
| | | return AjaxResult.success("开关锁命令发送成功,发送进度为"+lockTypeParam.getNum()); |
| | | return AjaxResult.success("开关锁成功,进度为"+lockTypeParam.getNum()); |
| | | } |
| | | |
| | | @Override |
| | |
| | | QueryWrapper<ArdSyCarRtu> queryWrapper = new QueryWrapper<>(); |
| | | queryWrapper.eq("car_id",carId); |
| | | ArdSyCarRtu ardSyCarRtu = rtuMapper.selectOne(queryWrapper); |
| | | List<ArdSyCarLock> locks = lockMapper.lockList(ardSyCarRtu.getId()); |
| | | if(locks.size()>0){ |
| | | for (int i = 0; i < locks.size(); i++) { |
| | | ArdSyCarLock ardSyCarLock = locks.get(i); |
| | | if(ardSyCarLock.getCurrentInfo()!=null){ |
| | | double info = ardSyCarLock.getCurrentInfo(); |
| | | int d = (int) ((int)(info*150/138.3 - 4)/0.16); |
| | | ardSyCarLock.setCurrentInfo((double) d); |
| | | }else { |
| | | ardSyCarLock.setCurrentInfo(0.0); |
| | | if(ardSyCarRtu!=null){ |
| | | List<ArdSyCarLock> locks = lockMapper.lockList(ardSyCarRtu.getId()); |
| | | if(locks.size()>0){ |
| | | for (int i = 0; i < locks.size(); i++) { |
| | | ArdSyCarLock ardSyCarLock = locks.get(i); |
| | | if(ardSyCarLock.getCurrentInfo()!=null){ |
| | | double info = ardSyCarLock.getCurrentInfo(); |
| | | int d = (int) ((int)(info*150/138.3 - 4)/0.16); |
| | | ardSyCarLock.setCurrentInfo((double) d); |
| | | }else { |
| | | ardSyCarLock.setCurrentInfo(0.0); |
| | | } |
| | | } |
| | | return AjaxResult.success(locks); |
| | | }else { |
| | | return AjaxResult.error("无该车的锁数据!"); |
| | | } |
| | | return AjaxResult.success(locks); |
| | | }else{ |
| | | return AjaxResult.error("该车无RTU!"); |
| | | } |
| | | |
| | | } |
| | | |
| | | @Override |
| | | public Boolean isLock(String carId) { |
| | | QueryWrapper<ArdSyCarRtu> queryWrapperRtu = new QueryWrapper<>(); |
| | | queryWrapperRtu.eq("car_id",carId); |
| | | ArdSyCarRtu ardSyCarRtu = rtuMapper.selectOne(queryWrapperRtu); |
| | | if(ardSyCarRtu!=null){ |
| | | List<ArdSyCarLock> ardSyCarLocks = lockMapper.lockList(ardSyCarRtu.getId()); |
| | | if(ardSyCarLocks.size()>0){ |
| | | return true; |
| | | }else { |
| | | return false; |
| | | } |
| | | }else { |
| | | return AjaxResult.error("无该车的锁数据!"); |
| | | return false; |
| | | } |
| | | } |
| | | |