Ver Fonte

修复一些小BUG

chenyi406 há 4 anos atrás
pai
commit
6085df5837

+ 1 - 1
pom.xml

@@ -9,7 +9,7 @@
         <relativePath/> <!-- lookup parent from repository -->
     </parent>
     <groupId>com.zhiyun.mqtt</groupId>
-    <artifactId>mqttserver</artifactId>
+    <artifactId>bms</artifactId>
     <version>0.0.1-SNAPSHOT</version>
     <name>bms-java</name>
     <description>Demo project for Spring Boot</description>

+ 8 - 5
src/main/java/com/zy/bms/config/mqtt/MqttCallbackHandler.java

@@ -49,6 +49,8 @@ public class MqttCallbackHandler {
      * @param payload 消息内容
      */
     void handle(String topic, String payload) {
+        System.out.println(payload);
+        System.out.println("-------------------------------------------------------------------------");
         if (topic.contains("/")) {
             webSocketServer.massMessage(topic.split("/")[1], payload);
         }
@@ -72,7 +74,7 @@ public class MqttCallbackHandler {
      * 注册设备
      */
     private void registerDevice(MqttMsgDto obj) {
-        String num = obj.getData().get("num").toString();
+        String num = obj.getData().get("regnum").toString();
         //查询数据库中是否有此设备
         Device device = deviceService.getByNum(num);
         //没有该设备,保存至数据库
@@ -118,7 +120,7 @@ public class MqttCallbackHandler {
     private Device createDevice(String num) {
         Device device = new Device();
         device.setNum(num);
-        device.setClientId(CodeGenerator.generateClientId());
+        device.setClientId(CodeGenerator.generateUUID());
         device.setPassword(CodeGenerator.generateShortUuid());
         device.setGroupId(1);
         deviceService.save(device);
@@ -137,9 +139,9 @@ public class MqttCallbackHandler {
             location.setBatteryNum((int) dataMap.get("batterynum"));
             location.setSignalNum((int) dataMap.get("signalnum"));
             location.setMode((int) dataMap.get("mode"));
-            location.setLon((String) dataMap.get("lon"));
-            location.setLon((String) dataMap.get("lat"));
-            location.setSpeed((String) dataMap.get("speed"));
+            location.setLon(dataMap.get("lon").toString());
+            location.setLat(dataMap.get("lat").toString());
+            location.setSpeed(dataMap.get("speed").toString());
             location.setNum((int) dataMap.get("num"));
             location.setUploadTime(DateTimeUtil.strToTime((String) dataMap.get("createtime")));
             Object cellInfo = dataMap.get("cellInfo");
@@ -152,6 +154,7 @@ public class MqttCallbackHandler {
             location.setLatGcj(gcj[1]);
             return location;
         } catch (Exception e) {
+            e.printStackTrace();
             throw new ApiRuntimeException("处理设备上传位置定位信息出错");
         }
     }

+ 1 - 2
src/main/java/com/zy/bms/config/mqtt/MqttConsumerCfg.java

@@ -40,8 +40,7 @@ public class MqttConsumerCfg {
     @Bean
     public MessageProducer inbound() {
         // 初始化入站通道适配器,使用的是Eclipse Paho MQTT客户端库
-        MqttPahoMessageDrivenChannelAdapter adapter =
-                new MqttPahoMessageDrivenChannelAdapter(CodeGenerator.generateClientId(), mqttClientFactory, defaultTopic);
+        MqttPahoMessageDrivenChannelAdapter adapter = new MqttPahoMessageDrivenChannelAdapter(CodeGenerator.generateUUID(), mqttClientFactory, defaultTopic);
         // 设置连接超时时长 毫秒
         adapter.setCompletionTimeout(5000);
         // 配置默认Paho消息转换器(qos=0, retain=false, charset=UTF-8)

+ 1 - 1
src/main/java/com/zy/bms/config/mqtt/MqttProducerCfg.java

@@ -37,7 +37,7 @@ public class MqttProducerCfg {
     @Bean
     @ServiceActivator(inputChannel = "mqttOutboundChannel")
     public MessageHandler mqttOutbound() {
-        MqttPahoMessageHandler messageHandler = new MqttPahoMessageHandler(CodeGenerator.generateClientId(), mqttClientFactory);
+        MqttPahoMessageHandler messageHandler = new MqttPahoMessageHandler(CodeGenerator.generateUUID(), mqttClientFactory);
         // 设置异步发送,默认是false(发送时阻塞)
         messageHandler.setAsync(true);
         // 设置默认的服务质量

+ 0 - 9
src/main/java/com/zy/bms/utils/CodeGenerator.java

@@ -28,15 +28,6 @@ public class CodeGenerator {
         }
         return stringBuilder.toString();
     }
-
-    /**
-     * 23位
-     * 随机生成唯一 clientId
-     */
-    public static String generateClientId() {
-        return UUID.randomUUID().toString().replace("-", "").substring(15);
-    }
-
     /**
      * 随机生成UUID
      * 小写,去掉 '-'

+ 4 - 4
src/main/resources/application-dev.yml

@@ -16,10 +16,10 @@ spring:
     username: useryxk
     password: CHENyi406@
     dbcp2:
-      min-idle: 5
-      initial-size: 5
-      max-total: 5
-      max-wait-millis: 200
+      min-idle: 10
+      initial-size: 15
+      max-total: 20
+      max-wait-millis: 2000
   # mybatis-plus
 mybatis-plus:
   type-aliases-package: com.zhiyun.mqtt.model

+ 9 - 8
src/main/resources/application-prod.yml

@@ -1,10 +1,11 @@
 server:
-  port: 8080 # Key product method
+  port: 9001 # Key product method
 spring:
   redis:
     host: localhost
     port: 6379
     timeout: 9000
+    password: CHENyi_406
   jackson:
     default-property-inclusion: non_null
     #date-format: yyyy-MM-dd HH:mm:ss
@@ -13,14 +14,14 @@ spring:
   datasource:
     type: com.alibaba.druid.pool.DruidDataSource
     driver-class-name: com.mysql.cj.jdbc.Driver
-    url: jdbc:mysql://view.ailishi.org:3306/zy_mobilephone?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=true
-    username: root
-    password: zhiyun2019+
+    url: jdbc:mysql://localhost:3306/zy_mobile?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=true
+    username: useryxk
+    password: CHENyi406@
     dbcp2:
-      min-idle: 5
-      initial-size: 5
-      max-total: 5
-      max-wait-millis: 200
+      min-idle: 10
+      initial-size: 15
+      max-total: 20
+      max-wait-millis: 2000
 # mybatis-plus
 mybatis-plus:
   type-aliases-package: com.zhiyun.mqtt.model

+ 1 - 1
src/main/resources/mapper/UserDeviceRelationMapping.xml

@@ -12,6 +12,6 @@
         FROM user_device_relation t1
                  INNER JOIN zy_device t2 ON t1.deviceNum = t2.num
         WHERE t1.userId = #{userId}
-        ORDER BY t1.isDefault
+        ORDER BY t1.isDefault DESC
     </select>
 </mapper>