puzhibing
2025-04-25 fb465945e7316701397129085692305e3b5edf13
修改bug
13个文件已修改
41 ■■■■■ 已修改文件
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/netty/client/NettyClient.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/ConnectReqService.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/DOWNConnectRspService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/DOWNPlaybackMsgControlService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/DOWNPlaybackMsgStartupService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/DOWNRealvideoMsgEndService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/DOWNRealvideoMsgStartupService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/ExgMsgService.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/UPDisconnectReqService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/UPLinkTestReqService.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/WarnMsgService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/util/jtt809/decoder/Jtt809Decoder.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/util/jtt809/encoder/Jtt809Encoder.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/netty/client/NettyClient.java
@@ -88,7 +88,7 @@
            downConnectReq.setVerifyCode(verifyCode);
            log.info("从链路连接请求({}):{}", DataType.DOWN_CONNECT_REQ.getCode(), JSON.toJSONString(downConnectReq));
            byte[] body = downConnectReq.encode();
            OuterPacket out = new OuterPacket(DataType.DOWN_CONNECT_REQ.getCode(), body);
            OuterPacket out = new OuterPacket(DataType.DOWN_CONNECT_REQ.getCode(), inferiorPlatformId, body);
            channel.writeAndFlush(out);
            channel.flush();
            
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/ConnectReqService.java
@@ -72,7 +72,7 @@
        //主链路登录应答
        log.info("主链路登录应答({}):{}", DataType.UP_CONNECT_RSP.getCode(), JSON.toJSONString(upConnectRsp));
        byte[] body = upConnectRsp.encode();
        OuterPacket out = new OuterPacket(DataType.UP_CONNECT_RSP.getCode(), body);
        OuterPacket out = new OuterPacket(DataType.UP_CONNECT_RSP.getCode(),outerPacket.getGnsscenterId() , body);
        ctx.writeAndFlush(out);
        ctx.flush();
        if (upConnectRsp.getResult() == 0x00) {
@@ -98,7 +98,7 @@
        try {
            boolean b = downConnect(inferiorPlatformId, host, port, verifyCode);
        } catch (Exception e) {
            downDisconnectInform(ctx, 0x00);
            downDisconnectInform(ctx, inferiorPlatformId, 0x00);
            throw new RuntimeException(e);
        }
    }
