From 06842b9c367083c3bf77b8b54a1e1a32b68a2e5e Mon Sep 17 00:00:00 2001 From: zhangnaisong <2434969829@qq.com> Date: 星期六, 06 七月 2024 09:02:33 +0800 Subject: [PATCH] 电磁锁分页bug修改提交 --- ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarLockServiceImpl.java | 60 ++++++++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 42 insertions(+), 18 deletions(-) diff --git a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarLockServiceImpl.java b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarLockServiceImpl.java index 8d80b1f..ad1fbed 100644 --- a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarLockServiceImpl.java +++ b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarLockServiceImpl.java @@ -375,15 +375,17 @@ // 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 @@ -391,21 +393,43 @@ 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("璇ヨ溅鏃燫TU锛�"); + } + + } + + @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; } } -- Gitblit v1.9.3