From 607a2413533f10be28ebbfe1c96a4669a3150ce4 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期三, 25 六月 2025 15:04:23 +0800 Subject: [PATCH] 提交推送服务 --- MessagePushTravel/src/main/java/com/sinata/push/util/echo/NettyServerController.java | 40 +++++++++++++--------------------------- 1 files changed, 13 insertions(+), 27 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 4e003bd..1c6782b 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 @@ -10,16 +10,13 @@ import io.netty.buffer.Unpooled; import io.netty.channel.ChannelFuture; import io.netty.channel.ChannelHandlerContext; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.RedisTemplate; -import org.springframework.data.redis.core.StringRedisTemplate; -import org.springframework.http.HttpEntity; -import org.springframework.http.HttpHeaders; import org.springframework.http.MediaType; -import org.springframework.util.LinkedMultiValueMap; -import org.springframework.util.MultiValueMap; +import org.springframework.stereotype.Component; import org.springframework.util.StringUtils; -import org.springframework.web.client.RestTemplate; +import javax.annotation.Resource; import java.text.SimpleDateFormat; import java.util.*; import java.util.concurrent.TimeUnit; @@ -31,13 +28,16 @@ * @createDate 2016年6月3日 * @version 1.0 */ +@Component public class NettyServerController { public static Hashtable<String, Hashtable<ChannelHandlerContext, String>> map = new Hashtable<String, Hashtable<ChannelHandlerContext,String>>(); public static Hashtable<String,String> table; - - private RedisTemplate<String, String> redisTemplate = SpringUtil.getObject(StringRedisTemplate.class); + + @Resource + private RedisTemplate<String, Object> redisTemplate; + private SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"); @@ -99,7 +99,7 @@ String device = jsonCon.getString("device"); String version = jsonCon.getString("version"); if(StringUtil.isNotEmpty(userId1)){ - String fluid_control = redisTemplate.opsForValue().get("fluid_control_" + userId1 + "_" + type); + String fluid_control = (String)redisTemplate.opsForValue().get("fluid_control_" + userId1 + "_" + type); if(!StringUtils.hasLength(fluid_control)){ redisTemplate.opsForValue().set("fluid_control_" + userId1 + "_" + type, System.currentTimeMillis() + ""); }else{ @@ -148,20 +148,6 @@ ctx.writeAndFlush(Unpooled.copiedBuffer((s).getBytes())); } }else{ - Map<String, Object> params = new HashMap<>(); - params.put("driverId", userId1); - HttpRequest post = HttpUtil.createPost(URLUtil.zuul + "/driver-server/base/driverOnline/addDriverOnline"); - post.contentType(MediaType.APPLICATION_FORM_URLENCODED.getType()); - post.form(params); - HttpResponse execute = post.execute(); - if(200 != execute.getStatus()){ - System.err.println("调用driver-server添加司机在线数据出错了"); - } - JSONObject jsonObject = JSON.parseObject(execute.body(), JSONObject.class); - if(jsonObject.getIntValue("code") != 200){ - System.err.println("调用driver-server添加司机在线数据出错了"); - } - //TODO 存储最后一次上传的时间(用于保证车载端断电后1小时自动下班) if(StringUtil.isNotEmpty(device) && device.equals("carDevice")){ redisTemplate.opsForValue().set("DEVICE_" + userId1, String.valueOf(System.currentTimeMillis())); @@ -276,16 +262,16 @@ System.out.println("id:" + driverId + "---lon" + lon + "---lat" + lat); redisTemplate.opsForValue().set("DRIVER" + driverId, lon + "," + lat, 300, TimeUnit.SECONDS);//实时位置存入redis中 }else{ - NettyServerController.sendMsgToClient(ctx, "__error__" + msg.toString()); + this.sendMsgToClient(ctx, "__error__" + msg.toString()); } }else{ - NettyServerController.sendMsgToClient(ctx, "__error__" + msg.toString()); + this.sendMsgToClient(ctx, "__error__" + msg.toString()); } } } catch (Exception e) { if(isdebug) { - NettyServerController.sendMsgToClient(ctx, "__error__" + msg.toString()); + this.sendMsgToClient(ctx, "__error__" + msg.toString()); } e.printStackTrace(); } @@ -298,7 +284,7 @@ * @param msg * @author TaoNingBo */ - public static void sendMsgToClient(ChannelHandlerContext ctx, String msg) { + public void sendMsgToClient(ChannelHandlerContext ctx, String msg) { if (ctx != null && ctx.channel().isActive()) { ByteBuf buffer = Unpooled.copiedBuffer((msg).getBytes()); ChannelFuture sync; -- Gitblit v1.7.1