From ad46ec101f19c65d1c7ecda38608ea9fac7c9ef1 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期六, 28 二月 2026 10:11:07 +0800
Subject: [PATCH] 1
---
zy-acs-gateway/src/main/java/com/zy/acs/gateway/handler/AgvPackageServerHandler.java | 34 +++++++++++++++++++++++++++++++++-
1 files changed, 33 insertions(+), 1 deletions(-)
diff --git a/zy-acs-gateway/src/main/java/com/zy/acs/gateway/handler/AgvPackageServerHandler.java b/zy-acs-gateway/src/main/java/com/zy/acs/gateway/handler/AgvPackageServerHandler.java
index 21d6741..f1bb23a 100644
--- a/zy-acs-gateway/src/main/java/com/zy/acs/gateway/handler/AgvPackageServerHandler.java
+++ b/zy-acs-gateway/src/main/java/com/zy/acs/gateway/handler/AgvPackageServerHandler.java
@@ -7,12 +7,14 @@
import com.zy.acs.gateway.AbstractInboundHandler;
import com.zy.acs.gateway.Executors;
import com.zy.acs.gateway.constant.ProtocolType;
+import com.zy.acs.gateway.constant.RabbitmqConstant;
import com.zy.acs.gateway.domain.AgvPackage;
import com.zy.acs.gateway.process.AckMsgBuilder;
import io.netty.channel.ChannelHandler;
import io.netty.channel.ChannelHandlerContext;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@@ -30,6 +32,11 @@
@Autowired
private Executors executors;
+
+ @Autowired
+ private RabbitTemplate rabbitTemplate;
+
+
@Override
@SuppressWarnings("all")
@@ -55,12 +62,18 @@
agv_b1_down.setPathLen(agv_01_up.getPathLen());
ctx.writeAndFlush(pathAckPac);
+ // 鍐欏叆闃熷垪
+ rabbitTemplate.convertAndSend(RabbitmqConstant.TOPIC_EXCHANGE, RabbitmqConstant.ROUTING_KEY_UP.replaceFirst(RabbitmqConstant.SPILT_REGEX, uniqueNo).replaceFirst(RabbitmqConstant.SPILT_REGEX, ProtocolType.PATH_ACK.name()), agv_01_up);
+ rabbitTemplate.convertAndSend(RabbitmqConstant.TOPIC_EXCHANGE, RabbitmqConstant.ROUTING_KEY_DOWN.replaceFirst(RabbitmqConstant.SPILT_REGEX, uniqueNo).replaceFirst(RabbitmqConstant.SPILT_REGEX, ProtocolType.PATH_ACK_RESPONSE.name()), agv_b1_down);
+
break label;
case PICK_PLACE_REQUEST: // 鍙栨斁璐ц姹傚寘
AGV_06_UP agv_06_up = (AGV_06_UP) pac.getBody().getMessageBody();
redis.push(RedisConstant.AGV_COMPLETE_FLAG, AgvProtocol.build(uniqueNo).setMessageBody(agv_06_up));
+ // 鍐欏叆闃熷垪
+ rabbitTemplate.convertAndSend(RabbitmqConstant.TOPIC_EXCHANGE, RabbitmqConstant.ROUTING_KEY_UP.replaceFirst(RabbitmqConstant.SPILT_REGEX, uniqueNo).replaceFirst(RabbitmqConstant.SPILT_REGEX, ProtocolType.PICK_PLACE_REQUEST.name()), agv_06_up);
break label;
@@ -71,6 +84,8 @@
redis.setObject(RedisConstant.AGV_CMD_UP_FLAG
, pac.getHeader().getUniqueNo() + "_" + agv_02_up.getSerialNo()
, agv_02_up);
+ // 鍐欏叆闃熷垪
+ rabbitTemplate.convertAndSend(RabbitmqConstant.TOPIC_EXCHANGE, RabbitmqConstant.ROUTING_KEY_UP.replaceFirst(RabbitmqConstant.SPILT_REGEX, uniqueNo).replaceFirst(RabbitmqConstant.SPILT_REGEX, ProtocolType.COMMAND_ACK.name()), agv_02_up);
break label;
@@ -80,6 +95,9 @@
AGV_11_UP agv_11_up = (AGV_11_UP) pac.getBody().getMessageBody();
redis.push(RedisConstant.AGV_COMPLETE_FLAG, AgvProtocol.build(uniqueNo).setMessageBody(agv_11_up));
+ // 鍐欏叆闃熷垪
+ rabbitTemplate.convertAndSend(RabbitmqConstant.TOPIC_EXCHANGE, RabbitmqConstant.ROUTING_KEY_UP.replaceFirst(RabbitmqConstant.SPILT_REGEX, uniqueNo).replaceFirst(RabbitmqConstant.SPILT_REGEX, ProtocolType.ACTION_COMPLETE.name()), agv_11_up);
+
// 鍔ㄤ綔瀹屾垚搴旂瓟
if (null != ackType) {
AgvPackage ackPac = AckMsgBuilder.ofSuccess(pac, ackType);
@@ -88,8 +106,9 @@
agv_a1_down.setAckSign((byte) agv_11_up.getCompleteCode());
ctx.writeAndFlush(ackPac);
- }
+ rabbitTemplate.convertAndSend(RabbitmqConstant.TOPIC_EXCHANGE, RabbitmqConstant.ROUTING_KEY_DOWN.replaceFirst(RabbitmqConstant.SPILT_REGEX, uniqueNo).replaceFirst(RabbitmqConstant.SPILT_REGEX, ackType.name()), agv_a1_down);
+ }
break label;
@@ -105,6 +124,8 @@
// }
//
// });
+ // 鍐欏叆闃熷垪
+ rabbitTemplate.convertAndSend(RabbitmqConstant.TOPIC_EXCHANGE, RabbitmqConstant.ROUTING_KEY_UP.replaceFirst(RabbitmqConstant.SPILT_REGEX, uniqueNo).replaceFirst(RabbitmqConstant.SPILT_REGEX, ProtocolType.DATA_CODE_REPORT.name()), agv_12_up);
break label;
@@ -121,6 +142,8 @@
//
// });
+ // 鍐欏叆闃熷垪
+ rabbitTemplate.convertAndSend(RabbitmqConstant.TOPIC_EXCHANGE, RabbitmqConstant.ROUTING_KEY_UP.replaceFirst(RabbitmqConstant.SPILT_REGEX, uniqueNo).replaceFirst(RabbitmqConstant.SPILT_REGEX, ProtocolType.DATA_WITHOUT_CODE_REPORT.name()), agv_13_up);
break label;
@@ -143,6 +166,8 @@
// }
//
// });
+ // 鍐欏叆闃熷垪
+ rabbitTemplate.convertAndSend(RabbitmqConstant.TOPIC_EXCHANGE, RabbitmqConstant.ROUTING_KEY_UP.replaceFirst(RabbitmqConstant.SPILT_REGEX, uniqueNo).replaceFirst(RabbitmqConstant.SPILT_REGEX, ProtocolType.HEARTBEAT_REPORT.name()), agv_03_up);
break label;
@@ -159,6 +184,8 @@
//
// });
+ // 鍐欏叆闃熷垪
+ rabbitTemplate.convertAndSend(RabbitmqConstant.TOPIC_EXCHANGE, RabbitmqConstant.ROUTING_KEY_UP.replaceFirst(RabbitmqConstant.SPILT_REGEX, uniqueNo).replaceFirst(RabbitmqConstant.SPILT_REGEX, ProtocolType.SILO_REPORT.name()), agv_70_up);
break label;
@@ -166,12 +193,15 @@
AGV_F0_UP agv_f0_up = (AGV_F0_UP) pac.getBody().getMessageBody();
redis.push(RedisConstant.AGV_DATA_FLAG, AgvProtocol.build(uniqueNo).setMessageBody(agv_f0_up));
+ // 鍐欏叆闃熷垪
+ rabbitTemplate.convertAndSend(RabbitmqConstant.TOPIC_EXCHANGE, RabbitmqConstant.ROUTING_KEY_UP.replaceFirst(RabbitmqConstant.SPILT_REGEX, uniqueNo).replaceFirst(RabbitmqConstant.SPILT_REGEX, ProtocolType.LOGIN_REPORT.name()), agv_f0_up);
// 鐧诲綍搴旂瓟
if (null != ackType) {
AgvPackage ackPac = AckMsgBuilder.ofSuccess(pac, ackType);
ctx.writeAndFlush(ackPac);
+ rabbitTemplate.convertAndSend(RabbitmqConstant.TOPIC_EXCHANGE, RabbitmqConstant.ROUTING_KEY_DOWN.replaceFirst(RabbitmqConstant.SPILT_REGEX, uniqueNo).replaceFirst(RabbitmqConstant.SPILT_REGEX, ackType.name()), ackPac.getBody().getMessageBody());
}
// 30s redis
@@ -184,6 +214,8 @@
AGV_04_UP agv_04_up = (AGV_04_UP) pac.getBody().getMessageBody();
redis.push(RedisConstant.AGV_DATA_FLAG, AgvProtocol.build(uniqueNo).setMessageBody(agv_04_up));
+ // 鍐欏叆闃熷垪
+ rabbitTemplate.convertAndSend(RabbitmqConstant.TOPIC_EXCHANGE, RabbitmqConstant.ROUTING_KEY_UP.replaceFirst(RabbitmqConstant.SPILT_REGEX, uniqueNo).replaceFirst(RabbitmqConstant.SPILT_REGEX, ProtocolType.FAULT_REPORT.name()), agv_04_up);
break label;
--
Gitblit v1.9.1