From ddefa6dc2532bf0a405d216a8fa8e2a4bb0bf96f Mon Sep 17 00:00:00 2001
From: jiazx0107@163.com <jiazx0107@163.com>
Date: 星期六, 18 十一月 2023 14:17:42 +0800
Subject: [PATCH] 增加HTTP地磅协议实现
---
src/main/java/com/fzzy/gateway/hx2023/service/HxGatewaySyncGrainImpl.java | 118 ++--------------------------------------------------------
1 files changed, 5 insertions(+), 113 deletions(-)
diff --git a/src/main/java/com/fzzy/gateway/hx2023/service/HxGatewaySyncGrainImpl.java b/src/main/java/com/fzzy/gateway/hx2023/service/HxGatewaySyncGrainImpl.java
index e2017e2..100dce2 100644
--- a/src/main/java/com/fzzy/gateway/hx2023/service/HxGatewaySyncGrainImpl.java
+++ b/src/main/java/com/fzzy/gateway/hx2023/service/HxGatewaySyncGrainImpl.java
@@ -1,28 +1,22 @@
package com.fzzy.gateway.hx2023.service;
-import com.alibaba.fastjson2.JSONObject;
import com.fzzy.api.data.GatewayDeviceProtocol;
-import com.fzzy.api.utils.NumberUtil;
import com.fzzy.gateway.api.GatewaySyncGranService;
import com.fzzy.gateway.data.BaseResp;
-import com.fzzy.gateway.data.WeatherWebDto;
+import com.fzzy.gateway.data.BaseReqData;
import com.fzzy.gateway.entity.GatewayDevice;
-import com.fzzy.gateway.hx2023.ScConstant;
import com.fzzy.gateway.hx2023.data.*;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
-import org.springframework.stereotype.Component;
-
-import java.util.ArrayList;
-import java.util.List;
+import org.springframework.stereotype.Service;
/**
* 缃戝叧涓庣伯鎯呭垎鏈洪�氳鍜岃В鏋�
*/
@Slf4j
@Data
-@Component
+@Service
public class HxGatewaySyncGrainImpl implements GatewaySyncGranService {
@@ -31,115 +25,13 @@
return GatewayDeviceProtocol.DEVICE_TEST.getCode();
}
- @Override
- public KafaGrainData syncGrain(SyncReqData reqData) {
-
-
- return null;
- }
-
@Override
- public BaseResp syncGrain2(SyncReqData reqData) {
+ public BaseResp syncGrain(BaseReqData reqData) {
- GatewayDevice device = reqData.getDevice();
-
-
- if (StringUtils.isEmpty(device.getCableCir())) {
- return getGrainTest1(reqData, device);
- }
-
-
- BaseResp resp = new BaseResp();
- resp.setCode(500);
- resp.setMsg("娌℃湁鍖归厤鍒拌鍒�");
- return resp;
+ return new BaseResp();
}
- private BaseResp getGrainTest1(SyncReqData reqData, GatewayDevice device) {
- String[] cableRule = device.getCableRule().split("-");
-
- int cableZ = Integer.valueOf(cableRule[0]);
- int cableY = Integer.valueOf(cableRule[1]);
- int cableX = Integer.valueOf(cableRule[2]);
- int sumNum = cableZ * cableY * cableX;
-
-
- WeatherWebDto weather = WeatherWebDto.contextMap.get("default");
- double tMIn = 20, tMax = 25;
- if (null != weather) {
- double tOut = Double.valueOf(weather.getTem());
- tMIn = tOut - 2;
- tMax = tOut + 3;
- }
-
-
- //鏁版嵁灏佽
- GrainData grain = new GrainData();
- grain.setMessageId(ScConstant.getMessageId());
- grain.setDeviceId(device.getDeviceId());
- grain.setTimestamp(System.currentTimeMillis() + "");
-
- ClientHeaders headers = new ClientHeaders();
- headers.setDeviceName(device.getDeviceName());
- headers.setProductId(device.getProductId());
- headers.setOrgId(device.getOrgId());
- headers.setMsgId(ScConstant.getMessageId());
- grain.setHeaders(headers);
-
- GrainOutPut outPut = new GrainOutPut();
-
- outPut.setAvgTemperature(NumberUtil.keepPrecision((tMax + tMIn) / 2, 1) + "");
- outPut.setMinTemperature(tMax + "");
- outPut.setMaxTemperature(tMIn + "");
-
-
- List<GrainTemp> temperature = new ArrayList<>();
- //鏍瑰彿
- int cableNum = 1, position = 0;
-
- double curTemp = tMIn;
- double randomNumber = tMIn;
- int x = 0, y = 0, z = 0;
- for (int i = 0; i < sumNum; i++) {
- randomNumber = Math.random() * (tMax - tMIn + 1) + tMIn;
- curTemp = NumberUtil.keepPrecision(randomNumber, 1);
- position = i;
- z = i % cableZ + 1;
- x = i / (cableZ * cableY);
- y = x * (cableZ * cableY);
- y = (i - y) / cableZ;
-
- //鏍瑰彿
- cableNum = (i / cableZ) + 1;
-
- temperature.add(new GrainTemp(cableNum + "", z + "", curTemp + "", position + ""));
- }
-
- outPut.setTemperature(temperature);
-
- grain.setOutPut(outPut);
-
- //姘旇薄淇℃伅
- GrainWeather weatherStation = new GrainWeather();
- weatherStation.setMessageId(ScConstant.getMessageId());
- weatherStation.setId(device.getDeviceId());
- weatherStation.setAirPressure(weather.getPressure());
- weatherStation.setHumidity(weather.getHumidity());
- weatherStation.setPm(weather.getAir_pm25());
- weatherStation.setRadiation("0");
- weatherStation.setRainfallAmount(weather.getWea());
- weatherStation.setTemperature(weather.getTem());
- weatherStation.setWindDirection(weather.getWin());
- weatherStation.setWindPower(weather.getWin_meter());
- weatherStation.setWindSpeed(weather.getWin_speed());
- grain.setWeatherStation(weatherStation);
-
- BaseResp resp = new BaseResp();
- resp.setData(JSONObject.toJSONString(grain));
-
- return resp;
- }
}
--
Gitblit v1.9.3