@@ -140,12 +140,12 @@
     * @param ctx
     * @param errorCode
     */
    public void downDisconnectInform(ChannelHandlerContext ctx, int errorCode) {
    public void downDisconnectInform(ChannelHandlerContext ctx, int inferiorPlatformId, int errorCode) {
        DOWNDisconnectInform downDisconnectInform = new DOWNDisconnectInform();
        downDisconnectInform.setErrorCode(errorCode);
        log.info("从链路断开通知({}):{}", DataType.DOWN_DISCONNECT_INFORM.getCode(), JSON.toJSONString(downDisconnectInform));
        byte[] body = downDisconnectInform.encode();
        OuterPacket out = new OuterPacket(DataType.DOWN_CONNECT_REQ.getCode(), body);
        OuterPacket out = new OuterPacket(DataType.DOWN_CONNECT_REQ.getCode(), inferiorPlatformId, body);
        ctx.writeAndFlush(out);
        ctx.flush();
    }
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/DOWNConnectRspService.java
@@ -70,7 +70,7 @@
                    //获取从链路通道
                    Channel channel = ChannelMap.getClientChannel(inferiorPlatformId);
                    if (null != channel && channel.isActive()) {
                        OuterPacket out = new OuterPacket(DataType.DOWN_LINKTEST_REQ.getCode(), null);
                        OuterPacket out = new OuterPacket(DataType.DOWN_LINKTEST_REQ.getCode(), inferiorPlatformId, null);
                        channel.writeAndFlush(out);
                        log.info("从链路连接保持请求({}):{}", DataType.DOWN_LINKTEST_REQ.getCode(), "");
                        redisTemplate.opsForValue().set("login:" + inferiorPlatformId, System.currentTimeMillis(), 1, TimeUnit.MINUTES);
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/DOWNPlaybackMsgControlService.java
@@ -51,7 +51,7 @@
        downPlaybackMsgControl.setFastTime(fastTime);
        downPlaybackMsgControl.setDateTime(null);
        byte[] body = downPlaybackMsgControl.encode();
        OuterPacket out = new OuterPacket(DataType.DOWN_PLAYBACK_MSG.getCode(), body);
        OuterPacket out = new OuterPacket(DataType.DOWN_PLAYBACK_MSG.getCode(), inferiorPlatformId, body);
        channel.writeAndFlush(out);
        log.info("远程录像回放控制请求({}):{}", DataType.DOWN_PLAYBACK_MSG_CONTROL.getCode(), JSON.toJSONString(downPlaybackMsgControl));
        return R.ok();
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/DOWNPlaybackMsgStartupService.java
@@ -63,7 +63,7 @@
        downPlaybackMsgStartup.setAuthorizeCode(authorizeMsgStartup.getAuthorizeCode1());
        downPlaybackMsgStartup.setGnssData("");
        byte[] body = downPlaybackMsgStartup.encode();
        OuterPacket out = new OuterPacket(DataType.DOWN_PLAYBACK_MSG.getCode(), body);
        OuterPacket out = new OuterPacket(DataType.DOWN_PLAYBACK_MSG.getCode(), inferiorPlatformId, body);
        channel.writeAndFlush(out);
        log.info("远程录像回放请求({}):{}", DataType.DOWN_PLAYBACK_MSG_STARTUP.getCode(), JSON.toJSONString(downPlaybackMsgStartup));
        return R.ok(authorizeMsgStartup.getAuthorizeCode1());
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/DOWNRealvideoMsgEndService.java
@@ -46,7 +46,7 @@
        downRealvideoMsgEnd.setChannelId(1);
        downRealvideoMsgEnd.setAvttemType(0X00);
        byte[] body = downRealvideoMsgEnd.encode();
        OuterPacket out = new OuterPacket(DataType.DOWN_REALVIDEO_MSG.getCode(), body);
        OuterPacket out = new OuterPacket(DataType.DOWN_REALVIDEO_MSG.getCode(), inferiorPlatformId, body);
        channel.writeAndFlush(out);
        log.info("主动请求停止实时音视频({}):{}", DataType.DOWN_REALVIDEO_MSG_END.getCode(), JSON.toJSONString(downRealvideoMsgEnd));
        return R.ok();
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/DOWNRealvideoMsgStartupService.java
@@ -59,7 +59,7 @@
        downRealvideoMsgStartup.setAuthorizeCode(authorizeMsgStartup.getAuthorizeCode1());
        downRealvideoMsgStartup.setGnssData("");
        byte[] body = downRealvideoMsgStartup.encode();
        OuterPacket out = new OuterPacket(DataType.DOWN_REALVIDEO_MSG.getCode(), body);
        OuterPacket out = new OuterPacket(DataType.DOWN_REALVIDEO_MSG.getCode(), inferiorPlatformId, body);
        channel.writeAndFlush(out);
        log.info("发起实时音视频请求({}):{}", DataType.DOWN_REALVIDEO_MSG_STARTUP.getCode(), JSON.toJSONString(downRealvideoMsgStartup));
        return R.ok(authorizeMsgStartup.getAuthorizeCode1());
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/ExgMsgService.java
@@ -177,7 +177,7 @@
        downExgMsgReportDriverInfo.setDataType(DataType.DOWN_EXG_MSG_REPORT_DRIVER_INFO.getCode());
        downExgMsgReportDriverInfo.setDataLength(0);
        byte[] body = downExgMsgReportDriverInfo.encode();
        OuterPacket out = new OuterPacket(DataType.DOWN_EXG_MSG.getCode(), body);
        OuterPacket out = new OuterPacket(DataType.DOWN_EXG_MSG.getCode(), inferiorPlatformId, body);
        //获取从链路通道
        Channel channel = ChannelMap.getClientChannel(inferiorPlatformId);
        if (null != channel && channel.isActive()) {
@@ -238,7 +238,7 @@
        downExgMsgTakeEwaybillReq.setDataLength(0);
        
        byte[] body = downExgMsgTakeEwaybillReq.encode();
        OuterPacket out = new OuterPacket(DataType.DOWN_EXG_MSG.getCode(), body);
        OuterPacket out = new OuterPacket(DataType.DOWN_EXG_MSG.getCode(), inferiorPlatformId, body);
        //获取从链路通道
        Channel channel = ChannelMap.getClientChannel(inferiorPlatformId);
        if (null != channel && channel.isActive()) {
@@ -324,7 +324,7 @@
        downBaseMsgVehicleAdded.setDataLength(0);
        
        byte[] body = downBaseMsgVehicleAdded.encode();
        OuterPacket out = new OuterPacket(DataType.DOWN_BASE_MSG.getCode(), body);
        OuterPacket out = new OuterPacket(DataType.DOWN_BASE_MSG.getCode(), inferiorPlatformId, body);
        //获取从链路通道
        Channel channel = ChannelMap.getClientChannel(inferiorPlatformId);
        if (null != channel && channel.isActive()) {
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/UPDisconnectReqService.java
@@ -46,7 +46,7 @@
                ctx.close();
                return;
            }
            OuterPacket rep = new OuterPacket(DataType.UP_DISCONNECT_RSP.getCode(), null);
            OuterPacket rep = new OuterPacket(DataType.UP_DISCONNECT_RSP.getCode(), out.getGnsscenterId(), null);
            log.info("主链路注销应答({}):{}", DataType.UP_DISCONNECT_RSP.getCode(), JSON.toJSONString(rep));
            ctx.writeAndFlush(rep);
            redisTemplate.delete("login:" + out.getGnsscenterId());
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/UPLinkTestReqService.java
@@ -38,7 +38,8 @@
        }
        int gnsscenterId = out.getGnsscenterId();
        ChannelMap.addServerChannel(gnsscenterId, ctx.channel());
        OuterPacket rep = new OuterPacket(DataType.UP_LINKTEST_RSP.getCode(), null);
        OuterPacket rep = new OuterPacket(DataType.UP_LINKTEST_RSP.getCode(), gnsscenterId, null);
        rep.setGnsscenterId(gnsscenterId);
        log.info("主链路连接保持应答({}):{}", DataType.UP_LINKTEST_RSP.getCode(), JSON.toJSONString(rep));
        ctx.writeAndFlush(rep);
    }
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/WarnMsgService.java
@@ -160,7 +160,7 @@
        downWarnMsgUrgeTodoReq.setDataType(DataType.DOWN_WARN_MSG_URGE_TODO_REQ.getCode());
        downWarnMsgUrgeTodoReq.setDataLength(92);
        byte[] body = downWarnMsgUrgeTodoReq.encode();
        OuterPacket out = new OuterPacket(DataType.DOWN_WARN_MSG.getCode(), body);
        OuterPacket out = new OuterPacket(DataType.DOWN_WARN_MSG.getCode(), inferiorPlatformId, body);
        //获取从链路通道
        Channel channel = ChannelMap.getClientChannel(inferiorPlatformId);
        if (null != channel && channel.isActive()) {
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/util/jtt809/decoder/Jtt809Decoder.java
@@ -60,7 +60,6 @@
        int id = byteBuf.readUnsignedShort();
        // 下级平台接入码
        int gnsscenterId = byteBuf.readInt();
        ctx.channel().attr(Jtt809Constant.NettyAttribute.GNSS_CENTER_ID).setIfAbsent(String.valueOf(gnsscenterId));
        // 协议版本号标识
        String version = "v" + byteBuf.readByte() + "." + byteBuf.readByte() + "." + byteBuf.readByte();
        // 报文加密标识位
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/util/jtt809/encoder/Jtt809Encoder.java
@@ -22,12 +22,7 @@
        if (packet == null) {
            return;
        }
        int gnsscenterId;
        if (ctx.channel().hasAttr(Jtt809Constant.NettyAttribute.GNSS_CENTER_ID)) {
            gnsscenterId = Integer.parseInt(ctx.channel().attr(Jtt809Constant.NettyAttribute.GNSS_CENTER_ID).get());
        } else {
            gnsscenterId = packet.getGnsscenterId();
        }
        int gnsscenterId = packet.getGnsscenterId();
        byte[] body = packet.getBody();
        if (body == null) {
            body = new byte[0];