上饶警务-警车数据读取服务(udp)
linwe
2025-07-04 d44c972e675317f3a7973e5604ddd4e81c86bb36
src/main/java/org/springblade/modules/netty/handle/UdpServerHandler.java
@@ -7,8 +7,8 @@
import io.netty.util.CharsetUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springblade.modules.netty.business.entity.PoliceCarEquipment;
import org.springblade.modules.netty.business.service.PoliceCarEquipmentService;
import org.springblade.modules.netty.business.entity.TalkBackEquipment;
import org.springblade.modules.netty.business.service.TalkBackEquipmentService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
@@ -32,12 +32,12 @@
   private static UdpServerHandler udpServerHandler;
   @Autowired
   private PoliceCarEquipmentService policeCarEquipmentService;
   private TalkBackEquipmentService talkBackEquipmentService;
   @PostConstruct
   public void init() {
      udpServerHandler = this;
      udpServerHandler.policeCarEquipmentService = this.policeCarEquipmentService;
      udpServerHandler.talkBackEquipmentService = this.talkBackEquipmentService;
   }
   @Override
@@ -50,7 +50,7 @@
      // 字节转16进制字符串
      String s = bytesToHexString(req);
      //获取字符串的长度
//      int length = s.length();
      int length = s.length();
//      System.out.println("数据长度>>>>>> = " + length);
      //数据解析
      dataHandler(s);
@@ -63,7 +63,7 @@
   private void dataHandler(String s) {
//      s = "AAAACCCC220000000033373933343732393100000000000000000000000052D50451F77D5D406C04E275FD723C400000015F0000000507E70306103B0A";
      //创建设备对象
      PoliceCarEquipment backEquipment = new PoliceCarEquipment();
      TalkBackEquipment backEquipment = new TalkBackEquipment();
      if (s.substring(4,8).equals("CCCC")) {
         backEquipment.setStatus(1);
      }
@@ -114,7 +114,7 @@
      }
      backEquipment.setUpdateTime(new Date());
      // 新增
      udpServerHandler.policeCarEquipmentService.save(backEquipment);
      udpServerHandler.talkBackEquipmentService.save(backEquipment);
   }
   /**
@@ -134,6 +134,7 @@
      return sb.toString();
   }
   /**
    * 捕获异常
    * @param ctx