Quellcode durchsuchen

回应指令:配置信息回应

wanggaokun vor 1 Jahr
Ursprung
Commit
3c46a6c901

+ 1 - 1
PHM-admin/phm-common/src/main/java/com/phm/common/core/domain/BaseEntity.java

@@ -109,7 +109,7 @@ public class BaseEntity implements Serializable {
         try {
             loginUser = (LoginUser)SecurityUtils.getAuthentication().getPrincipal();
         } catch (Exception ignored) {
-            log.error("获取用户信息异常");
+            log.error("error: 获取用户信息异常");
         }
         this.updateBy = ObjectUtils.isNotEmpty(loginUser) ? loginUser.getUsername() : "ANONYMITY";
     }

+ 19 - 0
PHM-admin/phm-netty/src/main/java/com/phm/netty/constant/MsgConstant.java

@@ -0,0 +1,19 @@
+package com.phm.netty.constant;
+
+/**
+ * @Description MsgConstant
+ *
+ * @Author WGK
+ * @Date 2023/10/10 23:11
+ */
+public class MsgConstant {
+    /**
+     * GPHM
+     */
+    public static final String GPHM = "GPHM";
+
+    /**
+     * SPHM
+     */
+    public static final String SPHM = "SPHM";
+}

+ 11 - 2
PHM-admin/phm-netty/src/main/java/com/phm/netty/domain/Message.java

