소스 검색

更新!

TRX 1 년 전
부모
커밋
6b3203487c

+ 2 - 0
OneCardIotClient/src/main/java/com/zhongshu/iot/client/type/type/AddressType.java

@@ -3,8 +3,10 @@ package com.zhongshu.iot.client.type.type;
 import lombok.Getter;
 
 /**
+ *
  */
 public enum AddressType {
+    Common("默认"),
     CQ("重庆"),
     CD("成都"),
     GY("贵阳"),

+ 5 - 0
OneCardIotServer/src/main/java/com/zhongshu/iot/server/core/dao/mqtt/MqttInfoDao.java

@@ -1,5 +1,6 @@
 package com.zhongshu.iot.server.core.dao.mqtt;
 
+import com.zhongshu.iot.client.type.type.AddressType;
 import com.zhongshu.iot.server.core.domain.iot.mqtt.MqttInfo;
 
 /**
@@ -7,7 +8,11 @@ import com.zhongshu.iot.server.core.domain.iot.mqtt.MqttInfo;
  * @date 2024/3/21
  */
 public interface MqttInfoDao extends org.springframework.data.mongodb.repository.MongoRepository<MqttInfo, String> {
+
     MqttInfo findTopByBrokerHost(String brokerHost);
 
     MqttInfo findTopById(String id);
+
+    MqttInfo findTopByAddress(AddressType address);
+
 }

+ 5 - 10
OneCardIotServer/src/main/java/com/zhongshu/iot/server/core/service/mqtt/GateWayInfoService.java

@@ -84,6 +84,9 @@ public class GateWayInfoService extends SuperService {
     @Autowired
     IotServiceImpl iotService;
 
+    @Autowired
+    private MqttInfoService mqttInfoService;
+
     /**
      * 添加网关
      *
@@ -127,15 +130,7 @@ public class GateWayInfoService extends SuperService {
         ResultContent<GateWayInfo> gateWayInfo = addGateWayInfo(param);
 
         // 给网关分配个mqtt账号
-        MqttInfoReturnModel mqttInfoSimpleModel = new MqttInfoReturnModel();
-//        mqttInfoSimpleModel.setBrokerAddress("tcp://8.137.120.225:61616");
-//        mqttInfoSimpleModel.setBrokerUsername("admin");
-//        mqttInfoSimpleModel.setBrokerPassword("admin123");
-
-        mqttInfoSimpleModel.setBrokerAddress("wss://mq.dev.zswllife.cn:443/mqtt");
-        mqttInfoSimpleModel.setBrokerUsername("admin");
-        mqttInfoSimpleModel.setBrokerPassword("admin123");
-
+        MqttInfoReturnModel mqttInfoSimpleModel = mqttInfoService.getCommonMqttInfo();
         return ResultContent.buildSuccess(mqttInfoSimpleModel);
     }
 
@@ -207,7 +202,7 @@ public class GateWayInfoService extends SuperService {
                 if (ObjectUtils.isEmpty(gateWay2Device)) {
                     gateWay2Device = new GateWay2Device();
                     gateWay2Device.setState(OnLineState.OffLine);
-                }else {
+                } else {
                 }
                 gateWay2Device.setGateWayInfo(gateWayInfo);
                 gateWay2Device.setDeviceInfo(deviceInfo);

+ 38 - 2
OneCardIotServer/src/main/java/com/zhongshu/iot/server/core/service/mqtt/MqttInfoService.java

@@ -3,7 +3,9 @@ package com.zhongshu.iot.server.core.service.mqtt;
 import com.github.microservice.models.type.CommonState;
 import com.zhongshu.iot.client.model.mqtt.MqttInfoAddParam;
 import com.zhongshu.iot.client.model.mqtt.MqttInfoModel;
+import com.zhongshu.iot.client.model.mqtt.MqttInfoReturnModel;
 import com.zhongshu.iot.client.model.mqtt.MqttInfoSimpleModel;
+import com.zhongshu.iot.client.type.type.AddressType;
 import com.zhongshu.iot.server.core.dao.mqtt.Mqtt2UserDao;
 import com.zhongshu.iot.server.core.dao.mqtt.MqttInfoDao;
 import com.zhongshu.iot.server.core.domain.iot.mqtt.MqttInfo;
@@ -15,6 +17,7 @@ import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.PostConstruct;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.stream.Collectors;
@@ -26,11 +29,44 @@ import java.util.stream.Collectors;
 @Service
 @Slf4j
 public class MqttInfoService {
+
     @Autowired
-    MqttInfoDao mqttInfoDao;
+    private MqttInfoDao mqttInfoDao;
 
     @Autowired
-    Mqtt2UserDao mqtt2UserDao;
+    private Mqtt2UserDao mqtt2UserDao;
+
+    /**
+     * 初始数据
+     */
+    @PostConstruct
+    public void initMqttInfo() {
+        log.info("PostConstruct initMqttInfo");
+        MqttInfo mqttInfo = mqttInfoDao.findTopByAddress(AddressType.Common);
+        if (ObjectUtils.isEmpty(mqttInfo)) {
+            mqttInfo = new MqttInfo();
+            mqttInfo.setName("默认MQTT服务");
+            mqttInfo.setBrokerHost("wss://mq.dev.zswllife.cn");
+            mqttInfo.setBrokerPort("443/mqtt");
+            mqttInfo.setUserName("admin");
+            mqttInfo.setPassword("admin123");
+            mqttInfo.setAddress(AddressType.Common);
+            mqttInfo.setState(CommonState.Enable);
+            mqttInfo.setBrokerName("broker1");
+            mqttInfoDao.save(mqttInfo);
+        }
+    }
+
+    public MqttInfoReturnModel getCommonMqttInfo() {
+        MqttInfoReturnModel mqttInfoSimpleModel = new MqttInfoReturnModel();
+        MqttInfo mqttInfo = mqttInfoDao.findTopByAddress(AddressType.Common);
+        if (ObjectUtils.isNotEmpty(mqttInfo)) {
+            mqttInfoSimpleModel.setBrokerAddress(String.format(":", mqttInfo.getBrokerHost(), mqttInfo.getBrokerPort()));
+            mqttInfoSimpleModel.setBrokerUsername(mqttInfo.getUserName());
+            mqttInfoSimpleModel.setBrokerPassword(mqttInfo.getPassword());
+        }
+        return mqttInfoSimpleModel;
+    }
 
     /**
      * 添加/编辑MQTT地址