| package com.dy.pipIrrMwTestWeb.p206V1_0_0; | 
|   | 
| import com.dy.common.mw.protocol.Command; | 
| import com.dy.common.mw.protocol.CommandType; | 
| import com.dy.common.mw.protocol.p206V1_0_0.CodeV1_0_1; | 
| import com.dy.common.mw.protocol.p206V1_0_0.ProtocolConstantV206V1_0_0; | 
| import com.dy.common.mw.protocol.p206V1_0_0.downVos.*; | 
| import com.dy.common.util.DateTime; | 
| import com.dy.common.webUtil.BaseResponse; | 
| import com.dy.pipIrrMwTestWeb.common.CodeLocal; | 
| import lombok.extern.slf4j.Slf4j; | 
| import org.springframework.web.bind.annotation.GetMapping; | 
| import org.springframework.web.bind.annotation.RequestMapping; | 
| import org.springframework.web.bind.annotation.RestController; | 
|   | 
| /** | 
|  * @Author: liurunyu | 
|  * @Date: 2024/6/29 6:46 | 
|  * @Description | 
|  */ | 
| @Slf4j | 
| @RestController | 
| @RequestMapping(path="comP206V1_0_0") | 
| @SuppressWarnings("unchecked")//java版本越高,对泛型约束越严,所以配置SuppressWarnings("unchecked") | 
| public class CommandP206V1_0_0Ctrl extends ComSupportP206V1_0_0 { | 
|   | 
|     @GetMapping(path = "test") | 
|     public BaseResponse<String> test(String com) { | 
|         BaseResponse<String> rt = null ; | 
|         if(com == null){ | 
|             rt = this.connect() ;//连接通信中间件测试 | 
|         }else{ | 
|             try{ | 
|                 if(com.equals(CodeLocal.stopTcpSv)){ | 
|                     rt = this.stopTcpSv() ; | 
|                 }else if(com.equals(CodeLocal.recoverTcpSv)){ | 
|                     rt = this.recoverTcpSv() ; | 
|                 }else if(com.equals(CodeLocal.mwState)){ | 
|                     rt = this.mwState() ; | 
|                 }else if(com.equals("10")){ | 
|                     rt = this.cd10() ; | 
|                 }else if(com.equals("21")){ | 
|                     rt = this.cd21() ; | 
|                 }else if(com.equals("37")){ | 
|                     rt = this.cd37() ; | 
|                 }else if(com.equals("67")){ | 
|                     rt = this.cd67() ; | 
|                 }else if(com.equals("38")){ | 
|                     rt = this.cd38() ; | 
|                 }else if(com.equals("68")){ | 
|                     rt = this.cd68() ; | 
|                 }else if(com.equals("39")){ | 
|                     rt = this.cd39() ; | 
|                 }else if(com.equals("69")){ | 
|                     rt = this.cd69() ; | 
|                 }else if(com.equals("3A")){ | 
|                     rt = this.cd3A() ; | 
|                 }else if(com.equals("6A")){ | 
|                     rt = this.cd6A() ; | 
|                 }else if(com.equals("3B")){ | 
|                     rt = this.cd3B() ; | 
|                 }else if(com.equals("6B")){ | 
|                     rt = this.cd6B() ; | 
|                 }else if(com.equals("3C")){ | 
|                     rt = this.cd3C() ; | 
|                 }else if(com.equals("65")){ | 
|                     rt = this.cd65() ; | 
|                 }else if(com.equals("91")){ | 
|                     rt = this.cd91() ; | 
|                 }else if(com.equals("92")){ | 
|                     rt = this.cd92() ; | 
|                 }else if(com.equals("93")){ | 
|                     rt = this.cd93() ; | 
|                 }else if(com.equals("97")){ | 
|                     rt = this.cd97() ; | 
|                 }else if(com.equals("98")){ | 
|                     rt = this.cd98() ; | 
|                 }else if(com.equals("99")){ | 
|                     rt = this.cd99() ; | 
|                 }else if(com.equals("A0")){ | 
|                     rt = this.cdA0() ; | 
|                 }else if(com.equals("A1")){ | 
|                     rt = this.cdA1() ; | 
|                 }else if(com.equals("A2")){ | 
|                     rt = this.cdA2() ; | 
|                 }else if(com.equals("B0")){ | 
|                     rt = this.cdB0() ; | 
|                 } | 
|             }catch (Exception e){ | 
|                 e.printStackTrace(); | 
|             } | 
|         } | 
|         return rt ; | 
|     } | 
|   | 
|   | 
|     /** | 
|      * 测试连通性 | 
|      * @return | 
|      */ | 
|     private BaseResponse connect(){ | 
|         return this.sendTest() ; | 
|     } | 
|   | 
|     private BaseResponse stopTcpSv(){ | 
|         return this.sendCom2Mw(this.commandLocal(CodeLocal.stopTcpSv, null, null)) ; | 
|     } | 
|   | 
|     private BaseResponse recoverTcpSv(){ | 
|         return this.sendCom2Mw(this.commandLocal(CodeLocal.recoverTcpSv, null, null)) ; | 
|     } | 
|   | 
|     private BaseResponse mwState(){ | 
|         return this.sendCom2Mw(this.commandLocal(CodeLocal.mwState, null, null)) ; | 
|     } | 
|   | 
|     private BaseResponse cd10(){ | 
|         Com10Vo comVo = new Com10Vo() ; | 
|         comVo.rtuAddr = "532328059995" ;//前6位是行政区划码,后6位是序列号最大是065535 | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_10, comVo, null)) ; | 
|     } | 
|   | 
|     private BaseResponse cd21(){ | 
|         Com21Vo comVo = new Com21Vo() ; | 
|         comVo.ip = "8.140.180.59" ;//IP(例如 125.235.35.89) | 
|         comVo.port = 6001 ;///端口号(0~65536) | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_21, comVo, null)) ; | 
|     } | 
|   | 
|     private BaseResponse cd37(){ | 
|         Com37Vo comVo = new Com37Vo() ; | 
|         comVo.seconds = 20 ;//单位秒 | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_37, comVo, null)) ; | 
|     } | 
|     private BaseResponse cd67(){ | 
|         Com37Vo comVo = new Com37Vo() ; | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_67, comVo, null)) ; | 
|     } | 
|   | 
|     private BaseResponse cd38(){ | 
|         Com38Vo comVo = new Com38Vo() ; | 
|         comVo.remainMoneyAlarm = 10.0 ;//用户余额报警值(大于1.0) | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_38, comVo, null)) ; | 
|     } | 
|   | 
|     private BaseResponse cd68(){ | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_68, null, null)) ; | 
|     } | 
|   | 
|     private BaseResponse cd39(){ | 
|         Com39Vo comVo = new Com39Vo() ; | 
|         comVo.batteryVoltAlarm = 7.0 ;//电池电压报警值(大于0.1) | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_39, comVo, null)) ; | 
|     } | 
|   | 
|     private BaseResponse cd69(){ | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_69, null, null)) ; | 
|     } | 
|   | 
|     private BaseResponse cd3A(){ | 
|         Com3AVo comVo = new Com3AVo() ; | 
|         comVo.current = 1.0 ;//阀门堵转电流(大于0) | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_3A, comVo, null)) ; | 
|     } | 
|   | 
|     private BaseResponse cd6A(){ | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_6A, null, null)) ; | 
|     } | 
|   | 
|     private BaseResponse cd3B(){ | 
|         Com3BVo comVo = new Com3BVo() ; | 
|         comVo.second = 120 ;//阀门超时时间(秒)(大于1) | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_3B, comVo, null)) ; | 
|     } | 
|   | 
|     private BaseResponse cd6B(){ | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_6B, null, null)) ; | 
|     } | 
|   | 
|     private BaseResponse cd3C(){ | 
|         Com3CVo comVo = new Com3CVo() ; | 
|         comVo.minute = 5 ; | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_3C, comVo, null)) ; | 
|     } | 
|   | 
|     private BaseResponse cd65(){ | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_65, null, null)) ; | 
|     } | 
|   | 
|     private BaseResponse<String> cd91() { | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_91, null, null)) ; | 
|     } | 
|   | 
|     private BaseResponse cd92(){ | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_92, null, null)) ; | 
|     } | 
|   | 
|     private BaseResponse cd93(){ | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_93, null, null)) ; | 
|     } | 
|   | 
|     //APP远程开阀 | 
|     private BaseResponse cd97(){ | 
|         Com97Vo comVo = new Com97Vo() ; | 
|         comVo.icCardNo = CommandP206V1_0_0Ctrl.vsIcCardNo; | 
|         comVo.moneyRemain = 234.56 ; | 
|         comVo.waterPrice = 1.2 ; | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_97, comVo, null)) ; | 
|     } | 
|     //APP远程关阀 | 
|     private BaseResponse cd98(){ | 
|         Com98Vo comVo = new Com98Vo() ; | 
|         comVo.icCardNo = CommandP206V1_0_0Ctrl.vsIcCardNo; | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_98, comVo, null)) ; | 
|     } | 
|   | 
|     //定时关阀开阀 | 
|     private BaseResponse cd99(){ | 
|         Com99Vo comVo = new Com99Vo() ; | 
|         comVo.icCardNo = CommandP206V1_0_0Ctrl.vsIcCardNo; | 
|         comVo.moneyRemain = 234.56 ; | 
|         comVo.waterPrice = 1.2 ; | 
|         comVo.minutes = 3 ; | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_99, comVo, null)) ; | 
|     } | 
|   | 
|     //定量关阀开阀 | 
|     private BaseResponse cdA0(){ | 
|         ComA0Vo comVo = new ComA0Vo() ; | 
|         comVo.icCardNo = CommandP206V1_0_0Ctrl.vsIcCardNo; | 
|         comVo.moneyRemain = 234.56 ; | 
|         comVo.waterPrice = 1.2 ; | 
|         comVo.waterAmount = 10 ; | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_A0, comVo, null)) ; | 
|     } | 
|   | 
|   | 
|     //定时关阀计划开阀 | 
|     private BaseResponse cdA1() throws Exception { | 
|         ComA1Vo comVo = new ComA1Vo() ; | 
|         comVo.icCardNo = CommandP206V1_0_0Ctrl.vsIcCardNo; | 
|         comVo.moneyRemain = 234.56 ; | 
|         comVo.waterPrice = 1.2 ; | 
|         comVo.minutes = 3 ; | 
|         String nextDtStr = DateTime.nextXMinute_yyyy_MM_dd_HH_mm_ss(DateTime.yyyy_MM_dd_HH_mm_ss(), 5) ;//将来5分钟 | 
|         int[] nextDt = DateTime.yyyy_MM_dd_HH_MM_SS_2_ymdhmsGroup(nextDtStr) ; | 
|         comVo.year = nextDt[0] ; | 
|         comVo.month = nextDt[1] ; | 
|         comVo.day = nextDt[2] ; | 
|         comVo.hour = nextDt[3] ; | 
|         comVo.minute = nextDt[4] ; | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_A1, comVo, null)) ; | 
|     } | 
|   | 
|     //定量关阀计划开阀 | 
|     private BaseResponse cdA2() throws Exception { | 
|         ComA2Vo comVo = new ComA2Vo() ; | 
|         comVo.icCardNo = CommandP206V1_0_0Ctrl.vsIcCardNo; | 
|         comVo.moneyRemain = 234.56 ; | 
|         comVo.waterPrice = 1.2 ; | 
|         comVo.waterAmount = 10 ; | 
|         String nextDtStr = DateTime.nextXMinute_yyyy_MM_dd_HH_mm_ss(DateTime.yyyy_MM_dd_HH_mm_ss(), 5) ;//将来5分钟 | 
|         int[] nextDt = DateTime.yyyy_MM_dd_HH_MM_SS_2_ymdhmsGroup(nextDtStr) ; | 
|         comVo.year = nextDt[0] ; | 
|         comVo.month = nextDt[1] ; | 
|         comVo.day = nextDt[2] ; | 
|         comVo.hour = nextDt[3] ; | 
|         comVo.minute = nextDt[4] ; | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_A2, comVo, null)) ; | 
|     } | 
|   | 
|   | 
|     private BaseResponse cdB0(){ | 
|         return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_B0, null, null)) ; | 
|     } | 
|   | 
|     //在线情况 | 
|     private BaseResponse online(){ | 
|         Command com = new Command() ; | 
|         com.id = Command.defaultId;//实际应用中,替换成数据库记录id | 
|         com.protocol = ProtocolConstantV206V1_0_0.protocolName ; | 
|         com.code = CodeLocal.onLine ; | 
|         com.type = CommandType.innerCommand ; | 
|         com.rtuResultSendWebUrl = rtuResultSendWebUrl ; | 
|         return this.sendCom2Mw(com) ; | 
|     } | 
|   | 
|   | 
| } |