@@ -94,8 +94,7 @@ public class Message implements Serializable {
     }
 
     public static void main(String[] args) {
-        byte[] test1 = Message.testMsg();
-        byte[] test2 = Message.testMsg2();
+        byte[] test1 = Message.testMsg4();
 
         // 使用Arrays.toString()方法打印字节数组
         System.out.println("使用Arrays.toString()方法打印字节数组: " + Arrays.toString(test1));
@@ -118,6 +117,16 @@ public class Message implements Serializable {
         message.setType(OrderEnum.RESPONSE.getType()).setTarget("GPHM").setSource("SPHM").setData("{\"id\": \"ZL001\",\"response\":200}");
         return Message.msgToBytes(message);
     }
+    public static byte[] testMsg3() {
+        Message message = new Message();
+        message.setType(OrderEnum.TIMING.getType()).setTarget("GPHM").setSource("SPHM").setData("{\"id\": \"ZL001\",\"response\":200}");
+        return Message.msgToBytes(message);
+    }
+    public static byte[] testMsg4() {
+        Message message = new Message();
+        message.setType(OrderEnum.PARAMETER.getType()).setTarget("GPHM").setSource("SPHM").setData("");
+        return Message.msgToBytes(message);
+    }
 
     public static byte[] msgToBytes(Message msg) {
         if (ObjectUtil.isEmpty(msg)) {

+ 0 - 17
PHM-admin/phm-netty/src/main/java/com/phm/netty/enums/MessageEnum.java

@@ -36,21 +36,4 @@ public enum MessageEnum {
         this.type = type;
         this.content = content;
     }
-
-    // case中判断使用
-    public static MessageEnum getStructureEnum(Message msg) {
-        short type = Optional.ofNullable(msg)
-                .map(Message::getType)
-                .orElse((short) 0);
-        if (type != 0) {
-            List<MessageEnum> objectEnums = Arrays.stream(MessageEnum.values())
-                    .filter((item) -> item.getType() == type)
-                    .distinct()
-                    .collect(Collectors.toList());
-            if (!objectEnums.isEmpty()) {
-                return objectEnums.get(0);
-            }
-        }
-        return null;
-    }
 }

+ 1 - 1
PHM-admin/phm-netty/src/main/java/com/phm/netty/server/NettyServerInitialize.java

@@ -22,7 +22,7 @@ public class NettyServerInitialize extends ChannelInitializer<SocketChannel> {
     protected void initChannel(SocketChannel socketChannel) throws Exception {
         ChannelPipeline pipeline = socketChannel.pipeline();
         // 添加IdleStateHandler来处理空闲状态
-        pipeline.addLast(new IdleStateHandler(0, 20, 0));
+        pipeline.addLast(new IdleStateHandler(0, 5, 0));
         // 添加心跳处理器
         pipeline.addLast(new HeartbeatHandler());
         pipeline.addLast(new ByteArrayDecoder());

+ 2 - 2
PHM-admin/phm-netty/src/main/java/com/phm/netty/server/handler/ByteArrayMessageHandler.java

@@ -85,7 +85,7 @@ public class ByteArrayMessageHandler extends SimpleChannelInboundHandler<byte[]>
         }
         if (OrderEnum.TIMING.getType() == type) {
             // 校时功能
-            lastMsg = byteArrayMessageHandler.processService.timing(msg);
+            byteArrayMessageHandler.processService.timing(msg);
         }
         if (OrderEnum.PARAMETER.getType() == type) {
             // 参数传递
@@ -97,7 +97,7 @@ public class ByteArrayMessageHandler extends SimpleChannelInboundHandler<byte[]>
         }
         log.info("应答内容:{}", lastMsg);
         // 转byte[] 返回消息
-        ctx.writeAndFlush(Message.testMsg2());
+        ctx.writeAndFlush(Message.msgToBytes(lastMsg));
     }
 
     /**

+ 1 - 3
PHM-admin/phm-netty/src/main/java/com/phm/netty/server/handler/HeartbeatHandler.java

@@ -1,7 +1,6 @@
 package com.phm.netty.server.handler;
 
 import com.phm.netty.domain.Message;
-import com.phm.netty.enums.MessageEnum;
 import com.phm.netty.enums.OrderEnum;
 import io.netty.buffer.ByteBuf;
 import io.netty.buffer.Unpooled;
@@ -14,7 +13,6 @@ import io.netty.util.CharsetUtil;
 
 /**
  * @Description HeartbeatHandler 服务端心跳机制
- *
  * @Author WGK
  * @Date 2023/9/19 22:17
  */
@@ -28,7 +26,7 @@ public class HeartbeatHandler extends ChannelInboundHandlerAdapter {
             IdleStateEvent e = (IdleStateEvent) evt;
             if (e.state() == IdleState.WRITER_IDLE) {
                 Message message = new Message();
-                message.setType(OrderEnum.HEARTBEAT.getType()).setData(MessageEnum.HEARTBEAT.getContent());
+                message.setType(OrderEnum.HEARTBEAT.getType()).setData(OrderEnum.HEARTBEAT.getContent());
                 ctx.writeAndFlush(Unpooled.wrappedBuffer(Message.msgToBytes(message))).addListener(ChannelFutureListener.CLOSE_ON_FAILURE);
             }
         } else {

+ 1 - 1
PHM-admin/phm-netty/src/main/java/com/phm/netty/server/handler/ServerListenerHandler.java

@@ -2,7 +2,6 @@ package com.phm.netty.server.handler;
 
 import cn.hutool.core.collection.CollectionUtil;
 import com.phm.netty.domain.Message;
-import com.phm.netty.enums.MessageEnum;
 import com.phm.netty.utils.ChannelMap;
 import io.netty.channel.Channel;
 import io.netty.channel.ChannelHandler;
@@ -14,6 +13,7 @@ import org.springframework.stereotype.Component;
 
 /**
  * @Description ServerListenerHandler 数据处理器,针对不同类型数据分类处理
+ *
  * @Author WGK
  * @Date 2023/9/14 11:45
  */

+ 1 - 2
PHM-admin/phm-netty/src/main/java/com/phm/netty/service/IProcessService.java

@@ -22,10 +22,9 @@ public interface IProcessService {
      * 校时处理
      *
      * @param message msg
-     * @return res
      * @throws Exception exception
      */
-    Message timing(Message message) throws Exception;
+    void timing(Message message) throws Exception;
 
     /**
      * 参数传递处理

+ 3 - 5
PHM-admin/phm-netty/src/main/java/com/phm/netty/service/impl/ProcessService.java

@@ -58,7 +58,7 @@ public class ProcessService implements IProcessService {
     }
 
     @Override
-    public Message timing(Message message) throws Exception {
+    public void timing(Message message) throws Exception {
         log.info("校时功能");
         JSONObject jsonObject = JSONObject.parseObject(message.getData());
         String timestamp = jsonObject.getString("timestamp");
@@ -78,16 +78,14 @@ public class ProcessService implements IProcessService {
         } catch (Exception exception) {
             log.error(exception.getMessage());
         }
-        Message msg = new Message();
-        msg.setType(OrderEnum.RESPONSE.getType()).setData(JsonUtils.convertJson(CommonResult.buildSuccess()));
-        return msg;
+       log.info("校时成功");
     }
 
     @Override
     public Message getParameterConfig(Message message) throws Exception {
         List<OrderConfig> configs = orderConfigService.selectOrderConfigList(null);
         Message msg = new Message();
-        msg.setType(OrderEnum.RESPONSE.getType()).setData(JsonUtils.convertJson(CommonResult.success(configs)));
+        msg.setType(OrderEnum.PARAMETER.getType()).setData(JsonUtils.convertJson(CommonResult.success(configs)));
         return msg;
     }
 }