2021与蓝度共同重构项目,服务端
zhanzhiqin
2022-10-19 2b9c6e86f1fb2abd7ad7f1a8d74d3fcd515da858
ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/frame/inner/report/A5AtmosphereHeartbeatReportInnerFrame.java
@@ -22,15 +22,14 @@
    //  心跳包数据   58
    private HeartBeatDataPackage heartBeatDataPackage;
    private String originFrame;
    @Override
    public A5AtmosphereHeartbeatReportInnerFrame transformFrame(String hex) {
        //  长度不一致时,返回null
        //TODO
        if (StrUtil.isBlank(hex)) {
        if (StrUtil.isBlank(hex) || hex.length() < 26 || hex.substring(18).length() % 8 != 0) {
            System.out.println("数据校验异常!");
            return null;
        }
        // MQTT通信方式(1)
        setConnectType(hex.substring(0, 2));
        //  功能码(1)
@@ -132,11 +131,8 @@
            }
            //设备型号
            Integer type = 0;
            this.deviceType = hex.substring(0, 4);
            if (this.deviceType.equals(DeviceType.SENSOR_V1.getType())) {
                type = 1;
            }
            //模块预热状态标志
            this.moduleWarmUpStatusFlag = hex.substring(4, 6);
@@ -206,7 +202,7 @@
                            }
                        } else if ("00".equals(sub.substring(4, 6))) {
                            //360度款风向仪
                            this.windDirection = parseVal(sub, 4, 8) * .1 + "℃";
                            this.windDirection = parseVal(sub, 4, 8) * .1 + "度";
                        }
                        break;
                    //风力
@@ -224,8 +220,7 @@
                        break;
                    //噪音
                    case "08":
                        this.noise = parseVal(sub, 4, 8) * .1 + "dB";
                        this.noise = parseVal(sub, 4, 8).doubleValue() * .1 + "dB";
                        break;
                    //PM2.5
                    case "09":
@@ -287,18 +282,4 @@
        }
    }
    public enum DeviceType {
        SENSOR_V1("0101");
        private String type;
        DeviceType(String type) {
            this.type = type;
        }
        public String getType() {
            return type;
        }
    }
}