Эх сурвалжийг харах

存储灯杆的回执信息

nahida 1 жил өмнө
parent
commit
97381d19ee

+ 2 - 4
pole-service/src/main/java/com/zksy/pole/MQTTServer/callBack/BootNettyMqttMsgBack.java

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject;
 
 import com.zksy.pole.MQTTServer.config.MQTTServerProperties;
 import com.zksy.pole.MQTTServer.server.MQTTServer;
+import com.zksy.pole.factory.HandleCmdFactory;
 import io.netty.buffer.ByteBuf;
 import io.netty.buffer.Unpooled;
 import io.netty.channel.Channel;
@@ -79,16 +80,13 @@ public class BootNettyMqttMsgBack {
 	public  void puback (Channel channel, MqttMessage mqttMessage) throws InterruptedException {
 		MqttPublishMessage mqttPublishMessage = (MqttPublishMessage) mqttMessage;
 		MqttFixedHeader mqttFixedHeaderInfo = mqttPublishMessage.fixedHeader();
-		Object obj= mqttMessage.variableHeader();
-		MqttPublishVariableHeader variableHeader=(MqttPublishVariableHeader)obj;
-		String topicName=variableHeader.topicName();
-		System.err.println("topicName========"+topicName);
 		MqttQoS qos =  mqttFixedHeaderInfo.qosLevel();
 		//注意:	readableBytes会改变写指针位置,使后续推送数据时,读取数据为空,需要重置	读指针
         byte[] headBytes = new byte[mqttPublishMessage.payload().readableBytes()];
         mqttPublishMessage.payload().readBytes(headBytes);
         String data = new String(headBytes);
         System.out.println("收到数据-->"+data);
+		HandleCmdFactory.HandleCmd(data);
 		//重置读取的指针
 		mqttPublishMessage.payload().resetReaderIndex();
 		//(qos= 0最多一次的传输,1至少一次的传输,2: 只有一次的传输)

+ 5 - 5
pole-service/src/main/java/com/zksy/pole/domain/po/DgEquipmentAlarm.java

@@ -1,9 +1,7 @@
 package com.zksy.pole.domain.po;
 
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.*;
+
 import java.io.Serializable;
 import java.util.Date;
 import lombok.Data;
@@ -18,7 +16,7 @@ public class DgEquipmentAlarm implements Serializable {
     /**
      * 主键
      */
-    @TableId
+    @TableId(value = "id", type = IdType.ASSIGN_UUID)
     private String id;
 
     /**
@@ -59,6 +57,7 @@ public class DgEquipmentAlarm implements Serializable {
     /**
      * 创建时间
      */
+    @TableField(value = "update_time", fill = FieldFill.INSERT)
     private Date createTime;
 
     /**
@@ -69,6 +68,7 @@ public class DgEquipmentAlarm implements Serializable {
     /**
      * 更新时间
      */
+    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
     private Date updateTime;
 
     @TableField(exist = false)

+ 5 - 5
pole-service/src/main/java/com/zksy/pole/domain/po/DgGatewayRegistration.java

@@ -1,9 +1,7 @@
 package com.zksy.pole.domain.po;
 
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.*;
+
 import java.io.Serializable;
 import java.util.Date;
 import lombok.Data;
@@ -18,7 +16,7 @@ public class DgGatewayRegistration implements Serializable {
     /**
      * 主键
      */
-    @TableId
+    @TableId(value = "id", type = IdType.ASSIGN_UUID)
     private String id;
 
     /**
@@ -59,6 +57,7 @@ public class DgGatewayRegistration implements Serializable {
     /**
      * 创建时间
      */
+    @TableField(fill = FieldFill.INSERT)
     private Date createTime;
 
     /**
@@ -69,6 +68,7 @@ public class DgGatewayRegistration implements Serializable {
     /**
      * 更新时间
      */
+    @TableField(fill = FieldFill.INSERT_UPDATE)
     private Date updateTime;
 
     @TableField(exist = false)

+ 55 - 0
pole-service/src/main/java/com/zksy/pole/factory/HandleCmdFactory.java

@@ -0,0 +1,55 @@
+package com.zksy.pole.factory;
+
+import cn.hutool.json.JSON;
+import cn.hutool.json.JSONArray;
+import cn.hutool.json.JSONObject;
+import cn.hutool.json.JSONUtil;
+import com.zksy.common.exception.CommonException;
+import com.zksy.pole.domain.po.*;
+import com.zksy.pole.factory.impl.*;
+
+import java.util.Map;
+
+public class HandleCmdFactory {
+    public static String HandleCmd(String data) {
+        JSONObject jsonObject = JSONUtil.parseObj(data);
+        if(jsonObject.getInt("cmd") == 6031){
+            var c = new HandleDgEquipmentAlarmCmd();
+            String s = c.HandleCmdMethod(jsonObject.toBean(DgEquipmentAlarm.class));
+            return s;
+        }else if(jsonObject.getInt("cmd") == 6012){
+            var c = new HandleDgEquipmentStatusCmd();
+            String s = c.HandleCmdMethod(jsonObject.toBean(DgEquipmentStatus.class));
+            return s;
+        }else if(jsonObject.getInt("cmd") == 1111){
+            var c = new HandleDgGatewayRegistrationCmd();
+            String s = c.HandleCmdMethod(jsonObject.toBean(DgGatewayRegistration.class));
+            return s;
+        }else if(jsonObject.getInt("cmd") == 6022){
+            var c = new HandleDgGatewayStrategyCmd();
+            String s = c.HandleCmdMethod(jsonObject.toBean(DgGatewayStrategy.class));
+            return s;
+        }else if(jsonObject.getInt("cmd") == 6010){
+            var c = new HandleDgLampControlledHeartbeatCmd();
+            String s = c.HandleCmdMethod(jsonObject.toBean(DgLampControlledHeartbeat.class));
+            return s;
+        }else if(jsonObject.getInt("cmd") == 6014){
+            var c = new HandleDgRelayControlCmd();
+            String s = c.HandleCmdMethod(jsonObject.toBean(DgRelayControl.class));
+            return s;
+        }else if(jsonObject.getInt("cmd") == 6015){
+            var c = new HandleDgRelayTimingStrategyCmd();
+            String s = c.HandleCmdMethod(jsonObject.toBean(DgRelayTimingStrategy.class));
+            return s;
+        }else if(jsonObject.getInt("cmd") == 2000){
+            var c = new HandleDgReportEnvironmentalDataCmd();
+            String s = c.HandleCmdMethod(jsonObject.toBean(DgReportEnvironmentalData.class));
+            return s;
+        }else if(jsonObject.getInt("cmd") == 6011){
+            var c = new HandleDgTimelyControlCmd();
+            String s = c.HandleCmdMethod(jsonObject.toBean(DgTimelyControl.class));
+            return s;
+        }
+        throw new CommonException("cmd有误或者没有对应的cmd处理", 500);
+    }
+}

+ 5 - 0
pole-service/src/main/java/com/zksy/pole/factory/IHandleCmd.java

@@ -0,0 +1,5 @@
+package com.zksy.pole.factory;
+
+public interface IHandleCmd {
+    <T> String HandleCmdMethod(T data);
+}

+ 19 - 0
pole-service/src/main/java/com/zksy/pole/factory/impl/HandleDgEquipmentAlarmCmd.java

@@ -0,0 +1,19 @@
+package com.zksy.pole.factory.impl;
+
+import com.zksy.pole.domain.po.DgEquipmentAlarm;
+import com.zksy.pole.factory.IHandleCmd;
+import com.zksy.pole.mapper.DgEquipmentAlarmMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+@Component
+public class HandleDgEquipmentAlarmCmd implements IHandleCmd {
+    @Autowired
+    private DgEquipmentAlarmMapper dgEquipmentAlarmMapper;
+    @Override
+    public <T> String HandleCmdMethod(T data) {
+        DgEquipmentAlarm d = (DgEquipmentAlarm) data;
+        dgEquipmentAlarmMapper.insert(d);
+        return "";
+    }
+}

+ 19 - 0
pole-service/src/main/java/com/zksy/pole/factory/impl/HandleDgEquipmentStatusCmd.java

@@ -0,0 +1,19 @@
+package com.zksy.pole.factory.impl;
+
+import com.zksy.pole.domain.po.DgEquipmentStatus;
+import com.zksy.pole.factory.IHandleCmd;
+import com.zksy.pole.mapper.DgEquipmentStatusMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+@Component
+public class HandleDgEquipmentStatusCmd implements IHandleCmd {
+    @Autowired
+    private DgEquipmentStatusMapper dgEquipmentStatusMapper;
+    @Override
+    public <T> String HandleCmdMethod(T data) {
+        DgEquipmentStatus d = (DgEquipmentStatus) data;
+        dgEquipmentStatusMapper.insert(d);
+        return "";
+    }
+}

+ 26 - 0
pole-service/src/main/java/com/zksy/pole/factory/impl/HandleDgGatewayRegistrationCmd.java

@@ -0,0 +1,26 @@
+package com.zksy.pole.factory.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.lang.UUID;
+import com.zksy.pole.domain.po.DgGatewayRegistration;
+import com.zksy.pole.factory.IHandleCmd;
+import com.zksy.pole.mapper.DgGatewayRegistrationMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+@Component
+public class HandleDgGatewayRegistrationCmd implements IHandleCmd {
+    @Autowired
+    private DgGatewayRegistrationMapper dgGatewayRegistrationMapper;
+    @Override
+    public <T> String HandleCmdMethod(T data) {
+        DgGatewayRegistration d = (DgGatewayRegistration) data;
+        d.setId(UUID.fastUUID().toString(true));
+        System.out.println("11111111111111111111111111111111111111111111111111"+d);
+        DgGatewayRegistration registration = new DgGatewayRegistration();
+        BeanUtil.copyProperties(d,registration);
+
+        dgGatewayRegistrationMapper.insert(registration);
+        return "";
+    }
+}

+ 19 - 0
pole-service/src/main/java/com/zksy/pole/factory/impl/HandleDgGatewayStrategyCmd.java

@@ -0,0 +1,19 @@
+package com.zksy.pole.factory.impl;
+
+import com.zksy.pole.domain.po.DgGatewayStrategy;
+import com.zksy.pole.factory.IHandleCmd;
+import com.zksy.pole.mapper.DgGatewayStrategyMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+@Component
+public class HandleDgGatewayStrategyCmd implements IHandleCmd {
+    @Autowired
+    private DgGatewayStrategyMapper dgGatewayStrategyMapper;
+    @Override
+    public <T> String HandleCmdMethod(T data) {
+        DgGatewayStrategy d = (DgGatewayStrategy) data;
+        dgGatewayStrategyMapper.insert(d);
+        return "";
+    }
+}

+ 21 - 0
pole-service/src/main/java/com/zksy/pole/factory/impl/HandleDgLampControlledHeartbeatCmd.java

@@ -0,0 +1,21 @@
+package com.zksy.pole.factory.impl;
+
+import com.zksy.pole.domain.po.DgGatewayStrategy;
+import com.zksy.pole.domain.po.DgLampControlledHeartbeat;
+import com.zksy.pole.factory.IHandleCmd;
+import com.zksy.pole.mapper.DgGatewayStrategyMapper;
+import com.zksy.pole.mapper.DgLampControlledHeartbeatMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+@Component
+public class HandleDgLampControlledHeartbeatCmd implements IHandleCmd {
+    @Autowired
+    private DgLampControlledHeartbeatMapper dgLampControlledHeartbeatMapper;
+    @Override
+    public <T> String HandleCmdMethod(T data) {
+        DgLampControlledHeartbeat d = (DgLampControlledHeartbeat) data;
+        dgLampControlledHeartbeatMapper.insert(d);
+        return "";
+    }
+}

+ 21 - 0
pole-service/src/main/java/com/zksy/pole/factory/impl/HandleDgRelayControlCmd.java

@@ -0,0 +1,21 @@
+package com.zksy.pole.factory.impl;
+
+import com.zksy.pole.domain.po.DgLampControlledHeartbeat;
+import com.zksy.pole.domain.po.DgRelayControl;
+import com.zksy.pole.factory.IHandleCmd;
+import com.zksy.pole.mapper.DgLampControlledHeartbeatMapper;
+import com.zksy.pole.mapper.DgRelayControlMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+@Component
+public class HandleDgRelayControlCmd implements IHandleCmd {
+    @Autowired
+    private DgRelayControlMapper dgRelayControlMapper;
+    @Override
+    public <T> String HandleCmdMethod(T data) {
+        DgRelayControl d = (DgRelayControl) data;
+        dgRelayControlMapper.insert(d);
+        return "";
+    }
+}

+ 21 - 0
pole-service/src/main/java/com/zksy/pole/factory/impl/HandleDgRelayTimingStrategyCmd.java

@@ -0,0 +1,21 @@
+package com.zksy.pole.factory.impl;
+
+import com.zksy.pole.domain.po.DgRelayControl;
+import com.zksy.pole.domain.po.DgRelayTimingStrategy;
+import com.zksy.pole.factory.IHandleCmd;
+import com.zksy.pole.mapper.DgRelayControlMapper;
+import com.zksy.pole.mapper.DgRelayTimingStrategyMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+@Component
+public class HandleDgRelayTimingStrategyCmd implements IHandleCmd {
+    @Autowired
+    private DgRelayTimingStrategyMapper dgRelayTimingStrategyMapper;
+    @Override
+    public <T> String HandleCmdMethod(T data) {
+        DgRelayTimingStrategy d = (DgRelayTimingStrategy) data;
+        dgRelayTimingStrategyMapper.insert(d);
+        return "";
+    }
+}

+ 21 - 0
pole-service/src/main/java/com/zksy/pole/factory/impl/HandleDgReportEnvironmentalDataCmd.java

@@ -0,0 +1,21 @@
+package com.zksy.pole.factory.impl;
+
+import com.zksy.pole.domain.po.DgRelayControl;
+import com.zksy.pole.domain.po.DgReportEnvironmentalData;
+import com.zksy.pole.factory.IHandleCmd;
+import com.zksy.pole.mapper.DgRelayControlMapper;
+import com.zksy.pole.mapper.DgReportEnvironmentalDataMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+@Component
+public class HandleDgReportEnvironmentalDataCmd implements IHandleCmd {
+    @Autowired
+    private DgReportEnvironmentalDataMapper dgReportEnvironmentalDataMapper;
+    @Override
+    public <T> String HandleCmdMethod(T data) {
+        DgReportEnvironmentalData d = (DgReportEnvironmentalData) data;
+        dgReportEnvironmentalDataMapper.insert(d);
+        return "";
+    }
+}

+ 21 - 0
pole-service/src/main/java/com/zksy/pole/factory/impl/HandleDgTimelyControlCmd.java

@@ -0,0 +1,21 @@
+package com.zksy.pole.factory.impl;
+
+import com.zksy.pole.domain.po.DgRelayControl;
+import com.zksy.pole.domain.po.DgTimelyControl;
+import com.zksy.pole.factory.IHandleCmd;
+import com.zksy.pole.mapper.DgRelayControlMapper;
+import com.zksy.pole.mapper.DgTimelyControlMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+@Component
+public class HandleDgTimelyControlCmd implements IHandleCmd {
+    @Autowired
+    private DgTimelyControlMapper dgTimelyControlMapper;
+    @Override
+    public <T> String HandleCmdMethod(T data) {
+        DgTimelyControl d = (DgTimelyControl) data;
+        dgTimelyControlMapper.insert(d);
+        return "";
+    }
+}