| | |
| | | }else if("施封".equals(type)){ |
| | | fengType = 0; |
| | | } |
| | | //1解封 |
| | | if(fengType==1){ |
| | | //如果不是解封封状态,则发送施封命令 |
| | | if(ardSyCarLocks.get(0).getRelayInfo()==0){ |
| | | Map<String,Object> map = new HashMap<>(); |
| | | map.put("A01", 110000);//导通第一路继电器 |
| | | map.put("A02", 110000);//导通第二路继电器 |
| | | map.put("res", String.valueOf(System.currentTimeMillis())); |
| | | String mapString = com.alibaba.fastjson.JSON.toJSONString(map); |
| | | MqttCustomerClient mqttCustomerClient = new MqttCustomerClient(); |
| | | mqttCustomerClient.connect(carId+"change"); |
| | | mqttCustomerClient.pushlish(ardSyCarRtu.getTopicPublish(),mapString); |
| | | log.info("车辆"+carId+"解封命令发送成功!"); |
| | | // mqttOnce.publishCar(carId,ardSyCarRtu.getTopicPublish(),String.valueOf(new JSONObject(map)),"解封"); |
| | | } |
| | | } |
| | | //0施封 |
| | | if(fengType==0){ |
| | | //锁开关状态 |
| | | int lockCloseNum = 0; |
| | | //如果不是施封状态,则发送施封命令 |
| | | if(ardSyCarLocks.get(0).getRelayInfo()==1){ |
| | | for (int j = 0; j < ardSyCarLocks.size(); j++) { |
| | | ArdSyCarLock ardSyCarLock = ardSyCarLocks.get(j); |
| | | String currents = ardSyCarLock.getCurrents(); |
| | | Double currentInfo = ardSyCarLock.getCurrentInfo(); |
| | | //电流值为4.0是关锁状态 |
| | | if(currentInfo.equals(4.00) || currentInfo.equals(4)){ |
| | | lockCloseNum += 1; |
| | | }else { |
| | | String key = ""; |
| | | if(currents.equals("C01")){ |
| | | key = "D03"; |
| | | }else if(currents.equals("C02")){ |
| | | key = "D04"; |
| | | } |
| | | Map<String,Object> map = new HashMap(); |
| | | map.put(key, 0.01); |
| | | map.put("res", String.valueOf(System.currentTimeMillis())); |
| | | String mapString = com.alibaba.fastjson.JSON.toJSONString(map); |
| | | MqttCustomerClient mqttCustomerClient = new MqttCustomerClient(); |
| | | mqttCustomerClient.connect(carId+"change"); |
| | | mqttCustomerClient.pushlish(ardSyCarRtu.getTopicPublish(),mapString); |
| | | // mqttOnce.publishCar("carId",ardSyCarRtu.getTopicPublish(),String.valueOf(new JSONObject(map)),"开锁:"+currents); |
| | | while(true){ |
| | | ArdSyCarLock ardSyCarLock1 = lockService.getCurrentInfo(ardSyCarRtu.getId(),currents); |
| | | Double currentInfo1 = ardSyCarLock1.getCurrentInfo(); |
| | | if(currentInfo1.equals(4.00) || currentInfo1.equals(4)){ |
| | | lockCloseNum +=1; |
| | | break; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | if(lockCloseNum == 2){ |
| | | if(ardSyCarLocks.size()>0){ |
| | | //1解封 |
| | | if(fengType==1){ |
| | | //如果不是解封封状态,则发送施封命令 |
| | | if(ardSyCarLocks.get(0).getRelayInfo()==0){ |
| | | Map<String,Object> map = new HashMap<>(); |
| | | map.put("A01", 100000);//断开第一路继电器 |
| | | map.put("A02", 100000);//断开第二路继电器 |
| | | map.put("A01", 110000);//导通第一路继电器 |
| | | map.put("A02", 110000);//导通第二路继电器 |
| | | map.put("res", String.valueOf(System.currentTimeMillis())); |
| | | String mapString = com.alibaba.fastjson.JSON.toJSONString(map); |
| | | MqttCustomerClient mqttCustomerClient = new MqttCustomerClient(); |
| | | mqttCustomerClient.connect(carId+"change"); |
| | | mqttCustomerClient.pushlish(ardSyCarRtu.getTopicPublish(),mapString); |
| | | log.info("车辆"+carId+"施封命令发送成功!"); |
| | | log.info("车辆"+carId+"解封命令发送成功!"); |
| | | // mqttOnce.publishCar(carId,ardSyCarRtu.getTopicPublish(),String.valueOf(new JSONObject(map)),"解封"); |
| | | } |
| | | } |
| | | //0施封 |
| | | if(fengType==0){ |
| | | //锁开关状态 |
| | | int lockCloseNum = 0; |
| | | //如果不是施封状态,则发送施封命令 |
| | | if(ardSyCarLocks.get(0).getRelayInfo()==1){ |
| | | for (int j = 0; j < ardSyCarLocks.size(); j++) { |
| | | ArdSyCarLock ardSyCarLock = ardSyCarLocks.get(j); |
| | | String currents = ardSyCarLock.getCurrents(); |
| | | Double currentInfo = ardSyCarLock.getCurrentInfo(); |
| | | //电流值为4.0是关锁状态 |
| | | if(currentInfo.equals(4.00) || currentInfo.equals(4)){ |
| | | lockCloseNum += 1; |
| | | }else { |
| | | String key = ""; |
| | | if(currents.equals("C01")){ |
| | | key = "D03"; |
| | | }else if(currents.equals("C02")){ |
| | | key = "D04"; |
| | | } |
| | | Map<String,Object> map = new HashMap(); |
| | | map.put(key, 0.01); |
| | | map.put("res", String.valueOf(System.currentTimeMillis())); |
| | | String mapString = com.alibaba.fastjson.JSON.toJSONString(map); |
| | | MqttCustomerClient mqttCustomerClient = new MqttCustomerClient(); |
| | | mqttCustomerClient.connect(carId+"change"); |
| | | mqttCustomerClient.pushlish(ardSyCarRtu.getTopicPublish(),mapString); |
| | | // mqttOnce.publishCar("carId",ardSyCarRtu.getTopicPublish(),String.valueOf(new JSONObject(map)),"开锁:"+currents); |
| | | while(true){ |
| | | ArdSyCarLock ardSyCarLock1 = lockService.getCurrentInfo(ardSyCarRtu.getId(),currents); |
| | | Double currentInfo1 = ardSyCarLock1.getCurrentInfo(); |
| | | if(currentInfo1.equals(4.00) || currentInfo1.equals(4)){ |
| | | lockCloseNum +=1; |
| | | break; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | if(lockCloseNum == 2){ |
| | | Map<String,Object> map = new HashMap<>(); |
| | | map.put("A01", 100000);//断开第一路继电器 |
| | | map.put("A02", 100000);//断开第二路继电器 |
| | | map.put("res", String.valueOf(System.currentTimeMillis())); |
| | | String mapString = com.alibaba.fastjson.JSON.toJSONString(map); |
| | | MqttCustomerClient mqttCustomerClient = new MqttCustomerClient(); |
| | | mqttCustomerClient.connect(carId+"change"); |
| | | mqttCustomerClient.pushlish(ardSyCarRtu.getTopicPublish(),mapString); |
| | | log.info("车辆"+carId+"施封命令发送成功!"); |
| | | // mqttOnce.publishCar(carId,ardSyCarRtu.getTopicPublish(),String.valueOf(new JSONObject(map)),"施封"); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |