liujie
2025-08-07 8ea377e0c6977ff0d97c4f2aa7986741600e4393
福临数据推送问题排查
5个文件已修改
51 ■■■■ 已修改文件
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/WarnMapper.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/util/GDMapGeocodingUtil.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/model/UPWarnMsgAdptInfo.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/netty/server/NettyHandle.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/WarnMsgService.java 31 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/WarnMapper.java
@@ -15,8 +15,9 @@
 * @Date 2025/3/27 14:34
 */
public interface WarnMapper extends BaseMapper<Warn> {
    /**
     * 获取车联预警列表
     *
@@ -25,7 +26,6 @@
     * @return
     */
    PageInfo<CarWarnListResp> getCarWarnList(PageInfo<CarWarnListResp> pageInfo, @Param("item") CarWarnListReq carWarnListReq);
    /**
     * 获取所有报警数据
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/util/GDMapGeocodingUtil.java
@@ -100,6 +100,8 @@
     * @throws Exception
     */
    public static Map<String, String> geocode(String lon, String lan) throws Exception {
        System.out.println(lon+"_"+lan+"!!!!!!!!!!!!!!!!");
        String url = "https://restapi.amap.com/v3/geocode/regeo?key=" + key + "&location=" + lon + "," + lan;
        String forObject = HttpUtils.sendGet(url);
        JSONObject jsonObject = JSON.parseObject(forObject);
@@ -116,6 +118,7 @@
            String province = addressComponent.getString("province");
            String city = addressComponent.getString("city");
            String district = addressComponent.getString("district");
            System.out.println(code+"#######################");
            map.put("province", province);
            map.put("provinceCode", code.substring(0, 2) + "0000");
            map.put("city", city);
@@ -125,4 +128,10 @@
        }
        return map;
    }
    public static void main(String[] args) throws Exception {
        Map<String, String> geocode = geocode("140.0136050", "19.51689069");
    }
}
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/model/UPWarnMsgAdptInfo.java
@@ -6,6 +6,7 @@
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.springframework.data.elasticsearch.annotations.Document;
import org.springframework.data.elasticsearch.annotations.Field;
import org.springframework.data.elasticsearch.annotations.FieldType;
@@ -16,6 +17,7 @@
 * @author zhibing.pu
 * @Date 2025/3/3 14:50
 */
@Slf4j
@Data
@Document(indexName = "up_warn_msg_adpt_info")
public class UPWarnMsgAdptInfo extends BaseModel {
@@ -217,8 +219,10 @@
            byte[] readableBytes = new byte[8];
            byteBuf.readBytes(readableBytes);
            String time = ByteArrayUtil.bytes2HexStr(readableBytes);
            log.info("报警时间1: {}", time);
            //报警时间
            this.warnTime = Long.parseLong(time, 16);
            log.info("报警时间2: {}", this.warnTime);
            //团标扩展
            //信息ID
            this.infoId = Jtt809Util.readGBKString(byteBuf,32);
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/netty/server/NettyHandle.java
@@ -107,6 +107,7 @@
     */
    public void serviceRouting(DataType dataType, ChannelHandlerContext ctx, OuterPacket out) {
        log.debug("主链路信息交换响应({}):{}", dataType.getCode(), out);
        log.info("主链路信息交换响应({}):{}", dataType.getCode(), out);
        switch (dataType) {
            case UP_CONNECT_REQ:
                log.debug("主链路登录请求({}):{}", DataType.UP_CONNECT_REQ.getCode(), out);
ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/WarnMsgService.java
@@ -87,7 +87,7 @@
                up_warn_msg_urge_todo_ack(ctx, out.getGnsscenterId(), warnMsg);
                break;
            case UP_WARN_MSG_ADPT_INFO:
                log.debug("上报报警信息({}):{}", DataType.UP_WARN_MSG_ADPT_INFO.getCode(), out);
                log.info("上报报警信息({}):{}", DataType.UP_WARN_MSG_ADPT_INFO.getCode(), out);
                up_warn_msg_adpt_info(ctx, out.getGnsscenterId(), warnMsg);
                break;
            case UP_WARN_MSG_OPERATION_INFO:
@@ -155,38 +155,54 @@
     * @param warnMsg
     */
    public void up_warn_msg_adpt_info(ChannelHandlerContext ctx, int inferiorPlatformId, WarnMsg warnMsg) {
        log.info("上报报警信息cz0({}):{}",inferiorPlatformId,warnMsg);
        UPWarnMsgAdptInfo upWarnMsgAdptInfo = enterprise.contains(inferiorPlatformId) ? new UPWarnMsgAdptInfo().decode2(warnMsg) : new UPWarnMsgAdptInfo().decode1(warnMsg);
        upWarnMsgAdptInfo.setResult(0x00);
        upWarnMsgAdptInfo.setInferiorPlatformId(inferiorPlatformId);
        upWarnMsgAdptInfo.setCreateTime(LocalDateTime.now().toEpochSecond(ZoneOffset.ofHours(8)));
        log.warn("上报报警信息({}):{}", DataType.UP_WARN_MSG_ADPT_INFO.getCode(), JSON.toJSONString(upWarnMsgAdptInfo));
        log.info("上报报警信息cz1({}):{}", DataType.UP_WARN_MSG_ADPT_INFO.getCode(), JSON.toJSONString(upWarnMsgAdptInfo));
        switch (inferiorPlatformId) {
            case 17458936:
                if(!fl_warnType.contains(upWarnMsgAdptInfo.getWarnType())){
                    return;
                }
                break;
            case 43984060:
                if(!jh_warnType.contains(upWarnMsgAdptInfo.getWarnType())){
                    return;
                }
                break;
            case 17235341:
                log.info("上报报警信息cz88888({}):{}:{}", DataType.UP_WARN_MSG_ADPT_INFO.getCode(), JSON.toJSONString(upWarnMsgAdptInfo),upWarnMsgAdptInfo.getWarnType());
                if(!cz_warnType.contains(upWarnMsgAdptInfo.getWarnType())){
                    log.info("上报报警信息czcontains({}):{}:{}", DataType.UP_WARN_MSG_ADPT_INFO.getCode(), JSON.toJSONString(upWarnMsgAdptInfo),upWarnMsgAdptInfo.getWarnType());
                    return;
                }
                break;
            case 82296583:
                log.info("上报报警信息cz88888({}):{}:{}", DataType.UP_WARN_MSG_ADPT_INFO.getCode(), JSON.toJSONString(upWarnMsgAdptInfo),upWarnMsgAdptInfo.getWarnType());
                if(!cz_warnType.contains(upWarnMsgAdptInfo.getWarnType())){
                    log.info("上报报警信息czcontains({}):{}:{}", DataType.UP_WARN_MSG_ADPT_INFO.getCode(), JSON.toJSONString(upWarnMsgAdptInfo),upWarnMsgAdptInfo.getWarnType());
                    return;
                }
                break;
            case 25439966:
                if(!gj_warnType.contains(upWarnMsgAdptInfo.getWarnType())){
                    return;
                }
                break;
            case 13914394:
                if(!pa_warnType.contains(upWarnMsgAdptInfo.getWarnType())){
                    return;
                }
                break;
        }
        log.info("上报报警信息555555({}):{}:{}", DataType.UP_WARN_MSG_ADPT_INFO.getCode(), JSON.toJSONString(upWarnMsgAdptInfo),upWarnMsgAdptInfo.getWarnType());
        try {
        if(0 == upWarnMsgAdptInfo.getLongitude()){
            log.info("上报报警信息6666666({}):{}:{}", DataType.UP_WARN_MSG_ADPT_INFO.getCode(), JSON.toJSONString(upWarnMsgAdptInfo),upWarnMsgAdptInfo.getWarnType());
            UPExgMsgRealLocation upExgMsgRealLocation = upExgMsgRealLocationDao.findByVehicleNoOrderByCreateTimeDesc(upWarnMsgAdptInfo.getVehicleNo());
            if (null != upExgMsgRealLocation) {
                GnssData gnssData = upExgMsgRealLocation.getGnssData();
@@ -195,8 +211,15 @@
                upWarnMsgAdptInfo.setLatitude(gnssData.getLat());
            }
        }
        upWarnMsgAdptInfoDao.save(upWarnMsgAdptInfo);
        log.info("上报报警信息({}):{}", DataType.UP_WARN_MSG_ADPT_INFO.getCode(), JSON.toJSONString(upWarnMsgAdptInfo));
        log.info("上报报警信息333333");
            upWarnMsgAdptInfoDao.save(upWarnMsgAdptInfo);
        }catch (Exception e){
            e.printStackTrace();
            log.info("上报报警信息保存失败{}",e.getMessage());
        }
        log.info("上报报警信息2({}):{}", DataType.UP_WARN_MSG_ADPT_INFO.getCode(), JSON.toJSONString(upWarnMsgAdptInfo));
        
        //请求报警附件(川标协议)
        if(enterprise.contains(inferiorPlatformId)){