mh
9 months ago
8 changed files with 480 additions and 7 deletions
@ -0,0 +1,93 @@ |
|||||||
|
package com.mh.user.controller; |
||||||
|
|
||||||
|
import com.alibaba.fastjson2.JSONObject; |
||||||
|
import com.mh.common.http.HttpResult; |
||||||
|
import com.mh.common.utils.StringUtils; |
||||||
|
import com.mh.user.annotation.SysLogger; |
||||||
|
import com.mh.user.constants.Constant; |
||||||
|
import com.mh.user.entity.ControlSetEntity; |
||||||
|
import com.mh.user.entity.DeviceCodeParamEntity; |
||||||
|
import com.mh.user.entity.DeviceInstallEntity; |
||||||
|
import com.mh.user.entity.PumpSetEntity; |
||||||
|
import com.mh.user.model.DeviceModel; |
||||||
|
import com.mh.user.model.SerialPortModel; |
||||||
|
import com.mh.user.serialport.SerialPortSingle2; |
||||||
|
import com.mh.user.service.*; |
||||||
|
import com.mh.user.utils.ExchangeStringUtil; |
||||||
|
import lombok.extern.slf4j.Slf4j; |
||||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||||
|
import org.springframework.web.bind.annotation.*; |
||||||
|
|
||||||
|
import java.math.BigDecimal; |
||||||
|
import java.util.List; |
||||||
|
import java.util.Map; |
||||||
|
|
||||||
|
@Slf4j |
||||||
|
@RestController |
||||||
|
@RequestMapping("serial") |
||||||
|
public class DeviceOperateController { |
||||||
|
|
||||||
|
@Autowired |
||||||
|
DeviceInstallService deviceInstallService; |
||||||
|
|
||||||
|
@Autowired |
||||||
|
PumpSetService pumpSetService; |
||||||
|
|
||||||
|
@Autowired |
||||||
|
ControlSetService controlSetService; |
||||||
|
|
||||||
|
@Autowired |
||||||
|
NowDataService nowDataService; |
||||||
|
|
||||||
|
@Autowired |
||||||
|
private DeviceControlService deviceControlService; |
||||||
|
|
||||||
|
|
||||||
|
//操作设备
|
||||||
|
@SysLogger(title = "控制管理", optDesc = "设置设备参数值") |
||||||
|
@PostMapping(value = "/operate") |
||||||
|
public HttpResult operateDevice(@RequestBody List<SerialPortModel> params) { |
||||||
|
try { |
||||||
|
Constant.WEB_FLAG = true; //单抄,暂时停止采集
|
||||||
|
String returnStr = deviceControlService.readOrWriteDevice(params, Constant.WRITE); |
||||||
|
if (!StringUtils.isBlank(returnStr) && "fail".equals(returnStr)) { |
||||||
|
return HttpResult.error(500, "fail"); |
||||||
|
} |
||||||
|
Constant.WEB_FLAG = false; //单抄,恢复采集
|
||||||
|
return HttpResult.ok(); |
||||||
|
} catch (Exception e) { |
||||||
|
log.error("前端发送控制异常==>", e); |
||||||
|
Constant.WEB_FLAG = false; //单抄,恢复采集
|
||||||
|
return HttpResult.error(500, "fail"); |
||||||
|
} finally { |
||||||
|
Constant.WEB_FLAG = false; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
//读数据
|
||||||
|
@SysLogger(title = "控制管理", optDesc = "读设备数据") |
||||||
|
@PostMapping(value = "/read") |
||||||
|
public HttpResult readData(@RequestBody List<SerialPortModel> params) { |
||||||
|
try { |
||||||
|
Constant.WEB_FLAG = true; //单抄,暂时停止采集
|
||||||
|
String rtData = deviceControlService.readOrWriteDevice(params, Constant.READ); |
||||||
|
Constant.WEB_FLAG = false; //单抄,恢复采集
|
||||||
|
if (ExchangeStringUtil.getJSONType(rtData)) { |
||||||
|
Map map = JSONObject.parseObject(rtData); |
||||||
|
return HttpResult.ok("success", map); |
||||||
|
} else { |
||||||
|
if (rtData.equals("fail")) { |
||||||
|
return HttpResult.error(500, "fail"); |
||||||
|
} else { |
||||||
|
return HttpResult.ok(rtData, rtData); |
||||||
|
} |
||||||
|
} |
||||||
|
} catch (Exception e) { |
||||||
|
Constant.WEB_FLAG = false; //单抄,恢复采集
|
||||||
|
return HttpResult.error(500, "fail"); |
||||||
|
} finally { |
||||||
|
Constant.WEB_FLAG = false; //单抄,恢复采集
|
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
} |
@ -0,0 +1,23 @@ |
|||||||
|
package com.mh.user.service; |
||||||
|
|
||||||
|
import com.mh.user.model.SerialPortModel; |
||||||
|
|
||||||
|
import java.util.List; |
||||||
|
|
||||||
|
/** |
||||||
|
* @author LJF |
||||||
|
* @version 1.0 |
||||||
|
* @project CHWS |
||||||
|
* @description 设备控制服务类 |
||||||
|
* @date 2023-12-21 10:18:34 |
||||||
|
*/ |
||||||
|
public interface DeviceControlService { |
||||||
|
|
||||||
|
/** |
||||||
|
* 读写设备 |
||||||
|
* @param params |
||||||
|
* @return |
||||||
|
*/ |
||||||
|
public String readOrWriteDevice(List<SerialPortModel> params, String type); |
||||||
|
|
||||||
|
} |
@ -0,0 +1,336 @@ |
|||||||
|
package com.mh.user.service.impl; |
||||||
|
|
||||||
|
import com.mh.common.http.HttpResult; |
||||||
|
import com.mh.common.utils.StringUtils; |
||||||
|
import com.mh.user.constants.Constant; |
||||||
|
import com.mh.user.entity.ControlSetEntity; |
||||||
|
import com.mh.user.entity.DeviceCodeParamEntity; |
||||||
|
import com.mh.user.entity.DeviceInstallEntity; |
||||||
|
import com.mh.user.entity.PumpSetEntity; |
||||||
|
import com.mh.user.model.DeviceModel; |
||||||
|
import com.mh.user.model.SerialPortModel; |
||||||
|
import com.mh.user.serialport.SerialPortSingle2; |
||||||
|
import com.mh.user.service.*; |
||||||
|
import lombok.extern.slf4j.Slf4j; |
||||||
|
import org.springframework.stereotype.Service; |
||||||
|
|
||||||
|
import javax.annotation.Resource; |
||||||
|
import java.math.BigDecimal; |
||||||
|
import java.util.List; |
||||||
|
|
||||||
|
/** |
||||||
|
* @author LJF |
||||||
|
* @version 1.0 |
||||||
|
* @project CHWS |
||||||
|
* @description 设备控制服务类 |
||||||
|
* @date 2023-12-21 10:21:11 |
||||||
|
*/ |
||||||
|
@Slf4j |
||||||
|
@Service |
||||||
|
public class DeviceControlServiceImpl implements DeviceControlService { |
||||||
|
|
||||||
|
@Resource |
||||||
|
private DeviceInstallService deviceInstallService; |
||||||
|
|
||||||
|
@Resource |
||||||
|
private PumpSetService pumpSetService; |
||||||
|
|
||||||
|
@Resource |
||||||
|
private NowDataService nowDataService; |
||||||
|
|
||||||
|
@Resource |
||||||
|
private ControlSetService controlSetService; |
||||||
|
|
||||||
|
@Override |
||||||
|
public String readOrWriteDevice(List<SerialPortModel> params, String type) { |
||||||
|
try { |
||||||
|
SerialPortSingle2 serialPortSingle = new SerialPortSingle2(); |
||||||
|
String rtData = ""; |
||||||
|
for (SerialPortModel serialPortModel : params) { |
||||||
|
|
||||||
|
DeviceCodeParamEntity deviceCodeParam = new DeviceCodeParamEntity(); |
||||||
|
|
||||||
|
String deviceAddr = serialPortModel.getDeviceAddr(); |
||||||
|
String deviceType = serialPortModel.getDeviceType(); |
||||||
|
String buildingId = serialPortModel.getBuildingId(); |
||||||
|
String param = serialPortModel.getParam(); |
||||||
|
|
||||||
|
if (StringUtils.isBlank(deviceAddr)) { |
||||||
|
List<DeviceModel> list = deviceInstallService.selectDevices(buildingId, deviceType); |
||||||
|
deviceAddr = list.get(0).getDeviceAddr(); |
||||||
|
} |
||||||
|
if (deviceAddr == null || deviceAddr.length() == 0) { |
||||||
|
return "fail"; |
||||||
|
} |
||||||
|
|
||||||
|
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.setBuildingId(buildingId); |
||||||
|
|
||||||
|
String brand = deviceInstallEntity.getBrand(); |
||||||
|
deviceCodeParam.setBrand(brand); |
||||||
|
|
||||||
|
deviceCodeParam.setParam(param); |
||||||
|
|
||||||
|
ControlSetEntity controlData = new ControlSetEntity(); |
||||||
|
controlData.setBuildingId(deviceInstallEntity.getBuildingId()); |
||||||
|
|
||||||
|
// 根据设备类型和参数执行相应的操作
|
||||||
|
switch (deviceType) { |
||||||
|
case "热泵": |
||||||
|
rtData = handleHotPump(serialPortModel, deviceCodeParam, controlData, rtData, type, serialPortSingle); |
||||||
|
break; |
||||||
|
case "时控": |
||||||
|
rtData = handleTimeControl(serialPortModel, deviceCodeParam, controlData, rtData, type, serialPortSingle); |
||||||
|
break; |
||||||
|
case "水位开关": |
||||||
|
rtData = handleWaterLevelSwitch(serialPortModel, deviceCodeParam, controlData, rtData, type, serialPortSingle); |
||||||
|
break; |
||||||
|
case "温度变送器": |
||||||
|
rtData = handleTemperatureTransmitter(serialPortModel, deviceCodeParam, controlData, rtData, type, serialPortSingle); |
||||||
|
break; |
||||||
|
case "压变": |
||||||
|
rtData = handlePressureTransducer(serialPortModel, deviceCodeParam, controlData, rtData, type, serialPortSingle); |
||||||
|
break; |
||||||
|
case "水表": |
||||||
|
rtData = handleWaterMeter(serialPortModel, deviceCodeParam, controlData, controlData, rtData, type, serialPortSingle); |
||||||
|
break; |
||||||
|
case "电表": |
||||||
|
rtData = handleElectricMeter(serialPortModel, deviceCodeParam, controlData, rtData, type, serialPortSingle); |
||||||
|
break; |
||||||
|
default: |
||||||
|
rtData = handleHotPump(serialPortModel, deviceCodeParam, controlData, rtData, type, serialPortSingle); |
||||||
|
break; |
||||||
|
} |
||||||
|
if (Constant.WRITE.equals(type)) { |
||||||
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
||||||
|
} |
||||||
|
} |
||||||
|
return rtData; |
||||||
|
} catch (Exception e) { |
||||||
|
log.error("设备控制异常", e); |
||||||
|
return Constant.FAIL; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
private String handleElectricMeter(SerialPortModel serialPortModel, DeviceCodeParamEntity deviceCodeParam, ControlSetEntity controlData, String rtData, String type, SerialPortSingle2 serialPortSingle) { |
||||||
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam); |
||||||
|
return rtData; |
||||||
|
} |
||||||
|
|
||||||
|
private String handleWaterMeter(SerialPortModel serialPortModel, DeviceCodeParamEntity deviceCodeParam, ControlSetEntity controlData, ControlSetEntity controlData1, String rtData, String type, SerialPortSingle2 serialPortSingle) { |
||||||
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam); |
||||||
|
// 要添加校准值
|
||||||
|
Double deviationValue = deviceInstallService.selectDeviceDeviation(deviceCodeParam.getDeviceAddr(),deviceCodeParam.getDeviceType(), deviceCodeParam.getBuildingId()); |
||||||
|
if (null != deviationValue && !"fail".equals(rtData)) { |
||||||
|
rtData = new BigDecimal(rtData).add(BigDecimal.valueOf(deviationValue)).toString(); |
||||||
|
} |
||||||
|
return rtData; |
||||||
|
} |
||||||
|
|
||||||
|
private String handlePressureTransducer(SerialPortModel serialPortModel, DeviceCodeParamEntity deviceCodeParam, ControlSetEntity controlData, String rtData, String type, SerialPortSingle2 serialPortSingle) { |
||||||
|
deviceCodeParam.setFunCode("03"); //功能码读
|
||||||
|
deviceCodeParam.setRegisterAddr("0004"); |
||||||
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
||||||
|
return rtData; |
||||||
|
} |
||||||
|
|
||||||
|
private String handleTemperatureTransmitter(SerialPortModel serialPortModel, DeviceCodeParamEntity deviceCodeParam, ControlSetEntity controlData, String rtData, String type, SerialPortSingle2 serialPortSingle) { |
||||||
|
deviceCodeParam.setFunCode("03"); //功能码读
|
||||||
|
deviceCodeParam.setRegisterAddr("0028"); |
||||||
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
||||||
|
return rtData; |
||||||
|
} |
||||||
|
|
||||||
|
private String handleWaterLevelSwitch(SerialPortModel serialPortModel, DeviceCodeParamEntity deviceCodeParam, ControlSetEntity controlData, String rtData, String type, SerialPortSingle2 serialPortSingle) throws InterruptedException { |
||||||
|
if (Constant.WRITE.equals(type)) { |
||||||
|
switch (deviceCodeParam.getBrand()) { |
||||||
|
case "远向": |
||||||
|
deviceCodeParam.setFunCode("06"); //功能码写数据
|
||||||
|
if (!serialPortModel.getDataValue().equals("100%")) { |
||||||
|
deviceCodeParam.setDataValue("100%"); |
||||||
|
// serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
||||||
|
// Thread.sleep(1000);
|
||||||
|
} |
||||||
|
break; |
||||||
|
case "顶威": |
||||||
|
deviceCodeParam.setFunCode("0407"); //功能码写数据
|
||||||
|
break; |
||||||
|
default: |
||||||
|
deviceCodeParam.setFunCode("12"); //功能码写数据
|
||||||
|
if (!serialPortModel.getDataValue().equals("100%")) { |
||||||
|
deviceCodeParam.setDataValue("100%"); |
||||||
|
// serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
||||||
|
// Thread.sleep(1000);
|
||||||
|
} |
||||||
|
break; |
||||||
|
} |
||||||
|
deviceCodeParam.setDataValue(serialPortModel.getDataValue()); |
||||||
|
nowDataService.upLevelSet(deviceCodeParam.getBuildingId(), serialPortModel.getDataValue());//更新实时状态表
|
||||||
|
} else if (Constant.READ.equals(type)) { |
||||||
|
//生成并发送指令
|
||||||
|
if ("状态".equals(deviceCodeParam.getParam())) { |
||||||
|
if ("远向".equals(deviceCodeParam.getBrand())) { |
||||||
|
deviceCodeParam.setFunCode("03"); //功能码读
|
||||||
|
deviceCodeParam.setRegisterAddr("0010"); |
||||||
|
} |
||||||
|
} else { |
||||||
|
if (StringUtils.isBlank(deviceCodeParam.getBrand()) |
||||||
|
|| "中凯".equals(deviceCodeParam.getBrand())) {//品牌
|
||||||
|
deviceCodeParam.setFunCode("17"); //功能码读
|
||||||
|
deviceCodeParam.setRegisterAddr("0017"); |
||||||
|
} else if ("远向".equals(deviceCodeParam.getBrand())) { |
||||||
|
deviceCodeParam.setFunCode("03"); //功能码读
|
||||||
|
deviceCodeParam.setRegisterAddr("0018"); |
||||||
|
} else if ("顶威".equals(deviceCodeParam.getBrand())) { |
||||||
|
deviceCodeParam.setFunCode("0102"); //功能码读
|
||||||
|
deviceCodeParam.setRegisterAddr("0102"); |
||||||
|
} |
||||||
|
} |
||||||
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
||||||
|
} |
||||||
|
return rtData; |
||||||
|
} |
||||||
|
|
||||||
|
private String handleTimeControl(SerialPortModel serialPortModel, DeviceCodeParamEntity deviceCodeParam, ControlSetEntity controlData, String rtData, String type, SerialPortSingle2 serialPortSingle) { |
||||||
|
String time = serialPortModel.getDataValue(); |
||||||
|
if (Constant.READ.equals(type)) { |
||||||
|
deviceCodeParam.setFunCode("03"); //功能码读数据
|
||||||
|
if (deviceCodeParam.getParam().equals("L1")) { |
||||||
|
deviceCodeParam.setRegisterAddr("0009"); //寄存器地址,L3路,L1(0009),L2(000D)
|
||||||
|
} else if (deviceCodeParam.getParam().equals("L2")) { |
||||||
|
deviceCodeParam.setRegisterAddr("000D"); |
||||||
|
} else { |
||||||
|
deviceCodeParam.setRegisterAddr("0011"); |
||||||
|
} |
||||||
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
||||||
|
time = rtData; |
||||||
|
} else { |
||||||
|
deviceCodeParam.setFunCode("10"); //功能码写数据
|
||||||
|
} |
||||||
|
if (time.length() == 16) { |
||||||
|
//时段1 HHmmHHmm
|
||||||
|
String statTime1 = time.substring(0, 2) + ":" + time.substring(2, 4); //HH:mm
|
||||||
|
String closeTime1 = time.substring(4, 6) + ":" + time.substring(6, 8); //HH:mm
|
||||||
|
//时段2
|
||||||
|
String statTime2 = time.substring(8, 10) + ":" + time.substring(10, 12); |
||||||
|
String closeTime2 = time.substring(12, 14) + ":" + time.substring(14, 16); |
||||||
|
if ("L1".equals(deviceCodeParam.getParam())) { |
||||||
|
deviceCodeParam.setRegisterAddr("0009"); //寄存器地址,L3路,L1(0009),L2(000D)
|
||||||
|
controlData.setUseStartTime1(statTime1); |
||||||
|
controlData.setUseCloseTime1(closeTime1); |
||||||
|
controlData.setUseStartTime2(statTime2); |
||||||
|
controlData.setUseCloseTime2(closeTime2); |
||||||
|
} else if ("L2".equals(deviceCodeParam.getParam())) { |
||||||
|
deviceCodeParam.setRegisterAddr("000D"); |
||||||
|
controlData.setUseStartTime3(statTime1); |
||||||
|
controlData.setUseCloseTime3(closeTime1); |
||||||
|
controlData.setUseStartTime4(statTime2); |
||||||
|
controlData.setUseCloseTime4(closeTime2); |
||||||
|
} else { |
||||||
|
deviceCodeParam.setRegisterAddr("0011"); |
||||||
|
controlData.setUseStartTime5(statTime1); |
||||||
|
controlData.setUseCloseTime5(closeTime1); |
||||||
|
controlData.setUseStartTime6(statTime2); |
||||||
|
controlData.setUseCloseTime6(closeTime2); |
||||||
|
} |
||||||
|
} |
||||||
|
controlSetService.saveControlSet(controlData); //保存设置内容
|
||||||
|
return rtData; |
||||||
|
} |
||||||
|
|
||||||
|
private String handleHotPump(SerialPortModel serialPortModel, DeviceCodeParamEntity deviceCodeParam, ControlSetEntity controlData, String rtData, String type, SerialPortSingle2 serialPortSingle) { |
||||||
|
//设置热泵实体对象
|
||||||
|
PumpSetEntity pumpData = new PumpSetEntity(); |
||||||
|
pumpData.setBuildingId(deviceCodeParam.getBuildingId()); |
||||||
|
pumpData.setPumpId(deviceCodeParam.getDeviceAddr()); |
||||||
|
if (StringUtils.isBlank(deviceCodeParam.getParam()) || deviceCodeParam.getParam().equals("温度设定")) { |
||||||
|
//发送指令
|
||||||
|
if (deviceCodeParam.getBrand().equals("美的")) { |
||||||
|
deviceCodeParam.setRegisterAddr("0642"); //寄存器地址
|
||||||
|
deviceCodeParam.setFunCode("10"); //功能码写数据
|
||||||
|
} else { |
||||||
|
deviceCodeParam.setRegisterAddr("0003"); //寄存器地址
|
||||||
|
deviceCodeParam.setFunCode("06"); //功能码写数据
|
||||||
|
} |
||||||
|
//保存数据
|
||||||
|
if (Constant.READ.equals(type)) { |
||||||
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
||||||
|
if (!rtData.equals("fail")) { |
||||||
|
pumpData.setTempSet(rtData); |
||||||
|
pumpSetService.savePumpSet(pumpData);//热泵信息保存数据库
|
||||||
|
} |
||||||
|
return rtData; |
||||||
|
} |
||||||
|
pumpData.setTempSet(serialPortModel.getDataValue()); |
||||||
|
pumpSetService.savePumpSet(pumpData);//热泵信息保存数据库
|
||||||
|
|
||||||
|
nowDataService.upTempSet2(deviceCodeParam.getBuildingId(), serialPortModel.getDataValue(), deviceCodeParam.getDeviceAddr());//更新实时状态表
|
||||||
|
log.info("楼栋编号:" + deviceCodeParam.getBuildingId() + ",设定温度:" + serialPortModel.getDataValue() + ",热泵编号:" + deviceCodeParam.getDeviceAddr()); |
||||||
|
} else if (deviceCodeParam.getParam().equals("时段1") || deviceCodeParam.getParam().equals("时段2")) { |
||||||
|
if (deviceCodeParam.getBrand().equals("美的")) { |
||||||
|
//发送指令
|
||||||
|
if (Constant.READ.equals(type)) { |
||||||
|
deviceCodeParam.setFunCode("03"); //功能码读数据
|
||||||
|
} else { |
||||||
|
deviceCodeParam.setFunCode("10"); //功能码写数据
|
||||||
|
} |
||||||
|
if ("时段1".equals(deviceCodeParam.getParam())) { |
||||||
|
deviceCodeParam.setRegisterAddr("0656"); //寄存器地址
|
||||||
|
} else { |
||||||
|
deviceCodeParam.setRegisterAddr("065A"); //寄存器地址
|
||||||
|
} |
||||||
|
|
||||||
|
if (Constant.READ.equals(type)) { |
||||||
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
||||||
|
} else { |
||||||
|
rtData = serialPortModel.getDataValue(); |
||||||
|
} |
||||||
|
if (!rtData.equals("fail")) { |
||||||
|
if (rtData.length() == 8) { |
||||||
|
String statTime = rtData.substring(0, 2) + ":" + rtData.substring(2, 4); |
||||||
|
String closeTime = rtData.substring(4, 6) + ":" + rtData.substring(6, 8); |
||||||
|
if ("时段1".equals(deviceCodeParam.getParam())) { |
||||||
|
pumpData.setStartTime1(statTime); |
||||||
|
pumpData.setCloseTime1(closeTime); |
||||||
|
} else if ("时段2".equals(deviceCodeParam.getParam())) { |
||||||
|
pumpData.setStartTime2(statTime); |
||||||
|
pumpData.setCloseTime2(closeTime); |
||||||
|
} |
||||||
|
} |
||||||
|
pumpSetService.savePumpSet(pumpData);//热泵信息保存数据库
|
||||||
|
} |
||||||
|
return rtData; |
||||||
|
} |
||||||
|
} else if ("实际温度".equals(deviceCodeParam.getParam())) { |
||||||
|
deviceCodeParam.setFunCode("03"); //功能码读数据
|
||||||
|
if ("美的".equals(deviceCodeParam.getBrand())) { |
||||||
|
deviceCodeParam.setRegisterAddr("0007"); //寄存器地址
|
||||||
|
} else { |
||||||
|
deviceCodeParam.setRegisterAddr("0064"); //寄存器地址
|
||||||
|
} |
||||||
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
||||||
|
if (!rtData.equals("fail")) { |
||||||
|
pumpData.setWaterTemp(rtData); |
||||||
|
pumpSetService.savePumpSet(pumpData);//热泵信息保存数据库
|
||||||
|
} |
||||||
|
return rtData; |
||||||
|
} else if ("运行状态".equals(deviceCodeParam.getParam())) { |
||||||
|
deviceCodeParam.setFunCode("03"); //功能码读数据
|
||||||
|
if ("美的".equals(deviceCodeParam.getBrand())) { |
||||||
|
deviceCodeParam.setRegisterAddr("0641"); //寄存器地址
|
||||||
|
} else { |
||||||
|
deviceCodeParam.setRegisterAddr("0BBD"); //寄存器地址
|
||||||
|
} |
||||||
|
rtData = serialPortSingle.serialPortSend(deviceCodeParam);//生成并发送指令
|
||||||
|
return rtData; |
||||||
|
} |
||||||
|
return rtData; |
||||||
|
} |
||||||
|
} |
Loading…
Reference in new issue