From 98d63d51c8488dadd819d540350f578e025e02c1 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期二, 23 九月 2025 14:49:28 +0800
Subject: [PATCH] 更新代码

---
 MessagePushTravel/src/main/java/com/sinata/push/util/echo/NettyServerController.java |   95 ++++++++++++++++++++++++-----------------------
 1 files changed, 48 insertions(+), 47 deletions(-)

diff --git a/MessagePushTravel/src/main/java/com/sinata/push/util/echo/NettyServerController.java b/MessagePushTravel/src/main/java/com/sinata/push/util/echo/NettyServerController.java
index 2f91d83..6baef1c 100644
--- a/MessagePushTravel/src/main/java/com/sinata/push/util/echo/NettyServerController.java
+++ b/MessagePushTravel/src/main/java/com/sinata/push/util/echo/NettyServerController.java
@@ -115,22 +115,22 @@
                         if(StringUtil.isNotEmpty(token)){
                             String token_ = redisUtil.getValue("USER_" + userId1);//获取缓存中最新的数据
                             if(StringUtil.isNotEmpty(token_) && !token.equals(token_)){//不在同一设备上登录,向其他设备发送数据
-								ChannelHandlerContext context = NettyChannelMap.getData("USER" + userId1);
-								JSONObject msg_ = new JSONObject();
-                                msg_.put("code", 200);
-                                msg_.put("msg", "SUCCESS");
-                                msg_.put("method", "OFFLINE");
-                                msg_.put("data", new Object());
-								this.sendMsgToClient(context, msg_.toJSONString());//给当前通道发送消息
-                                TimerTask timerTask = new TimerTask() {
-                                    @Override
-                                    public void run() {
-										NettyChannelMap.remove(context);
-                                    }
-                                };
-                                Timer timer = new Timer();
-                                timer.schedule(timerTask, 3000);
-                                timer.cancel();
+//								ChannelHandlerContext context = NettyChannelMap.getData("USER" + userId1);
+//								JSONObject msg_ = new JSONObject();
+//                                msg_.put("code", 200);
+//                                msg_.put("msg", "SUCCESS");
+//                                msg_.put("method", "OFFLINE");
+//                                msg_.put("data", new Object());
+//								this.sendMsgToClient(context, msg_.toJSONString());//给当前通道发送消息
+//                                TimerTask timerTask = new TimerTask() {
+//                                    @Override
+//                                    public void run() {
+//										NettyChannelMap.remove(context);
+//                                    }
+//                                };
+//                                Timer timer = new Timer();
+//                                timer.schedule(timerTask, 3000);
+//                                timer.cancel();
                             }
                             if(StringUtil.isEmpty(token_)){//确保登录的时候存储token失败的情况
                                 redisUtil.setStrValue("USER_" + userId1, token);
@@ -165,21 +165,21 @@
 							String token_ = redisUtil.getValue("DRIVER_" + userId1);//缓存中拿最新数据
 							if(StringUtil.isNotEmpty(token_) && !token_.equals(token)){
 								//如果是车载端登录,则将其它端都强迫下线
-								JSONObject msg_ = new JSONObject();
-								msg_.put("code", 200);
-								msg_.put("msg", "SUCCESS");
-								msg_.put("method", "OFFLINE");
-								msg_.put("data", new Object());
-								this.sendMsgToClient(ctx, msg_.toJSONString());//给当前通道发送消息
-								TimerTask timerTask = new TimerTask() {
-									@Override
-									public void run() {
-										NettyChannelMap.remove(ctx);
-									}
-								};
-								Timer timer = new Timer();
-								timer.schedule(timerTask, 3000);
-								timer.cancel();
+//								JSONObject msg_ = new JSONObject();
+//								msg_.put("code", 200);
+//								msg_.put("msg", "SUCCESS");
+//								msg_.put("method", "OFFLINE");
+//								msg_.put("data", new Object());
+//								this.sendMsgToClient(ctx, msg_.toJSONString());//给当前通道发送消息
+//								TimerTask timerTask = new TimerTask() {
+//									@Override
+//									public void run() {
+//										NettyChannelMap.remove(ctx);
+//									}
+//								};
+//								Timer timer = new Timer();
+//								timer.schedule(timerTask, 3000);
+//								timer.cancel();
 							}
 							if(StringUtil.isEmpty(token_)){//确保登录的时候存储token失败的情况
 								redisUtil.setStrValue("DRIVER_" + userId1, token);
@@ -192,22 +192,22 @@
 						if(StringUtil.isNotEmpty(token) && StringUtil.isEmpty(value)){//APP端登录的操作
                             String token_ = redisUtil.getValue("DRIVER_" + userId1);//缓存中拿最新数据
                             if(StringUtil.isNotEmpty(token_) && !token.equals(token_)){//不在同一设备上登录,向当前设备发送数据
-								ChannelHandlerContext context = NettyChannelMap.getData("DRIVER" + userId1);
-								JSONObject msg_ = new JSONObject();
-                                msg_.put("code", 200);
-                                msg_.put("msg", "SUCCESS");
-                                msg_.put("method", "OFFLINE");
-                                msg_.put("data", new Object());
-								this.sendMsgToClient(context, msg_.toJSONString());//给当前通道发送消息
-                                TimerTask timerTask = new TimerTask() {
-                                    @Override
-                                    public void run() {
-										NettyChannelMap.remove(context);
-                                    }
-                                };
-                                Timer timer = new Timer();
-                                timer.schedule(timerTask, 3000);
-                                timer.cancel();
+//								ChannelHandlerContext context = NettyChannelMap.getData("DRIVER" + userId1);
+//								JSONObject msg_ = new JSONObject();
+//                                msg_.put("code", 200);
+//                                msg_.put("msg", "SUCCESS");
+//                                msg_.put("method", "OFFLINE");
+//                                msg_.put("data", new Object());
+//								this.sendMsgToClient(context, msg_.toJSONString());//给当前通道发送消息
+//                                TimerTask timerTask = new TimerTask() {
+//                                    @Override
+//                                    public void run() {
+//										NettyChannelMap.remove(context);
+//                                    }
+//                                };
+//                                Timer timer = new Timer();
+//                                timer.schedule(timerTask, 3000);
+//                                timer.cancel();
                             }
                             if(StringUtil.isEmpty(token_)){//确保登录的时候存储token失败的情况
                                 redisUtil.setStrValue("DRIVER_" + userId1, token);
@@ -270,6 +270,7 @@
 						}
 						System.out.println("id:" + driverId + "---lon" + lon + "---lat" + lat);
                         redisUtil.setStrValue("DRIVER" + driverId, lon + "," + lat, 300);//实时位置存入redis中
+						redisUtil.addGeo("DRIVER_POSITION", lon, lat, driverId.toString());
 					}else{
 						NettyServerController.sendMsgToClient(ctx, "__error__" + msg.toString());
 					}

--
Gitblit v1.7.1