|
@@ -10,7 +10,9 @@ import com.huimv.env.common.entity.*;
|
|
|
import com.huimv.env.common.service.*;
|
|
|
import com.huimv.env.device.service.IDeviceService;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.aspectj.weaver.ast.Var;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.boot.autoconfigure.couchbase.CouchbaseProperties;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
@@ -29,6 +31,9 @@ public class DeviceServiceImpl implements IDeviceService {
|
|
|
private IEnvWarningService warningService;
|
|
|
|
|
|
@Autowired
|
|
|
+ private IEnvAmmoniaService iEnvAmmoniaService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
private IEnvDeviceService envDeviceService;
|
|
|
|
|
|
@Autowired
|
|
@@ -39,12 +44,48 @@ public class DeviceServiceImpl implements IDeviceService {
|
|
|
@Autowired
|
|
|
private IEnvDeviceFanService envDeviceFanService;
|
|
|
@Autowired
|
|
|
- private IEnvDeviceOtherService envDeviceOtherService;
|
|
|
- @Autowired
|
|
|
private IEnvDayagePeizhiService envDayagePeizhiService;
|
|
|
@Autowired
|
|
|
private IEnvFengPeizhiService envFengPeizhiService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private IEnvCo2Service envCo2Service;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IEnvPressureService pressureService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IEnvWaterService envWaterService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IEnvElectricityService envElectricityService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IEnvDeviceHeaterService heaterService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IEnvDeviceFenestruleService fenestruleService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IEnvDeviceDeflectorService deviceDeflectorService;
|
|
|
+ @Autowired
|
|
|
+ private IEnvDeviceFloodlightService floodlightService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IEnvDevicePadService envDevicePadService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IEnvDeviceAtomizingService atomizingService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IEnvDeviceChuchouService chuchouService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IEnvDeviceLiaotaService liaotaService;
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ private static BigDecimal BIG_10 = new BigDecimal(10);
|
|
|
@Override
|
|
|
@Transactional
|
|
|
public void saveTemp(String[] dataArray) {
|
|
@@ -53,26 +94,67 @@ public class DeviceServiceImpl implements IDeviceService {
|
|
|
String originalTempValue = dataArray[4];
|
|
|
String status = dataArray[5];
|
|
|
String time = dataArray[6];
|
|
|
+ if (ordeNumber != null && ordeNumber.length() == 1){
|
|
|
+ ordeNumber ="0"+ordeNumber;
|
|
|
+ }
|
|
|
String chipId = getChipId(deviceCode,4,ordeNumber);
|
|
|
Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
+
|
|
|
+ if(tempService.exitTemp(chipId,uploadDate))
|
|
|
+ return;
|
|
|
+
|
|
|
+
|
|
|
EnvDeviceRecentlyData envDeviceRecentlyData = envDeviceRecentlyDataService.getbyChipId(chipId);
|
|
|
EnvDevice envDevice = envDeviceService.getByDeviceCode(deviceCode);
|
|
|
- //判断传感器 故障
|
|
|
- if ("1".equals(status) || "0".equals(originalTempValue) ){
|
|
|
- log.info("传感器异常,未加入流水");
|
|
|
- warningService.saveWarning(uploadDate,envDeviceRecentlyData,envDevice,chipId);
|
|
|
- envDeviceRecentlyDataService.updateByChipId(uploadDate,envDeviceRecentlyData,null,2);
|
|
|
- return;
|
|
|
- }
|
|
|
|
|
|
BigDecimal tempValue = new BigDecimal(originalTempValue);
|
|
|
BigDecimal tempValueHandle = new BigDecimal(0);
|
|
|
if (tempValue.intValue() != 0){
|
|
|
- tempValueHandle = tempValue.divide(new BigDecimal(10),1,BigDecimal.ROUND_HALF_UP);
|
|
|
+ tempValueHandle = tempValue.divide(BIG_10,1,BigDecimal.ROUND_HALF_UP);
|
|
|
}
|
|
|
|
|
|
//更新实时表
|
|
|
- envDeviceRecentlyDataService.updateByChipId(uploadDate,envDeviceRecentlyData,tempValueHandle,1);
|
|
|
+ int oudernum = Integer.parseInt(ordeNumber);
|
|
|
+ if (oudernum >6 && oudernum<9){
|
|
|
+ if ("1".equals(status)){
|
|
|
+ envDeviceRecentlyDataService.updateByChipId(uploadDate,envDeviceRecentlyData,tempValueHandle,2);
|
|
|
+ }else {
|
|
|
+ envDeviceRecentlyDataService.updateByChipId(uploadDate,envDeviceRecentlyData,tempValueHandle,1);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ EnvWarning one = warningService.getOne(new QueryWrapper<EnvWarning>().eq("chip_code", chipId).orderByDesc("update_time").last("limit 1"));
|
|
|
+
|
|
|
+ //判断传感器 故障 状态为1或者值为0 ,并且上次无报警或报警恢复
|
|
|
+ if (("1".equals(status) || "0".equals(originalTempValue)) && (ObjectUtil.isEmpty(one) || 2 ==one.getWarningAct() ) ){
|
|
|
+ log.info("传感器异常,未加入流水");
|
|
|
+ EnvWarning envWarning = new EnvWarning();
|
|
|
+ envWarning.setUnitId(envDevice.getUnitId());
|
|
|
+ envWarning.setWarningAct(1);
|
|
|
+ envWarning.setWarningType(8);
|
|
|
+ envWarning.setWarningContent("温度"+ordeNumber+"传感器异常");
|
|
|
+ envWarning.setFarmId(envDevice.getFarmId());
|
|
|
+ envWarning.setDeviceCode(envDevice.getDeviceCode());
|
|
|
+ envWarning.setChipCode(chipId);
|
|
|
+ envWarning.setUpdateTime(uploadDate);
|
|
|
+ warningService.save(envWarning);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ //判断传感器 恢复
|
|
|
+ if ("0".equals(status) && ObjectUtil.isNotEmpty(one) && 1 ==one.getWarningAct() ){
|
|
|
+ EnvWarning envWarning = new EnvWarning();
|
|
|
+ envWarning.setUnitId(envDevice.getUnitId());
|
|
|
+ envWarning.setWarningAct(2);
|
|
|
+ envWarning.setWarningType(8);
|
|
|
+ envWarning.setWarningContent("温度"+ordeNumber+"传感器恢复");
|
|
|
+ envWarning.setFarmId(envDevice.getFarmId());
|
|
|
+ envWarning.setDeviceCode(deviceCode);
|
|
|
+ envWarning.setUpdateTime(uploadDate);
|
|
|
+ envWarning.setChipCode(chipId);
|
|
|
+ warningService.save(envWarning);
|
|
|
+ }
|
|
|
+
|
|
|
//更新流水表
|
|
|
tempService.saveTemp(chipId,envDevice,uploadDate,tempValueHandle,tempValue);
|
|
|
}
|
|
@@ -88,23 +170,64 @@ public class DeviceServiceImpl implements IDeviceService {
|
|
|
BigDecimal humiValue = new BigDecimal(originalHumiValue);
|
|
|
BigDecimal humiValueHandle = new BigDecimal(0);
|
|
|
if (humiValue.intValue() != 0 ){
|
|
|
- humiValueHandle = humiValue.divide(new BigDecimal(10),1,BigDecimal.ROUND_HALF_UP);
|
|
|
+ humiValueHandle = humiValue.divide(BIG_10,1,BigDecimal.ROUND_HALF_UP);
|
|
|
}
|
|
|
Integer order = (Integer.parseInt(ordeNumber) + 11);
|
|
|
String chipId = deviceCode + "14"+order;
|
|
|
+ Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
+ if(envHumiService.exitHumi(chipId,uploadDate))
|
|
|
+ return;
|
|
|
+
|
|
|
+
|
|
|
EnvDevice envDevice = envDeviceService.getByDeviceCode(deviceCode);
|
|
|
EnvDeviceRecentlyData envDeviceRecentlyData = envDeviceRecentlyDataService.getbyChipId(chipId);
|
|
|
- Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
|
|
|
- //判断传感器 故障
|
|
|
- if ("1".equals(status)|| "0".equals(originalHumiValue)){
|
|
|
+
|
|
|
+ EnvWarning one = warningService.getOne(new QueryWrapper<EnvWarning>().eq("chip_code", chipId).orderByDesc("update_time").last("limit 1"));
|
|
|
+
|
|
|
+ //判断传感器 故障 状态为1或者值为0 ,并且上次无报警或报警恢复
|
|
|
+ if ("1".equals(status) && (ObjectUtil.isEmpty(one) || 2 ==one.getWarningAct() ) ){
|
|
|
log.info("传感器异常,未加入流水");
|
|
|
- warningService.saveWarning(uploadDate,envDeviceRecentlyData,envDevice,chipId);
|
|
|
- envDeviceRecentlyDataService.updateByChipId(uploadDate,envDeviceRecentlyData,null,2);
|
|
|
+ EnvWarning envWarning = new EnvWarning();
|
|
|
+ envWarning.setUnitId(envDevice.getUnitId());
|
|
|
+ envWarning.setWarningAct(1);
|
|
|
+ envWarning.setWarningType(8);
|
|
|
+ envWarning.setWarningContent(envDeviceRecentlyData.getChipName()+"传感器异常");
|
|
|
+ envWarning.setFarmId(envDevice.getFarmId());
|
|
|
+ envWarning.setDeviceCode(envDevice.getDeviceCode());
|
|
|
+ envWarning.setChipCode(chipId);
|
|
|
+ envWarning.setUpdateTime(uploadDate);
|
|
|
+ warningService.save(envWarning);
|
|
|
+ envDeviceRecentlyDataService.updateByChipId(uploadDate,envDeviceRecentlyData,humiValueHandle,2);
|
|
|
return;
|
|
|
}
|
|
|
- //更新实时表
|
|
|
- envDeviceRecentlyDataService.updateByChipId(uploadDate,envDeviceRecentlyData,humiValueHandle,1);
|
|
|
+
|
|
|
+ //判断传感器 恢复
|
|
|
+ if ("0".equals(status) && ObjectUtil.isNotEmpty(one) && 1 ==one.getWarningAct() ){
|
|
|
+ EnvWarning envWarning = new EnvWarning();
|
|
|
+ envWarning.setUnitId(envDevice.getUnitId());
|
|
|
+ envWarning.setWarningAct(2);
|
|
|
+ envWarning.setWarningType(8);
|
|
|
+ envWarning.setWarningContent(envDeviceRecentlyData.getChipName()+"传感器恢复");
|
|
|
+ envWarning.setFarmId(envDevice.getFarmId());
|
|
|
+ envWarning.setDeviceCode(deviceCode);
|
|
|
+ envWarning.setUpdateTime(uploadDate);
|
|
|
+ envWarning.setChipCode(chipId);
|
|
|
+ warningService.save(envWarning);
|
|
|
+ envDeviceRecentlyDataService.updateByChipId(uploadDate,envDeviceRecentlyData,humiValueHandle,1);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+// //判断传感器 故障
|
|
|
+// if ("1".equals(status)|| "0".equals(originalHumiValue)){
|
|
|
+// if (envDeviceRecentlyData.getChipStatus() !=1 ){
|
|
|
+// System.out.println("异常未恢复,未重新添加");
|
|
|
+// return;
|
|
|
+// }
|
|
|
+// log.info("传感器异常,未加入流水");
|
|
|
+// warningService.saveWarning(uploadDate,envDeviceRecentlyData,envDevice,chipId,null);
|
|
|
+// return;
|
|
|
+// }
|
|
|
//新增流水表
|
|
|
envHumiService.saveHumi(chipId,envDevice,uploadDate,humiValueHandle,humiValue);
|
|
|
}
|
|
@@ -115,7 +238,7 @@ public class DeviceServiceImpl implements IDeviceService {
|
|
|
String deviceCode = dataArray[1];
|
|
|
String dayAge = dataArray[3];
|
|
|
EnvDevice envDevice = envDeviceService.getByDeviceCode(deviceCode);
|
|
|
- envDevice.setDayAge(Integer.parseInt(dayAge));
|
|
|
+ envDevice.setDayAge(new BigDecimal(dayAge).divide(BIG_10,1,BigDecimal.ROUND_HALF_UP).toString());
|
|
|
envDeviceService.updateById(envDevice);
|
|
|
}
|
|
|
|
|
@@ -141,12 +264,16 @@ public class DeviceServiceImpl implements IDeviceService {
|
|
|
BigDecimal tempValue = new BigDecimal(originalTempValue);
|
|
|
BigDecimal tempValueHandle = new BigDecimal(0);
|
|
|
if (tempValue.intValue() != 0){
|
|
|
- tempValueHandle = tempValue.divide(new BigDecimal(10),2,BigDecimal.ROUND_HALF_UP);
|
|
|
+ tempValueHandle = tempValue.divide(BIG_10,2,BigDecimal.ROUND_HALF_UP);
|
|
|
}
|
|
|
- String chipId = deviceCode+"149";
|
|
|
+ String chipId = deviceCode+"1409";
|
|
|
+ Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
+ if(tempService.exitTemp(chipId,uploadDate))
|
|
|
+ return;
|
|
|
+
|
|
|
EnvDevice envDevice = envDeviceService.getByDeviceCode(deviceCode);
|
|
|
EnvDeviceRecentlyData envDeviceRecentlyData = envDeviceRecentlyDataService.getbyChipId(chipId);
|
|
|
- Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
+
|
|
|
//更新实时表
|
|
|
envDeviceRecentlyDataService.updateByChipId(uploadDate,envDeviceRecentlyData,tempValueHandle,1);
|
|
|
//更新流水表
|
|
@@ -162,12 +289,14 @@ public class DeviceServiceImpl implements IDeviceService {
|
|
|
BigDecimal tempValue = new BigDecimal(originalTempValue);
|
|
|
BigDecimal tempValueHandle = new BigDecimal(0);
|
|
|
if (tempValue.intValue() != 0){
|
|
|
- tempValueHandle = tempValue.divide(new BigDecimal(10),2,BigDecimal.ROUND_HALF_UP);
|
|
|
+ tempValueHandle = tempValue.divide(BIG_10,2,BigDecimal.ROUND_HALF_UP);
|
|
|
}
|
|
|
String chipId = deviceCode+"1411";
|
|
|
+ Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
+ if(tempService.exitTemp(chipId,uploadDate))
|
|
|
+ return;
|
|
|
EnvDevice envDevice = envDeviceService.getByDeviceCode(deviceCode);
|
|
|
EnvDeviceRecentlyData envDeviceRecentlyData = envDeviceRecentlyDataService.getbyChipId(chipId);
|
|
|
- Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
//更新实时表
|
|
|
envDeviceRecentlyDataService.updateByChipId(uploadDate,envDeviceRecentlyData,tempValueHandle,1);
|
|
|
//更新流水表
|
|
@@ -183,15 +312,18 @@ public class DeviceServiceImpl implements IDeviceService {
|
|
|
String time = dataArray[5];
|
|
|
EnvDevice envDevice = envDeviceService.getByDeviceCode(deviceCode);
|
|
|
Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
- warningService.saveWarnings(envDevice,uploadDate,ordeNumber,actType);
|
|
|
- if ("1".equals(ordeNumber)){
|
|
|
- if ("1".equals(actType)){
|
|
|
- envDevice.setDeviceStatus(0);
|
|
|
- }else {
|
|
|
- envDevice.setDeviceStatus(1);
|
|
|
+ if (("1".equals(ordeNumber) && envDevice.getDeviceStatus()==1) ||(!"1".equals(ordeNumber) && !(envDevice.getDeviceStatus()==1))){
|
|
|
+ warningService.saveWarnings(envDevice,uploadDate,ordeNumber,actType);
|
|
|
+ if ("1".equals(ordeNumber) ){
|
|
|
+ if ("1".equals(actType)){
|
|
|
+ envDevice.setDeviceStatus(0);
|
|
|
+ }else {
|
|
|
+ envDevice.setDeviceStatus(1);
|
|
|
+ }
|
|
|
+ envDeviceService.updateById(envDevice);
|
|
|
}
|
|
|
- envDeviceService.updateById(envDevice);
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -203,7 +335,7 @@ public class DeviceServiceImpl implements IDeviceService {
|
|
|
BigDecimal tempValue = new BigDecimal(originalTempValue);
|
|
|
BigDecimal tempValueHandle = new BigDecimal(0);
|
|
|
if (tempValue.intValue() != 0){
|
|
|
- tempValueHandle = tempValue.divide(new BigDecimal(10),1,BigDecimal.ROUND_HALF_UP);
|
|
|
+ tempValueHandle = tempValue.divide(BIG_10,1,BigDecimal.ROUND_HALF_UP);
|
|
|
}
|
|
|
String chipId = deviceCode+"1410";
|
|
|
EnvDeviceRecentlyData envDeviceRecentlyData = envDeviceRecentlyDataService.getbyChipId(chipId);
|
|
@@ -216,25 +348,59 @@ public class DeviceServiceImpl implements IDeviceService {
|
|
|
public void saveFengStatus(String[] dataArray) {
|
|
|
String deviceCode = dataArray[1];
|
|
|
String originalTempValue = dataArray[3];
|
|
|
- String time = dataArray[4];
|
|
|
- long fanNum = envDeviceFanService.count(new QueryWrapper<EnvDeviceFan>().eq("device_code", deviceCode));
|
|
|
+ String bianPingoriginalTempValue = dataArray[4];
|
|
|
+// String zhuangShu = dataArray[5];
|
|
|
+ String time = dataArray[5];
|
|
|
+ Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
//hm+1001+61+16383+20230406135801+6+end
|
|
|
+ //2023-05-30新:hm+1001+61+63+3+50+20230530162016+1+end
|
|
|
+ long fanNum = envDeviceFanService.count(new QueryWrapper<EnvDeviceFan>().eq("device_code", deviceCode).eq("feng_type",1));
|
|
|
String s = Integer.toBinaryString(Integer.parseInt(originalTempValue));
|
|
|
String str = getStr(s,fanNum);
|
|
|
int orderId = 1;
|
|
|
for (int i = str.length() - 1; i >= 0; i--) {
|
|
|
//状态
|
|
|
char c = str.charAt(i);
|
|
|
- String chipId = deviceCode+"11"+orderId;
|
|
|
+ String chipId ;
|
|
|
+ if (orderId <10){
|
|
|
+ chipId = deviceCode+"110"+orderId;
|
|
|
+ }else {
|
|
|
+ chipId = deviceCode+"11"+orderId;
|
|
|
+ }
|
|
|
orderId++;
|
|
|
EnvDeviceFan deviceFan = envDeviceFanService.getOne(new QueryWrapper<EnvDeviceFan>().eq("chip_code", chipId));
|
|
|
System.out.println(deviceFan.toString());
|
|
|
if (ObjectUtil.isNotEmpty(deviceFan)){
|
|
|
deviceFan.setDeviceCode(deviceFan.getDeviceCode());
|
|
|
deviceFan.setChipStatus(c == '1' ? 1 : 0);
|
|
|
+ deviceFan.setUpdateTime(uploadDate);
|
|
|
envDeviceFanService.updateById(deviceFan);
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ //变频,先不写
|
|
|
+ String[] split = bianPingoriginalTempValue.split(",");
|
|
|
+
|
|
|
+ long bianPingfanNum = envDeviceFanService.count(new QueryWrapper<EnvDeviceFan>().eq("device_code", deviceCode).eq("feng_type",2));
|
|
|
+ for (int i = 0; i < bianPingfanNum; i++) {
|
|
|
+ String chipId ;
|
|
|
+ if (orderId <10){
|
|
|
+ chipId = deviceCode+"110"+orderId;
|
|
|
+ }else {
|
|
|
+ chipId = deviceCode+"11"+orderId;
|
|
|
+ }
|
|
|
+ orderId++;
|
|
|
+ EnvDeviceFan deviceFan = envDeviceFanService.getOne(new QueryWrapper<EnvDeviceFan>().eq("chip_code", chipId));
|
|
|
+ System.out.println(deviceFan.toString());
|
|
|
+ if (ObjectUtil.isNotEmpty(deviceFan)){
|
|
|
+ deviceFan.setDeviceCode(deviceFan.getDeviceCode());
|
|
|
+ deviceFan.setChipStatus("0".equals(split[i]) ? 0 : 1);
|
|
|
+ deviceFan.setChipValue(split[i]);
|
|
|
+ deviceFan.setUpdateTime(uploadDate);
|
|
|
+ envDeviceFanService.updateById(deviceFan);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
|
|
|
private String getStr(String s,Long fanNum) {
|
|
@@ -250,37 +416,61 @@ public class DeviceServiceImpl implements IDeviceService {
|
|
|
|
|
|
@Override
|
|
|
public void saveShiLianStatus(String[] dataArray) {
|
|
|
- //hm+1001+62+1+20230408175711+5+end
|
|
|
String deviceCode = dataArray[1];
|
|
|
- //0关闭 1开启
|
|
|
String status = dataArray[3];
|
|
|
String time = dataArray[4];
|
|
|
- String chipId = deviceCode+"133";
|
|
|
- EnvDeviceOther envDeviceOther = envDeviceOtherService.getOne(new QueryWrapper<EnvDeviceOther>().eq("chip_code", chipId));
|
|
|
- if (ObjectUtil.isNotEmpty(envDeviceOther)){
|
|
|
- envDeviceOther.setChipStatus(Integer.parseInt(status));
|
|
|
- Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
- envDeviceOther.setUpdateTime(uploadDate);
|
|
|
- }else {
|
|
|
- log.info("湿帘设备为空");
|
|
|
+ long fanNum = envDevicePadService.count(new QueryWrapper<EnvDevicePad>().eq("device_code", deviceCode));
|
|
|
+ Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
+ String s = Integer.toBinaryString(Integer.parseInt(status));
|
|
|
+ String str = getStr(s,fanNum);
|
|
|
+ int orderId = 1;
|
|
|
+ for (int i = str.length() - 1; i >= 0; i--) {
|
|
|
+ //状态
|
|
|
+ char c = str.charAt(i);
|
|
|
+ String chipId ;
|
|
|
+ if (orderId <10){
|
|
|
+ chipId = deviceCode+"200"+orderId;
|
|
|
+ }else {
|
|
|
+ chipId = deviceCode+"20"+orderId;
|
|
|
+ }
|
|
|
+ orderId++;
|
|
|
+ EnvDevicePad deviceFan = envDevicePadService.getOne(new QueryWrapper<EnvDevicePad>().eq("chip_code", chipId));
|
|
|
+ System.out.println(deviceFan.toString());
|
|
|
+ if (ObjectUtil.isNotEmpty(deviceFan)){
|
|
|
+ deviceFan.setChipStatus(c == '1' ? 1 : 0);
|
|
|
+ deviceFan.setUpdateTime(uploadDate);
|
|
|
+ envDevicePadService.updateById(deviceFan);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public void savePenWuStatus(String[] dataArray) {
|
|
|
- //hm+1001+62+1+20230408175711+5+end
|
|
|
String deviceCode = dataArray[1];
|
|
|
- //0关闭 1开启
|
|
|
String status = dataArray[3];
|
|
|
String time = dataArray[4];
|
|
|
- String chipId = deviceCode+"134";
|
|
|
- EnvDeviceOther envDeviceOther = envDeviceOtherService.getOne(new QueryWrapper<EnvDeviceOther>().eq("chip_code", chipId));
|
|
|
- if (ObjectUtil.isNotEmpty(envDeviceOther)){
|
|
|
- envDeviceOther.setChipStatus(Integer.parseInt(status));
|
|
|
- Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
- envDeviceOther.setUpdateTime(uploadDate);
|
|
|
- }else {
|
|
|
- log.info("喷雾设备为空");
|
|
|
+ long fanNum = atomizingService.count(new QueryWrapper<EnvDeviceAtomizing>().eq("device_code", deviceCode));
|
|
|
+ Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
+ String s = Integer.toBinaryString(Integer.parseInt(status));
|
|
|
+ String str = getStr(s,fanNum);
|
|
|
+ int orderId = 1;
|
|
|
+ for (int i = str.length() - 1; i >= 0; i--) {
|
|
|
+ //状态
|
|
|
+ char c = str.charAt(i);
|
|
|
+ String chipId ;
|
|
|
+ if (orderId <10){
|
|
|
+ chipId = deviceCode+"220"+orderId;
|
|
|
+ }else {
|
|
|
+ chipId = deviceCode+"22"+orderId;
|
|
|
+ }
|
|
|
+ orderId++;
|
|
|
+ EnvDeviceAtomizing deviceFan = atomizingService.getOne(new QueryWrapper<EnvDeviceAtomizing>().eq("chip_code", chipId));
|
|
|
+ System.out.println(deviceFan.toString());
|
|
|
+ if (ObjectUtil.isNotEmpty(deviceFan)){
|
|
|
+ deviceFan.setChipStatus(c == '1' ? 1 : 0);
|
|
|
+ deviceFan.setUpdateTime(uploadDate);
|
|
|
+ atomizingService.updateById(deviceFan);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -305,11 +495,11 @@ public class DeviceServiceImpl implements IDeviceService {
|
|
|
envDayagePeizhi.setLevelDayage(level);
|
|
|
envDayagePeizhi.setDeployName(time);
|
|
|
//将引号转为 \"
|
|
|
- envDayagePeizhi.setOriginalValue(days_temp_cfg.replaceAll("\"","\\\\\""));
|
|
|
+ envDayagePeizhi.setOriginalValue(days_temp_cfg);
|
|
|
BigDecimal bigDecimal = new BigDecimal(targetTemp);
|
|
|
BigDecimal tempValue = new BigDecimal(0);
|
|
|
if (bigDecimal.intValue() != 0){
|
|
|
- tempValue =bigDecimal.divide(new BigDecimal(10),1,BigDecimal.ROUND_HALF_UP);
|
|
|
+ tempValue =bigDecimal.divide(BIG_10,1,BigDecimal.ROUND_HALF_UP);
|
|
|
}
|
|
|
envDayagePeizhi.setTargetTemp(tempValue);
|
|
|
envDayagePeizhi.setTimeDayage(DateUtil.parse(time, "yyyyMMddHHmmss"));
|
|
@@ -356,17 +546,447 @@ public class DeviceServiceImpl implements IDeviceService {
|
|
|
BigDecimal bigDecimal = new BigDecimal(tempDiff);
|
|
|
BigDecimal tempValue = new BigDecimal(0);
|
|
|
if (bigDecimal.intValue() != 0){
|
|
|
- tempValue =bigDecimal.divide(new BigDecimal(10),1,BigDecimal.ROUND_HALF_UP);
|
|
|
+ tempValue =bigDecimal.divide(BIG_10,1,BigDecimal.ROUND_HALF_UP);
|
|
|
}
|
|
|
envDayagePeizhi.setTempDiff(tempValue);
|
|
|
envDayagePeizhi.setDeviceCode(deviceCode);
|
|
|
envDayagePeizhi.setDeployName(time);
|
|
|
- envDayagePeizhi.setOriginalValue(air_fans_cfg.replaceAll("\"","\\\\\""));
|
|
|
+ envDayagePeizhi.setOriginalValue(air_fans_cfg);
|
|
|
envDayagePeizhi.setTimeFeng(DateUtil.parse(time, "yyyyMMddHHmmss"));
|
|
|
envFengPeizhiService.save(envDayagePeizhi);
|
|
|
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public void saveCO2(String[] dataArray) {
|
|
|
+
|
|
|
+ String deviceCode = dataArray[1];
|
|
|
+ String ordeNumber = dataArray[3];
|
|
|
+ String originalHumiValue = dataArray[4];
|
|
|
+ String status = dataArray[5];
|
|
|
+ String time = dataArray[6];
|
|
|
+ BigDecimal humiValue = new BigDecimal(originalHumiValue);
|
|
|
+
|
|
|
+
|
|
|
+ String chipId = deviceCode + "1415";
|
|
|
+ Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
+ if(envCo2Service.exitCo2(chipId,uploadDate))
|
|
|
+ return;
|
|
|
+
|
|
|
+ EnvDevice envDevice = envDeviceService.getByDeviceCode(deviceCode);
|
|
|
+ EnvDeviceRecentlyData envDeviceRecentlyData = envDeviceRecentlyDataService.getbyChipId(chipId);
|
|
|
+
|
|
|
+ //判断传感器 故障
|
|
|
+ if ("1".equals(status)){
|
|
|
+ if (envDeviceRecentlyData.getChipStatus() != 1 ){
|
|
|
+ System.out.println("异常未恢复,未重新添加");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ log.info("传感器异常,未加入流水");
|
|
|
+ warningService.saveWarning(uploadDate,envDeviceRecentlyData,envDevice,chipId,null);
|
|
|
+ envDeviceRecentlyDataService.updateByChipId(uploadDate,envDeviceRecentlyData,humiValue,2);
|
|
|
+ return;
|
|
|
+ }else {
|
|
|
+ if (envDeviceRecentlyData.getChipStatus() == 2 ){
|
|
|
+ warningService.saveWarning(uploadDate,envDeviceRecentlyData,envDevice,chipId,"co2传感器恢复");
|
|
|
+ envDeviceRecentlyDataService.updateByChipId(uploadDate,envDeviceRecentlyData,humiValue,1);
|
|
|
+ System.out.println("异常恢复恢复");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //新增流水表
|
|
|
+ envCo2Service.saveCo2(chipId,envDevice,uploadDate,humiValue,humiValue);
|
|
|
+ }
|
|
|
+
|
|
|
+ //气压
|
|
|
+ @Override
|
|
|
+ public void saveYaLI(String[] dataArray) {
|
|
|
+
|
|
|
+ String deviceCode = dataArray[1];
|
|
|
+ String originalHumiValue = dataArray[4];
|
|
|
+ String status = dataArray[5];
|
|
|
+ String time = dataArray[6];
|
|
|
+ BigDecimal humiValue = new BigDecimal(originalHumiValue);
|
|
|
+ BigDecimal humiValueHandle = new BigDecimal(0);
|
|
|
+ if (humiValue.intValue() != 0 ){
|
|
|
+ humiValueHandle = humiValue.divide(new BigDecimal(10),1,BigDecimal.ROUND_HALF_UP);
|
|
|
+ }
|
|
|
+
|
|
|
+ String chipId = deviceCode + "1416";
|
|
|
+ Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
+ if(pressureService.exitPressure(chipId,uploadDate))
|
|
|
+ return;
|
|
|
+ EnvDevice envDevice = envDeviceService.getByDeviceCode(deviceCode);
|
|
|
+ EnvDeviceRecentlyData envDeviceRecentlyData = envDeviceRecentlyDataService.getbyChipId(chipId);
|
|
|
+
|
|
|
+
|
|
|
+ //判断传感器 故障
|
|
|
+ if ("1".equals(status)){
|
|
|
+ if (envDeviceRecentlyData.getChipStatus() != 1 ){
|
|
|
+ System.out.println("异常未恢复,未重新添加");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ log.info("传感器异常,未加入流水");
|
|
|
+ warningService.saveWarning(uploadDate,envDeviceRecentlyData,envDevice,chipId,null);
|
|
|
+ envDeviceRecentlyDataService.updateByChipId(uploadDate,envDeviceRecentlyData,humiValueHandle,2);
|
|
|
+ return;
|
|
|
+ }else {
|
|
|
+ if (envDeviceRecentlyData.getChipStatus() == 2 ){
|
|
|
+ warningService.saveWarning(uploadDate,envDeviceRecentlyData,envDevice,chipId,"压力传感器恢复");
|
|
|
+ envDeviceRecentlyDataService.updateByChipId(uploadDate,envDeviceRecentlyData,humiValue,1);
|
|
|
+ System.out.println("异常恢复恢复");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ envDeviceRecentlyDataService.updateByChipId(uploadDate,envDeviceRecentlyData,humiValueHandle,1);
|
|
|
+ //新增流水表
|
|
|
+ pressureService.savePressure(chipId,envDevice,uploadDate,humiValueHandle,humiValue);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void saveShuiNuan(String[] dataArray) {
|
|
|
+
|
|
|
+ String deviceCode = dataArray[1];
|
|
|
+ String originalHumiValue = dataArray[3];
|
|
|
+ String time = dataArray[4];
|
|
|
+ BigDecimal humiValue = new BigDecimal(originalHumiValue);
|
|
|
+ BigDecimal humiValueHandle = new BigDecimal(0);
|
|
|
+ if (humiValue.intValue() != 0 ){
|
|
|
+ humiValueHandle = humiValue.divide(BIG_10,1,BigDecimal.ROUND_HALF_UP);
|
|
|
+ }
|
|
|
+
|
|
|
+ String chipId = deviceCode + "1421";
|
|
|
+ EnvDeviceRecentlyData envDeviceRecentlyData = envDeviceRecentlyDataService.getbyChipId(chipId);
|
|
|
+ Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
+ //更新实时表
|
|
|
+ envDeviceRecentlyDataService.updateByChipId(uploadDate,envDeviceRecentlyData,humiValueHandle,1);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void saveWeiZhi(String[] dataArray) {
|
|
|
+
|
|
|
+ String deviceCode = dataArray[1];
|
|
|
+ String originalHumiValue = dataArray[3];
|
|
|
+ String time = dataArray[4];
|
|
|
+
|
|
|
+ BigDecimal humiValueHandle = new BigDecimal(0);
|
|
|
+ String[] split = originalHumiValue.split(",");
|
|
|
+ int i = 1;
|
|
|
+ for (String s : split) {
|
|
|
+ BigDecimal humiValue = new BigDecimal(s);
|
|
|
+ if (humiValue.intValue() != 0 ){
|
|
|
+ humiValueHandle = humiValue.divide(BIG_10,1,BigDecimal.ROUND_HALF_UP);
|
|
|
+ }
|
|
|
+
|
|
|
+ String chipId = deviceCode + "140"+i;
|
|
|
+ EnvDeviceRecentlyData envDeviceRecentlyData = envDeviceRecentlyDataService.getbyChipId(chipId);
|
|
|
+ Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
+ //更新实时表
|
|
|
+ envDeviceRecentlyDataService.updateByChipId(uploadDate,envDeviceRecentlyData,humiValueHandle,1);
|
|
|
+ i++;
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void saveShuiBiao(String[] dataArray) {
|
|
|
+ String deviceCode = dataArray[1];
|
|
|
+ String orderNum = dataArray[3];
|
|
|
+ String originalHumiValue = dataArray[4];
|
|
|
+ String status = dataArray[5];
|
|
|
+ String time = dataArray[6];
|
|
|
+ BigDecimal humiValue = new BigDecimal(originalHumiValue);
|
|
|
+ BigDecimal humiValueHandle = new BigDecimal(0);
|
|
|
+ if (humiValue.intValue() != 0 ){
|
|
|
+ humiValueHandle = humiValue.divide(BIG_10,1,BigDecimal.ROUND_HALF_UP);
|
|
|
+ }
|
|
|
+
|
|
|
+ String chipId = deviceCode + "150"+orderNum;
|
|
|
+ EnvDevice envDevice = envDeviceService.getByDeviceCode(deviceCode);
|
|
|
+ Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
+ EnvWarning one = warningService.getOne(new QueryWrapper<EnvWarning>().eq("chip_code", chipId).orderByDesc("update_time").last("limit 1"));
|
|
|
+
|
|
|
+ //判断传感器 故障
|
|
|
+ if ("1".equals(status) && (ObjectUtil.isEmpty(one) || 2 ==one.getWarningAct() ) ){
|
|
|
+ log.info("传感器异常,未加入流水");
|
|
|
+ EnvWarning envWarning = new EnvWarning();
|
|
|
+ envWarning.setUnitId(envDevice.getUnitId());
|
|
|
+ envWarning.setWarningAct(1);
|
|
|
+ envWarning.setWarningType(8);
|
|
|
+ envWarning.setWarningContent("水表传感器异常");
|
|
|
+ envWarning.setFarmId(envDevice.getFarmId());
|
|
|
+ envWarning.setDeviceCode(envDevice.getDeviceCode());
|
|
|
+ envWarning.setChipCode(chipId);
|
|
|
+ envWarning.setUpdateTime(uploadDate);
|
|
|
+ warningService.save(envWarning);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ //判断传感器 恢复
|
|
|
+ if ("0".equals(status) && ObjectUtil.isNotEmpty(one) && 1 ==one.getWarningAct() ){
|
|
|
+ EnvWarning envWarning = new EnvWarning();
|
|
|
+ envWarning.setUnitId(envDevice.getUnitId());
|
|
|
+ envWarning.setWarningAct(2);
|
|
|
+ envWarning.setWarningType(8);
|
|
|
+ envWarning.setWarningContent("水表传感器恢复");
|
|
|
+ envWarning.setFarmId(envDevice.getFarmId());
|
|
|
+ envWarning.setDeviceCode(deviceCode);
|
|
|
+ envWarning.setUpdateTime(uploadDate);
|
|
|
+ envWarning.setChipCode(chipId);
|
|
|
+ warningService.save(envWarning);
|
|
|
+ }
|
|
|
+ //新增流水表
|
|
|
+ envWaterService.saveShuiBiao(chipId,envDevice,uploadDate,humiValueHandle,humiValue);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void saveDianBiao(String[] dataArray) {
|
|
|
+ String deviceCode = dataArray[1];
|
|
|
+ String orderNum = dataArray[3];
|
|
|
+ String originalHumiValue = dataArray[4];
|
|
|
+ String status = dataArray[5];
|
|
|
+ String time = dataArray[6];
|
|
|
+ BigDecimal humiValue = new BigDecimal(originalHumiValue);
|
|
|
+ BigDecimal humiValueHandle = new BigDecimal(0);
|
|
|
+ if (humiValue.intValue() != 0 ){
|
|
|
+ humiValueHandle = humiValue.divide(BIG_10,1,BigDecimal.ROUND_HALF_UP);
|
|
|
+ }
|
|
|
+
|
|
|
+ String chipId = deviceCode + "160"+orderNum;
|
|
|
+ EnvDevice envDevice = envDeviceService.getByDeviceCode(deviceCode);
|
|
|
+ Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
+ EnvWarning one = warningService.getOne(new QueryWrapper<EnvWarning>().eq("device_code", deviceCode).orderByDesc("update_time").last("limit 1"));
|
|
|
+
|
|
|
+ /* //判断传感器 故障
|
|
|
+ if ("1".equals(status) && (ObjectUtil.isEmpty(one) || 2 ==one.getWarningAct() ) ){
|
|
|
+ log.info("传感器异常,未加入流水");
|
|
|
+ EnvWarning envWarning = new EnvWarning();
|
|
|
+ envWarning.setUnitId(envDevice.getUnitId());
|
|
|
+ envWarning.setWarningAct(1);
|
|
|
+ envWarning.setWarningType(8);
|
|
|
+ envWarning.setWarningContent("电表传感器异常");
|
|
|
+ envWarning.setFarmId(envDevice.getFarmId());
|
|
|
+ envWarning.setDeviceCode(deviceCode);
|
|
|
+ envWarning.setUpdateTime(uploadDate);
|
|
|
+ warningService.save(envWarning);
|
|
|
+ return;
|
|
|
+ }*/
|
|
|
+
|
|
|
+ /* //判断传感器 恢复
|
|
|
+ if ("0".equals(status) && ObjectUtil.isNotEmpty(one) && 1 ==one.getWarningAct() ){
|
|
|
+ log.info("传感器异常,未加入流水");
|
|
|
+ EnvWarning envWarning = new EnvWarning();
|
|
|
+ envWarning.setUnitId(envDevice.getUnitId());
|
|
|
+ envWarning.setWarningAct(2);
|
|
|
+ envWarning.setWarningType(8);
|
|
|
+ envWarning.setWarningContent("电表传感器恢复");
|
|
|
+ envWarning.setFarmId(envDevice.getFarmId());
|
|
|
+ envWarning.setDeviceCode(envDevice.getDeviceCode());
|
|
|
+ envWarning.setUpdateTime(uploadDate);
|
|
|
+ warningService.save(envWarning);
|
|
|
+ }*/
|
|
|
+
|
|
|
+ //新增流水表
|
|
|
+ envElectricityService.saveDianBiao(chipId,envDevice,uploadDate,humiValueHandle,humiValue);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void saveJiaReStatus(String[] dataArray) {
|
|
|
+ String deviceCode = dataArray[1];
|
|
|
+ String status = dataArray[3];
|
|
|
+ String time = dataArray[4];
|
|
|
+ long fanNum = heaterService.count(new QueryWrapper<EnvDeviceHeater>().eq("device_code", deviceCode));
|
|
|
+ Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
+ String s = Integer.toBinaryString(Integer.parseInt(status));
|
|
|
+ String str = getStr(s,fanNum);
|
|
|
+
|
|
|
+ int orderId = 1;
|
|
|
+ for (int i = str.length() - 1; i >= 0; i--) {
|
|
|
+ //状态
|
|
|
+ char c = str.charAt(i);
|
|
|
+ String chipId ;
|
|
|
+ if (orderId <10){
|
|
|
+ chipId = deviceCode+"230"+orderId;
|
|
|
+ }else {
|
|
|
+ chipId = deviceCode+"23"+orderId;
|
|
|
+ }
|
|
|
+ orderId++;
|
|
|
+ EnvDeviceHeater deviceFan = heaterService.getOne(new QueryWrapper<EnvDeviceHeater>().eq("chip_code", chipId));
|
|
|
+ System.out.println(deviceFan.toString());
|
|
|
+ if (ObjectUtil.isNotEmpty(deviceFan)){
|
|
|
+ deviceFan.setChipStatus(c == '1' ? 1 : 0);
|
|
|
+ deviceFan.setUpdateTime(uploadDate);
|
|
|
+ heaterService.updateById(deviceFan);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void saveXiaoChuangStatus(String[] dataArray) {
|
|
|
+ String deviceCode = dataArray[1];
|
|
|
+ String status = dataArray[3];
|
|
|
+ String time = dataArray[4];
|
|
|
+ Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
+
|
|
|
+ int orderId = 1;
|
|
|
+ String chipId ;
|
|
|
+ for (String s : status.split(",")) {
|
|
|
+ if (orderId <10){
|
|
|
+ chipId = deviceCode+"120"+orderId;
|
|
|
+ }else {
|
|
|
+ chipId = deviceCode+"12"+orderId;
|
|
|
+ }
|
|
|
+
|
|
|
+ EnvDeviceFenestrule deviceFan = fenestruleService.getOne(new QueryWrapper<EnvDeviceFenestrule>().eq("chip_code", chipId));
|
|
|
+ System.out.println(deviceFan.toString());
|
|
|
+ if (ObjectUtil.isNotEmpty(deviceFan)){
|
|
|
+ deviceFan.setUpdateTime(uploadDate);
|
|
|
+ deviceFan.setChipValue(s);
|
|
|
+ deviceFan.setChipStatus("0".equals(s) ? 0 : 1);
|
|
|
+ fenestruleService.updateById(deviceFan);
|
|
|
+ }
|
|
|
+ orderId++;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void saveDaoLiuStatus(String[] dataArray) {
|
|
|
+ String deviceCode = dataArray[1];
|
|
|
+ String status = dataArray[3];
|
|
|
+ String time = dataArray[4];
|
|
|
+ Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
+
|
|
|
+ int orderId = 1;
|
|
|
+ String chipId ;
|
|
|
+ for (String s : status.split(",")) {
|
|
|
+ if (orderId <10){
|
|
|
+ chipId = deviceCode+"210"+orderId;
|
|
|
+ }else {
|
|
|
+ chipId = deviceCode+"21"+orderId;
|
|
|
+ }
|
|
|
+
|
|
|
+ EnvDeviceDeflector deviceFan = deviceDeflectorService.getOne(new QueryWrapper<EnvDeviceDeflector>().eq("chip_code", chipId));
|
|
|
+ System.out.println(deviceFan.toString());
|
|
|
+ if (ObjectUtil.isNotEmpty(deviceFan)){
|
|
|
+ deviceFan.setUpdateTime(uploadDate);
|
|
|
+ deviceFan.setChipValue(s);
|
|
|
+ deviceFan.setChipStatus("0".equals(s) ? 0 : 1);
|
|
|
+ deviceDeflectorService.updateById(deviceFan);
|
|
|
+ }
|
|
|
+ orderId++;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void saveZhaoMingStatus(String[] dataArray) {
|
|
|
+ String deviceCode = dataArray[1];
|
|
|
+ String status = dataArray[3];
|
|
|
+ String time = dataArray[4];
|
|
|
+ Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
+
|
|
|
+ int orderId = 1;
|
|
|
+ String chipId ;
|
|
|
+ for (String s : status.split(",")) {
|
|
|
+ if (orderId <10){
|
|
|
+ chipId = deviceCode+"240"+orderId;
|
|
|
+ }else {
|
|
|
+ chipId = deviceCode+"24"+orderId;
|
|
|
+ }
|
|
|
+
|
|
|
+ EnvDeviceFloodlight deviceFan = floodlightService.getOne(new QueryWrapper<EnvDeviceFloodlight>().eq("chip_code", chipId));
|
|
|
+ System.out.println(deviceFan.toString());
|
|
|
+ if (ObjectUtil.isNotEmpty(deviceFan)){
|
|
|
+ deviceFan.setUpdateTime(uploadDate);
|
|
|
+ deviceFan.setChipValue(s);
|
|
|
+ deviceFan.setChipStatus("0".equals(s) ? 0 : 1);
|
|
|
+ floodlightService.updateById(deviceFan);
|
|
|
+ }
|
|
|
+ orderId++;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void saveChuChouStatus(String[] dataArray) {
|
|
|
+ String deviceCode = dataArray[1];
|
|
|
+ String status = dataArray[3];
|
|
|
+ String time = dataArray[4];
|
|
|
+ Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
+
|
|
|
+ int orderId = 1;
|
|
|
+ String chipId ;
|
|
|
+ for (String s : status.split(",")) {
|
|
|
+ if (orderId <10){
|
|
|
+ chipId = deviceCode+"250"+orderId;
|
|
|
+ }else {
|
|
|
+ chipId = deviceCode+"25"+orderId;
|
|
|
+ }
|
|
|
+
|
|
|
+ EnvDeviceChuchou deviceFan = chuchouService.getOne(new QueryWrapper<EnvDeviceChuchou>().eq("chip_code", chipId));
|
|
|
+ System.out.println(deviceFan.toString());
|
|
|
+ if (ObjectUtil.isNotEmpty(deviceFan)){
|
|
|
+ deviceFan.setUpdateTime(uploadDate);
|
|
|
+ deviceFan.setChipValue(s);
|
|
|
+ deviceFan.setChipStatus("0".equals(s) ? 0 : 1);
|
|
|
+ chuchouService.updateById(deviceFan);
|
|
|
+ }
|
|
|
+ orderId++;
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void saveLiaoTaStatus(String[] dataArray) {
|
|
|
+ String deviceCode = dataArray[1];
|
|
|
+ String status = dataArray[3];
|
|
|
+ String time = dataArray[4];
|
|
|
+ Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
+
|
|
|
+ int orderId = 1;
|
|
|
+ String chipId ;
|
|
|
+ for (String s : status.split(",")) {
|
|
|
+ if (orderId <10){
|
|
|
+ chipId = deviceCode+"260"+orderId;
|
|
|
+ }else {
|
|
|
+ chipId = deviceCode+"26"+orderId;
|
|
|
+ }
|
|
|
+
|
|
|
+ EnvDeviceLiaota deviceFan = liaotaService.getOne(new QueryWrapper<EnvDeviceLiaota>().eq("chip_code", chipId));
|
|
|
+ System.out.println(deviceFan.toString());
|
|
|
+ if (ObjectUtil.isNotEmpty(deviceFan)){
|
|
|
+ deviceFan.setUpdateTime(uploadDate);
|
|
|
+ deviceFan.setChipValue(s);
|
|
|
+ deviceFan.setChipStatus("0".equals(s) ? 0 : 1);
|
|
|
+ liaotaService.updateById(deviceFan);
|
|
|
+ }
|
|
|
+ orderId++;
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void saveAnqiStatus(String[] dataArray) {
|
|
|
+ String deviceCode = dataArray[1];
|
|
|
+ String ordeNumber = dataArray[3];
|
|
|
+ String originalHumiValue = dataArray[4];
|
|
|
+ String status = dataArray[5];
|
|
|
+ String time = dataArray[6];
|
|
|
+ BigDecimal humiValue = new BigDecimal(originalHumiValue);
|
|
|
+
|
|
|
+ String chipId = deviceCode + "1418";
|
|
|
+ Date uploadDate = DateUtil.parse(time, "yyyyMMddHHmmss");
|
|
|
+ EnvDevice envDevice = envDeviceService.getByDeviceCode(deviceCode);
|
|
|
+ EnvAmmonia envAmmonia = new EnvAmmonia();
|
|
|
+ envAmmonia.setAskTime(uploadDate);
|
|
|
+ envAmmonia.setChipCode(chipId);
|
|
|
+ envAmmonia.setDeviceCode(deviceCode);
|
|
|
+ envAmmonia.setFarmId(envDevice.getFarmId());
|
|
|
+ envAmmonia.setHandleValue(originalHumiValue);
|
|
|
+ envAmmonia.setOriginalValue(originalHumiValue);
|
|
|
+ envAmmonia.setUpdateTime(uploadDate);
|
|
|
+ envAmmonia.setUnitId(envDevice.getUnitId()+"");
|
|
|
+ //新增流水表
|
|
|
+ iEnvAmmoniaService.save(envAmmonia);
|
|
|
+ }
|
|
|
+
|
|
|
private String getChipId(String deviceCode, int type, String ordeNumber) {
|
|
|
//温度
|
|
|
String strType ;
|
|
@@ -390,4 +1010,6 @@ public class DeviceServiceImpl implements IDeviceService {
|
|
|
return deviceCode+strType+ordeNumber;
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+
|
|
|
}
|