无关风月
2026-02-27 3d78afd7fe508901639b25c48d85b838081d7f27
Merge remote-tracking branch 'origin/master'

# Conflicts:
# xp-robotaxi-api/src/main/java/com/xiaopeng/api/factory/vehicleConvoy/XpVehicleClientFallbackFactory.java
4个文件已修改
31 ■■■■■ 已修改文件
xp-robotaxi-api/src/main/java/com/xiaopeng/api/factory/vehicleConvoy/XpVehicleClientFallbackFactory.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-api/src/main/java/com/xiaopeng/api/vo/automaticPilot/proto/up/RtMsgHeader.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-itinerary-boot/src/main/java/com/xiaopeng/itinerary/service/impl/XpPricingServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpBannerServiceImpl.java 4 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-api/src/main/java/com/xiaopeng/api/factory/vehicleConvoy/XpVehicleClientFallbackFactory.java
@@ -49,7 +49,7 @@
            @Override
            public R<String> updateVehicleById(XpVehicle xpVehicle) {
                return R.fail("修改车辆信息失败:"+cause.getMessage());
                return R.fail("修改车辆信息失败:" + cause.getMessage());
            }
            @Override
@@ -90,7 +90,8 @@
            @Override
            public R<Long> findFleetIdByVehicleId(Long vehicleId) {
                return null;
                log.error("查询车辆所属车队id失败,原因: {}", cause.getMessage());
                return R.fail("查询车辆所属车队id失败");
            }
        };
    }
xp-robotaxi-api/src/main/java/com/xiaopeng/api/vo/automaticPilot/proto/up/RtMsgHeader.java
@@ -3,7 +3,7 @@
import com.xiaopeng.api.vo.automaticPilot.proto.down.RTCmdType;
import com.xiaopeng.api.vo.automaticPilot.proto.down.SourceType;
import lombok.Data;
import com.xiaopeng.api.vo.automaticPilot.protobuf.RTCmdType;import lombok.Data;
/**
 * 消息头
xp-robotaxi-itinerary-boot/src/main/java/com/xiaopeng/itinerary/service/impl/XpPricingServiceImpl.java
@@ -681,7 +681,11 @@
        ThreadPoolExecutor poolExecutor = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<>(10000));
        poolExecutor.execute(()->{
            XpOrder xpOrder = xpOrderClient.queryOrderById(orderId).getData();
            if(xpOrder.getStatus() == 0){
                return;
            }
            Long appUserId = xpOrder.getAppUserId();
            xpOrder.setAppUserId(null);
            xpOrder.setStatus(2);
            xpOrder.setVehicleId(1L);
            xpOrder.setFleetId(2L);
@@ -693,8 +697,12 @@
                throw new RuntimeException(e);
            }
            //修改状态为接驾中
            xpOrder.setStatus(3);
            xpOrder = xpOrderClient.queryOrderById(orderId).getData();
            if(xpOrder.getStatus() == 0){
                return;
            }
            xpOrder.setAppUserId(null);
            xpOrder.setStatus(3);
            xpOrderClient.updateOrder(xpOrder);
            //发送订单状态
            SendMessageDTO dto = new SendMessageDTO();
@@ -749,6 +757,11 @@
                throw new RuntimeException(e);
            }
            //司机到达起点
            xpOrder = xpOrderClient.queryOrderById(orderId).getData();
            if(xpOrder.getStatus() == 0){
                return;
            }
            xpOrder.setAppUserId(null);
            xpOrder.setStatus(4);
            xpOrderClient.updateOrder(xpOrder);
            dto.setMessage("{\"type\":\"ORDER_STATUS\",\"content\":\"{\\\"orderId\\\":\\\"" + orderId + "\\\",\\\"status\\\":4}\",\"timestamp\":\"176569945845456\"}");
@@ -764,6 +777,11 @@
            }
            //乘客上车
            xpOrder = xpOrderClient.queryOrderById(orderId).getData();
            if(xpOrder.getStatus() == 0){
                return;
            }
            xpOrder.setAppUserId(null);
            xpOrder.setStatus(5);
            xpOrder.setBoardingTime(LocalDateTime.now());
            xpOrder.setBoardingLat(xpOrder.getStartLat());
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpBannerServiceImpl.java
@@ -33,9 +33,7 @@
        LambdaQueryWrapper<XpBanner> wrapper = new LambdaQueryWrapper<>();
        wrapper.eq(XpBanner::getBannerStatus,1);
        // 当前时间在开始和结束时间范围内
        wrapper.ge(XpBanner::getStartTime,System.currentTimeMillis());
        wrapper.le(XpBanner::getEndTime,System.currentTimeMillis());
        List<XpBanner> list = list(wrapper);
        List<XpBanner> list = list(wrapper.last(" and now() between start_time and end_time"));
        // 组装数据
        if (list != null && !list.isEmpty()) {