Sfoglia il codice sorgente

增加 根据设备型号获取topic功能

zhaiyifei 1 anno fa
parent
commit
acdc58f1eb

+ 46 - 1
src/main/java/com/yunfeiyun/agmp/iot/common/constant/mqtt/IotMqttConstant.java

@@ -1,5 +1,7 @@
 package com.yunfeiyun.agmp.iot.common.constant.mqtt;
 
+import com.yunfeiyun.agmp.iot.common.constant.devicetype.IotDeviceDictConst;
+
 /**
  * mqtt topic 厂家维护
  */
@@ -213,6 +215,49 @@ public class IotMqttConstant {
         /**
          * 变化上报
          */
-        public final static String TOPIC_YR_SF_CHANGE_PREFIX = "/hbyr/sf/change/";
+        public final static String TOPIC_YR_SF_CHANGE_PREFIX =  "/hbyr/sf/change/";
+    }
+
+    public static String getReportTopicByDevtype(String devtypeBid){
+        String topic = null;
+        if(IotDeviceDictConst.TYPE_YF_SCD.equals(devtypeBid)){
+            topic =  YFCbdTopic.TOPIC_CBD_CMD_PREFIX;
+        }
+        switch (devtypeBid){
+            case IotDeviceDictConst.TYPE_YF_CBD:
+            case IotDeviceDictConst.TYPE_YF_SDCBD:
+            case IotDeviceDictConst.TYPE_YF_GKCBD:
+                topic = YFCbdTopic.TOPIC_CBD_REPORT_PREFIX;
+                break;
+            case IotDeviceDictConst.TYPE_BY_SFJ:
+                topic = BoByunSfTopic.TOPIC_PRE;
+                break;
+            case IotDeviceDictConst.TYPE_YF_SCD:
+            case IotDeviceDictConst.TYPE_YF_FXSSCD:
+            case IotDeviceDictConst.TYPE_YF_JGFXSSCD:
+                topic = YFScdTopic.TOPIC_SCD_REPORT_PREFIX;
+                break;
+            case IotDeviceDictConst.TYPE_YF_BZY:
+                topic = YFBzyTopic.TOPIC_BZY_REPORT_PREFIX;
+                break;
+            case IotDeviceDictConst.TYPE_YF_QXZ:
+            case IotDeviceDictConst.TYPE_YF_SQZ:
+                topic = YFQxzTopic.TOPIC_QXZ_REPORT_PREFIX;
+                break;
+            case IotDeviceDictConst.TYPE_YF_XYCB_2:
+                topic = YFXycb2Topic.TOPIC_XYCB_2_REPORT_PREFIX;
+                break;
+            case IotDeviceDictConst.TYPE_XPH_YF_QXZ:
+            case IotDeviceDictConst.TYPE_XPH_YF_SQZ:
+                topic = XphDeviceTopic.TOPIC_XPH_REPORT_PREFIX;
+                break;
+            case IotDeviceDictConst.TYPE_HPF_WSMJ_ZNKG:
+                topic = HpfZnkgTopic.TOPIC_HPF_ZNKG_REPORT_PREFIX;
+                break;
+            case IotDeviceDictConst.TYPE_YR_SF:
+                topic = YrSfTopic.TOPIC_YR_SF_REPORT_PREFIX;
+                break;
+        }
+        return topic;
     }
 }