|
|
|
@ -12,6 +12,7 @@ import com.mh.user.model.DeviceModel;
|
|
|
|
|
import com.mh.user.model.SerialPortModel; |
|
|
|
|
import com.mh.user.serialport.SerialPortSendReceive; |
|
|
|
|
import com.mh.user.serialport.SerialPortSingle; |
|
|
|
|
import com.mh.user.serialport.SerialPortSingle2; |
|
|
|
|
import com.mh.user.service.ControlSetService; |
|
|
|
|
import com.mh.user.service.DeviceInstallService; |
|
|
|
|
import com.mh.user.service.NowDataService; |
|
|
|
@ -46,7 +47,7 @@ public class SerialPortController {
|
|
|
|
|
@PostMapping(value = "/operate") |
|
|
|
|
public HttpResult operateDevice(@RequestBody List<SerialPortModel> params) { |
|
|
|
|
try { |
|
|
|
|
SerialPortSingle serialPortSingle = new SerialPortSingle(); //发送接收类
|
|
|
|
|
SerialPortSingle2 serialPortSingle = new SerialPortSingle2(); //发送接收类
|
|
|
|
|
DeviceCodeParamEntity deviceCodeParam = new DeviceCodeParamEntity();//参数实体类
|
|
|
|
|
|
|
|
|
|
Constant.WEB_FLAG = true; //单抄,暂时停止采集
|
|
|
|
@ -75,11 +76,9 @@ public class SerialPortController {
|
|
|
|
|
deviceCodeParam.setBuildingId(buildingId); |
|
|
|
|
String brand = deviceInstallEntity.getBrand();//品牌
|
|
|
|
|
deviceCodeParam.setBrand(brand); |
|
|
|
|
|
|
|
|
|
ControlSetEntity controlData = new ControlSetEntity(); |
|
|
|
|
//设置设备实体对象
|
|
|
|
|
ControlSetEntity controlData = new ControlSetEntity(); |
|
|
|
|
controlData.setBuildingId(deviceInstallEntity.getBuildingId()); |
|
|
|
|
|
|
|
|
|
if (deviceType == null || deviceType.equals("") || deviceType.equals("热泵")) { |
|
|
|
|
//设置热泵实体对象
|
|
|
|
|
PumpSetEntity pumpData = new PumpSetEntity(); |
|
|
|
@ -190,9 +189,11 @@ public class SerialPortController {
|
|
|
|
|
Constant.WEB_FLAG = false; //单抄,恢复采集
|
|
|
|
|
return HttpResult.ok(); |
|
|
|
|
} catch (Exception e) { |
|
|
|
|
// e.printStackTrace();
|
|
|
|
|
log.error("前端发送控制异常==>", e); |
|
|
|
|
Constant.WEB_FLAG = false; //单抄,恢复采集
|
|
|
|
|
return HttpResult.error(500, "fail"); |
|
|
|
|
} finally { |
|
|
|
|
Constant.WEB_FLAG = false; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -201,7 +202,7 @@ public class SerialPortController {
|
|
|
|
|
@PostMapping(value = "/read") |
|
|
|
|
public HttpResult readData(@RequestBody List<SerialPortModel> params) { |
|
|
|
|
try { |
|
|
|
|
SerialPortSingle serialPortSingle = new SerialPortSingle(); |
|
|
|
|
SerialPortSingle2 serialPortSingle = new SerialPortSingle2(); |
|
|
|
|
DeviceCodeParamEntity deviceCodeParam = new DeviceCodeParamEntity(); |
|
|
|
|
String rtData = ""; //返回值
|
|
|
|
|
Constant.WEB_FLAG = true; //单抄,暂时停止采集
|
|
|
|
@ -215,169 +216,169 @@ public class SerialPortController {
|
|
|
|
|
List<DeviceModel> list = deviceInstallService.selectDevices(buildingId, deviceType); |
|
|
|
|
deviceAddr = list.get(0).getDeviceAddr(); |
|
|
|
|
} |
|
|
|
|
if (deviceAddr != null && deviceAddr.length() > 0) { |
|
|
|
|
DeviceInstallEntity deviceInstallEntity = deviceInstallService.selectDevice(deviceAddr, deviceType, buildingId); |
|
|
|
|
//发送指令实体类
|
|
|
|
|
deviceCodeParam.setDeviceAddr(deviceAddr); |
|
|
|
|
deviceCodeParam.setDeviceType(deviceType); |
|
|
|
|
deviceCodeParam.setDataCom(deviceInstallEntity.getDataCom()); |
|
|
|
|
deviceCodeParam.setBaudrate(deviceInstallEntity.getBaudRate()); |
|
|
|
|
deviceCodeParam.setParity(deviceInstallEntity.getParity()); |
|
|
|
|
deviceCodeParam.setDataValue(serialPortModel.getDataValue());//传入相关参数值
|
|
|
|
|
deviceCodeParam.setBuildingId(buildingId); |
|
|
|
|
String brand = deviceInstallEntity.getBrand();//品牌
|
|
|
|
|
deviceCodeParam.setBrand(brand); |
|
|
|
|
//设置设备实体对象
|
|
|
|
|
ControlSetEntity controlData = new ControlSetEntity(); |
|
|
|
|
controlData.setBuildingId(deviceInstallEntity.getBuildingId()); |
|
|
|
|
if (deviceType == null || deviceType.equals("") || deviceType.equals("热泵")) { |
|
|
|
|
//设置热泵实体对象
|
|
|
|
|
PumpSetEntity pumpData = new PumpSetEntity(); |
|
|
|
|
pumpData.setBuildingId(deviceInstallEntity.getBuildingId()); |
|
|
|
|
pumpData.setPumpId(deviceAddr); |
|
|
|
|
if (param == null || param.equals("") || param.equals("读温度设定")) { |
|
|
|
|
deviceCodeParam.setFunCode("03"); //功能码读数据
|
|
|
|
|
if (brand.equals("美的")) { |
|
|
|
|
deviceCodeParam.setRegisterAddr("0642"); //寄存器地址
|
|
|
|
|
} else { |
|
|
|
|
deviceCodeParam.setRegisterAddr("0003"); //寄存器地址
|
|
|
|
|
} |
|
|
|
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
|
|
|
|
if (!rtData.equals("")) { |
|
|
|
|
pumpData.setTempSet(rtData); |
|
|
|
|
pumpSetService.savePumpSet(pumpData);//热泵信息保存数据库
|
|
|
|
|
} |
|
|
|
|
} else if (param.equals("实际温度")) { |
|
|
|
|
deviceCodeParam.setFunCode("03"); //功能码读数据
|
|
|
|
|
if (brand.equals("美的")) { |
|
|
|
|
deviceCodeParam.setRegisterAddr("0007"); //寄存器地址
|
|
|
|
|
} else { |
|
|
|
|
deviceCodeParam.setRegisterAddr("0064"); //寄存器地址
|
|
|
|
|
} |
|
|
|
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
|
|
|
|
if (!rtData.equals("")) { |
|
|
|
|
pumpData.setWaterTemp(rtData); |
|
|
|
|
pumpSetService.savePumpSet(pumpData);//热泵信息保存数据库
|
|
|
|
|
} |
|
|
|
|
} else if (param.equals("运行状态")) { |
|
|
|
|
deviceCodeParam.setFunCode("03"); //功能码读数据
|
|
|
|
|
if (brand.equals("美的")) { |
|
|
|
|
deviceCodeParam.setRegisterAddr("0641"); //寄存器地址
|
|
|
|
|
} else { |
|
|
|
|
deviceCodeParam.setRegisterAddr("0BBD"); //寄存器地址
|
|
|
|
|
} |
|
|
|
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
|
|
|
|
//pumpData(rtData);
|
|
|
|
|
//pumpSetService.savePumpSet(pumpData);//热泵信息保存数据库
|
|
|
|
|
} else if (param.equals("时段1")) { |
|
|
|
|
if (brand.equals("美的")) { |
|
|
|
|
//发送指令
|
|
|
|
|
deviceCodeParam.setRegisterAddr("0656"); //寄存器地址
|
|
|
|
|
deviceCodeParam.setFunCode("03"); //功能码读数据
|
|
|
|
|
//保存数据
|
|
|
|
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
|
|
|
|
String time = rtData; |
|
|
|
|
if (time.length() == 8) { |
|
|
|
|
String statTime = time.substring(0, 2) + ":" + time.substring(2, 4); |
|
|
|
|
String closeTime = time.substring(4, 6) + ":" + time.substring(6, 8); |
|
|
|
|
pumpData.setStartTime1(statTime); |
|
|
|
|
pumpData.setCloseTime1(closeTime); |
|
|
|
|
} |
|
|
|
|
pumpSetService.savePumpSet(pumpData);//热泵信息保存数据库
|
|
|
|
|
} |
|
|
|
|
} else if (param.equals("时段2")) { |
|
|
|
|
if (brand.equals("美的")) { |
|
|
|
|
//发送指令
|
|
|
|
|
deviceCodeParam.setRegisterAddr("065A"); //寄存器地址
|
|
|
|
|
deviceCodeParam.setFunCode("03"); //功能码读数据
|
|
|
|
|
//保存数据
|
|
|
|
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
|
|
|
|
String time = rtData; |
|
|
|
|
if (time.length() == 8) { |
|
|
|
|
String statTime = time.substring(0, 2) + ":" + time.substring(2, 4); |
|
|
|
|
String closeTime = time.substring(4, 6) + ":" + time.substring(6, 8); |
|
|
|
|
pumpData.setStartTime2(statTime); |
|
|
|
|
pumpData.setCloseTime2(closeTime); |
|
|
|
|
} |
|
|
|
|
pumpSetService.savePumpSet(pumpData);//热泵信息保存数据库
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} else if (deviceType.equals("时控")) { |
|
|
|
|
if (param.equals("L1")) { |
|
|
|
|
deviceCodeParam.setRegisterAddr("0009"); //寄存器地址,L3路,L1(0009),L2(000D)
|
|
|
|
|
} else if (param.equals("L2")) { |
|
|
|
|
deviceCodeParam.setRegisterAddr("000D"); |
|
|
|
|
if (deviceAddr == null || deviceAddr.length() == 0) { |
|
|
|
|
Constant.WEB_FLAG = false; |
|
|
|
|
return HttpResult.error("通讯ID为空!"); |
|
|
|
|
} |
|
|
|
|
DeviceInstallEntity deviceInstallEntity = deviceInstallService.selectDevice(deviceAddr, deviceType, buildingId); |
|
|
|
|
//发送指令实体类
|
|
|
|
|
deviceCodeParam.setDeviceAddr(deviceAddr); |
|
|
|
|
deviceCodeParam.setDeviceType(deviceType); |
|
|
|
|
deviceCodeParam.setDataCom(deviceInstallEntity.getDataCom()); |
|
|
|
|
deviceCodeParam.setBaudrate(deviceInstallEntity.getBaudRate()); |
|
|
|
|
deviceCodeParam.setParity(deviceInstallEntity.getParity()); |
|
|
|
|
deviceCodeParam.setDataValue(serialPortModel.getDataValue());//传入相关参数值
|
|
|
|
|
deviceCodeParam.setBuildingId(buildingId); |
|
|
|
|
String brand = deviceInstallEntity.getBrand();//品牌
|
|
|
|
|
deviceCodeParam.setBrand(brand); |
|
|
|
|
//设置设备实体对象
|
|
|
|
|
ControlSetEntity controlData = new ControlSetEntity(); |
|
|
|
|
controlData.setBuildingId(deviceInstallEntity.getBuildingId()); |
|
|
|
|
if (deviceType == null || deviceType.equals("") || deviceType.equals("热泵")) { |
|
|
|
|
//设置热泵实体对象
|
|
|
|
|
PumpSetEntity pumpData = new PumpSetEntity(); |
|
|
|
|
pumpData.setBuildingId(deviceInstallEntity.getBuildingId()); |
|
|
|
|
pumpData.setPumpId(deviceAddr); |
|
|
|
|
if (param == null || param.equals("") || param.equals("读温度设定")) { |
|
|
|
|
deviceCodeParam.setFunCode("03"); //功能码读数据
|
|
|
|
|
if (brand.equals("美的")) { |
|
|
|
|
deviceCodeParam.setRegisterAddr("0642"); //寄存器地址
|
|
|
|
|
} else { |
|
|
|
|
deviceCodeParam.setRegisterAddr("0011"); |
|
|
|
|
deviceCodeParam.setRegisterAddr("0003"); //寄存器地址
|
|
|
|
|
} |
|
|
|
|
deviceCodeParam.setFunCode("03"); //功能码读数据
|
|
|
|
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
|
|
|
|
|
|
|
|
|
String time = rtData; |
|
|
|
|
if (time.length() == 16) { |
|
|
|
|
//时段1
|
|
|
|
|
String statTime1 = time.substring(0, 2) + ":" + time.substring(2, 4); |
|
|
|
|
String closeTime1 = time.substring(4, 6) + ":" + time.substring(6, 8); |
|
|
|
|
//时段2
|
|
|
|
|
String statTime2 = time.substring(8, 10) + ":" + time.substring(10, 12); |
|
|
|
|
String closeTime2 = time.substring(12, 14) + ":" + time.substring(14, 16); |
|
|
|
|
|
|
|
|
|
if (param.equals("L1")) { |
|
|
|
|
controlData.setUseStartTime1(statTime1); |
|
|
|
|
controlData.setUseCloseTime1(closeTime1); |
|
|
|
|
controlData.setUseStartTime2(statTime2); |
|
|
|
|
controlData.setUseCloseTime2(closeTime2); |
|
|
|
|
} else if (param.equals("L2")) { |
|
|
|
|
controlData.setUseStartTime3(statTime1); |
|
|
|
|
controlData.setUseCloseTime3(closeTime1); |
|
|
|
|
controlData.setUseStartTime4(statTime2); |
|
|
|
|
controlData.setUseCloseTime4(closeTime2); |
|
|
|
|
} else { |
|
|
|
|
controlData.setUseStartTime5(statTime1); |
|
|
|
|
controlData.setUseCloseTime5(closeTime1); |
|
|
|
|
controlData.setUseStartTime6(statTime2); |
|
|
|
|
controlData.setUseCloseTime6(closeTime2); |
|
|
|
|
} |
|
|
|
|
if (!rtData.equals("")) { |
|
|
|
|
pumpData.setTempSet(rtData); |
|
|
|
|
pumpSetService.savePumpSet(pumpData);//热泵信息保存数据库
|
|
|
|
|
} |
|
|
|
|
controlSetService.saveControlSet(controlData); //保存设置内容
|
|
|
|
|
} else if (deviceType.equals("水位开关") && !param.equals("状态")) { |
|
|
|
|
if (brand == null || brand.equals("") || brand.equals("中凯")) {//品牌
|
|
|
|
|
deviceCodeParam.setFunCode("17"); //功能码读
|
|
|
|
|
deviceCodeParam.setRegisterAddr("0017"); |
|
|
|
|
} else if (brand.equals("远向")) { |
|
|
|
|
deviceCodeParam.setFunCode("03"); //功能码读
|
|
|
|
|
deviceCodeParam.setRegisterAddr("0018"); |
|
|
|
|
} else if (brand.equals("顶威")) { |
|
|
|
|
deviceCodeParam.setFunCode("0102"); //功能码读
|
|
|
|
|
deviceCodeParam.setRegisterAddr("0102"); |
|
|
|
|
} else if (param.equals("实际温度")) { |
|
|
|
|
deviceCodeParam.setFunCode("03"); //功能码读数据
|
|
|
|
|
if (brand.equals("美的")) { |
|
|
|
|
deviceCodeParam.setRegisterAddr("0007"); //寄存器地址
|
|
|
|
|
} else { |
|
|
|
|
deviceCodeParam.setRegisterAddr("0064"); //寄存器地址
|
|
|
|
|
} |
|
|
|
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
|
|
|
|
deviceCodeParam.setDataValue(rtData); |
|
|
|
|
//controlData.setLevelSet(serialPortModel.getDataValue());
|
|
|
|
|
//controlSetService.saveControlSet(controlData);
|
|
|
|
|
log.info("--------------读取返回数据:" + rtData + "------------------"); |
|
|
|
|
} else if (deviceType.equals("水位开关") && param.equals("状态")) { |
|
|
|
|
if (brand.equals("远向")) { |
|
|
|
|
deviceCodeParam.setFunCode("03"); //功能码读
|
|
|
|
|
deviceCodeParam.setRegisterAddr("0010"); |
|
|
|
|
if (!rtData.equals("")) { |
|
|
|
|
pumpData.setWaterTemp(rtData); |
|
|
|
|
pumpSetService.savePumpSet(pumpData);//热泵信息保存数据库
|
|
|
|
|
} |
|
|
|
|
} else if (param.equals("运行状态")) { |
|
|
|
|
deviceCodeParam.setFunCode("03"); //功能码读数据
|
|
|
|
|
if (brand.equals("美的")) { |
|
|
|
|
deviceCodeParam.setRegisterAddr("0641"); //寄存器地址
|
|
|
|
|
} else { |
|
|
|
|
deviceCodeParam.setRegisterAddr("0BBD"); //寄存器地址
|
|
|
|
|
} |
|
|
|
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
|
|
|
|
//pumpData(rtData);
|
|
|
|
|
//pumpSetService.savePumpSet(pumpData);//热泵信息保存数据库
|
|
|
|
|
} else if (param.equals("时段1")) { |
|
|
|
|
if (brand.equals("美的")) { |
|
|
|
|
//发送指令
|
|
|
|
|
deviceCodeParam.setRegisterAddr("0656"); //寄存器地址
|
|
|
|
|
deviceCodeParam.setFunCode("03"); //功能码读数据
|
|
|
|
|
//保存数据
|
|
|
|
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
|
|
|
|
String time = rtData; |
|
|
|
|
if (time.length() == 8) { |
|
|
|
|
String statTime = time.substring(0, 2) + ":" + time.substring(2, 4); |
|
|
|
|
String closeTime = time.substring(4, 6) + ":" + time.substring(6, 8); |
|
|
|
|
pumpData.setStartTime1(statTime); |
|
|
|
|
pumpData.setCloseTime1(closeTime); |
|
|
|
|
} |
|
|
|
|
pumpSetService.savePumpSet(pumpData);//热泵信息保存数据库
|
|
|
|
|
} |
|
|
|
|
} else if (param.equals("时段2")) { |
|
|
|
|
if (brand.equals("美的")) { |
|
|
|
|
//发送指令
|
|
|
|
|
deviceCodeParam.setRegisterAddr("065A"); //寄存器地址
|
|
|
|
|
deviceCodeParam.setFunCode("03"); //功能码读数据
|
|
|
|
|
//保存数据
|
|
|
|
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
|
|
|
|
String time = rtData; |
|
|
|
|
if (time.length() == 8) { |
|
|
|
|
String statTime = time.substring(0, 2) + ":" + time.substring(2, 4); |
|
|
|
|
String closeTime = time.substring(4, 6) + ":" + time.substring(6, 8); |
|
|
|
|
pumpData.setStartTime2(statTime); |
|
|
|
|
pumpData.setCloseTime2(closeTime); |
|
|
|
|
} |
|
|
|
|
pumpSetService.savePumpSet(pumpData);//热泵信息保存数据库
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} else if (deviceType.equals("时控")) { |
|
|
|
|
if (param.equals("L1")) { |
|
|
|
|
deviceCodeParam.setRegisterAddr("0009"); //寄存器地址,L3路,L1(0009),L2(000D)
|
|
|
|
|
} else if (param.equals("L2")) { |
|
|
|
|
deviceCodeParam.setRegisterAddr("000D"); |
|
|
|
|
} else { |
|
|
|
|
deviceCodeParam.setRegisterAddr("0011"); |
|
|
|
|
} |
|
|
|
|
deviceCodeParam.setFunCode("03"); //功能码读数据
|
|
|
|
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
|
|
|
|
|
|
|
|
|
String time = rtData; |
|
|
|
|
if (time.length() == 16) { |
|
|
|
|
//时段1
|
|
|
|
|
String statTime1 = time.substring(0, 2) + ":" + time.substring(2, 4); |
|
|
|
|
String closeTime1 = time.substring(4, 6) + ":" + time.substring(6, 8); |
|
|
|
|
//时段2
|
|
|
|
|
String statTime2 = time.substring(8, 10) + ":" + time.substring(10, 12); |
|
|
|
|
String closeTime2 = time.substring(12, 14) + ":" + time.substring(14, 16); |
|
|
|
|
|
|
|
|
|
} else if (deviceType.equals("温度变送器")) { |
|
|
|
|
if (param.equals("L1")) { |
|
|
|
|
controlData.setUseStartTime1(statTime1); |
|
|
|
|
controlData.setUseCloseTime1(closeTime1); |
|
|
|
|
controlData.setUseStartTime2(statTime2); |
|
|
|
|
controlData.setUseCloseTime2(closeTime2); |
|
|
|
|
} else if (param.equals("L2")) { |
|
|
|
|
controlData.setUseStartTime3(statTime1); |
|
|
|
|
controlData.setUseCloseTime3(closeTime1); |
|
|
|
|
controlData.setUseStartTime4(statTime2); |
|
|
|
|
controlData.setUseCloseTime4(closeTime2); |
|
|
|
|
} else { |
|
|
|
|
controlData.setUseStartTime5(statTime1); |
|
|
|
|
controlData.setUseCloseTime5(closeTime1); |
|
|
|
|
controlData.setUseStartTime6(statTime2); |
|
|
|
|
controlData.setUseCloseTime6(closeTime2); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
controlSetService.saveControlSet(controlData); //保存设置内容
|
|
|
|
|
} else if (deviceType.equals("水位开关") && !param.equals("状态")) { |
|
|
|
|
if (brand == null || brand.equals("") || brand.equals("中凯")) {//品牌
|
|
|
|
|
deviceCodeParam.setFunCode("17"); //功能码读
|
|
|
|
|
deviceCodeParam.setRegisterAddr("0017"); |
|
|
|
|
} else if (brand.equals("远向")) { |
|
|
|
|
deviceCodeParam.setFunCode("03"); //功能码读
|
|
|
|
|
deviceCodeParam.setRegisterAddr("0028"); |
|
|
|
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
|
|
|
|
} else if (deviceType.equals("压变")) { |
|
|
|
|
deviceCodeParam.setRegisterAddr("0018"); |
|
|
|
|
} else if (brand.equals("顶威")) { |
|
|
|
|
deviceCodeParam.setFunCode("0102"); //功能码读
|
|
|
|
|
deviceCodeParam.setRegisterAddr("0102"); |
|
|
|
|
} |
|
|
|
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
|
|
|
|
deviceCodeParam.setDataValue(rtData); |
|
|
|
|
//controlData.setLevelSet(serialPortModel.getDataValue());
|
|
|
|
|
//controlSetService.saveControlSet(controlData);
|
|
|
|
|
log.info("--------------读取返回数据:" + rtData + "------------------"); |
|
|
|
|
} else if (deviceType.equals("水位开关") && param.equals("状态")) { |
|
|
|
|
if (brand.equals("远向")) { |
|
|
|
|
deviceCodeParam.setFunCode("03"); //功能码读
|
|
|
|
|
deviceCodeParam.setRegisterAddr("0004"); |
|
|
|
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
|
|
|
|
} else if (deviceType.equals("水表")) { |
|
|
|
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam); |
|
|
|
|
} else if (deviceType.equals("电表")) { |
|
|
|
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam); |
|
|
|
|
deviceCodeParam.setRegisterAddr("0010"); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
return HttpResult.error(500, "fail"); |
|
|
|
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
|
|
|
|
|
|
|
|
|
} else if (deviceType.equals("温度变送器")) { |
|
|
|
|
deviceCodeParam.setFunCode("03"); //功能码读
|
|
|
|
|
deviceCodeParam.setRegisterAddr("0028"); |
|
|
|
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
|
|
|
|
} else if (deviceType.equals("压变")) { |
|
|
|
|
deviceCodeParam.setFunCode("03"); //功能码读
|
|
|
|
|
deviceCodeParam.setRegisterAddr("0004"); |
|
|
|
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
|
|
|
|
} else if (deviceType.equals("水表")) { |
|
|
|
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam); |
|
|
|
|
} else if (deviceType.equals("电表")) { |
|
|
|
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
Constant.WEB_FLAG = false; //单抄,恢复采集
|
|
|
|
@ -394,6 +395,8 @@ public class SerialPortController {
|
|
|
|
|
} catch (Exception e) { |
|
|
|
|
Constant.WEB_FLAG = false; //单抄,恢复采集
|
|
|
|
|
return HttpResult.error(500, "fail"); |
|
|
|
|
} finally { |
|
|
|
|
Constant.WEB_FLAG = false; //单抄,恢复采集
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|