From 458820b471f8e6eb2a338f5f1d0b06c591648936 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期四, 12 二月 2026 21:59:09 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/Robotaxi
---
xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java | 32 +++++++++++++++++++++++++++++---
1 files changed, 29 insertions(+), 3 deletions(-)
diff --git a/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java b/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java
index 26bd344..a0df10d 100644
--- a/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java
+++ b/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java
@@ -2,7 +2,7 @@
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONObject;
+import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -12,6 +12,7 @@
import com.xiaopeng.api.dto.order.GetOrderNumDto;
import com.xiaopeng.api.dto.order.HistoryEndPointsDto;
import com.xiaopeng.api.dto.order.HistoryStartPointsDto;
+import com.xiaopeng.api.dto.pushMessage.SendMessageDTO;
import com.xiaopeng.api.dto.statistics.DailyCountDTO;
import com.xiaopeng.api.dto.statistics.OrderStatisticsDTO;
import com.xiaopeng.api.dto.statistics.StatisticsQueryDTO;
@@ -19,6 +20,7 @@
import com.xiaopeng.api.feignClient.account.XpAppUserClient;
import com.xiaopeng.api.feignClient.account.XpAppUserCouponClient;
import com.xiaopeng.api.feignClient.operation.XpSystemSettingClient;
+import com.xiaopeng.api.feignClient.pushMessage.XpPushMessageClient;
import com.xiaopeng.api.feignClient.vehicleConvoy.UserVehicleClient;
import com.xiaopeng.api.feignClient.vehicleConvoy.XpFleetClient;
import com.xiaopeng.api.feignClient.vehicleConvoy.XpFleetVehicleClient;
@@ -26,6 +28,7 @@
import com.xiaopeng.api.feignClient.operation.XpPointClient;
import com.xiaopeng.api.feignClient.operation.XpPricingClient;
import com.xiaopeng.api.model.account.XpAppUser;
+import com.xiaopeng.api.model.operation.XpPoint;
import com.xiaopeng.api.model.operation.XpPricing;
import com.xiaopeng.api.model.vehicleConvoy.XpFleet;
import com.xiaopeng.api.model.vehicleConvoy.XpVehicle;
@@ -38,6 +41,8 @@
import com.xiaopeng.api.vo.vehicleConvoy.CancelTaxiPassengerVo;
import com.xiaopeng.common.core.constant.CacheConstants;
import com.xiaopeng.common.core.domain.R;
+import com.xiaopeng.common.core.enums.OrderStatusEnum;
+import com.xiaopeng.common.core.enums.PushMessageTypeEnum;
import com.xiaopeng.common.core.exception.ServiceException;
import com.xiaopeng.common.core.utils.DateUtils;
import com.xiaopeng.common.core.utils.GeodesyUtil;
@@ -115,6 +120,7 @@
private final XpPricingClient xpPricingClient;
private final XpSystemSettingClient xpSystemSettingClient;
private final OrderTrajectoryService orderTrajectoryService;
+ private final XpPushMessageClient xpPushMessageClient;
@Autowired
private MongoTemplate mongoTemplate;
@@ -752,6 +758,23 @@
xpOrderCancel.setCancelSource(4);
xpOrderCancel.setCancelReason("系统取消订单");
xpOrderCancelService.save(xpOrderCancel);
+
+
+ // 推送消息
+ // 消息推送
+ Map<String, Object> params = new HashMap<>();
+ Map<String, Object> content = new HashMap<>();
+ content.put("orderId",order.getId());
+ content.put("status", OrderStatusEnum.CANCELED.getCode());
+ params.put("type", PushMessageTypeEnum.ORDER_STATUS.getDesc());
+ params.put("content", com.alibaba.fastjson2.JSONObject.toJSONString(content));
+ params.put("timestamp", new Date().getTime()+"");
+ String message = JSONObject.toJSONString(params);
+ SendMessageDTO sendMessageDTO = new SendMessageDTO();
+ sendMessageDTO.setMessage(message);
+ sendMessageDTO.setAppUserId(String.valueOf(order.getAppUserId()));
+ xpPushMessageClient.sendStatus(sendMessageDTO);
+ log.info("订单取消消息推送完毕");
}
/**
@@ -801,7 +824,10 @@
xpOrder.setStatus(status);
switch (status) {
case 4:
- // 添加取消订单定时任务job
+ // 查询起点点位
+ Long startPointId = xpOrder.getStartPointId();
+ XpPoint xpPoint = xpPointClient.queryById(startPointId).getData();
+ // 添加取消订单定时任务job 时间为点位限停时长
Map<String, ? extends Object> cancelJobMaps =
new ImmutableMap.Builder<String, Long>().
put("id", xpOrder.getId())
@@ -810,7 +836,7 @@
OrderCancelJob.class,
(OrderCancelJob.name + xpOrder.getId()).toUpperCase(),
TimeJobType.ORDER_CANCEL,
- DateUtils.localDateTimeToDate(LocalDateTime.now().plusMinutes(5)),
+ DateUtils.localDateTimeToDate(LocalDateTime.now().plusMinutes(xpPoint.getParkingTimeLimit())),
cancelJobMaps
);
// 车辆到达上车点时间
--
Gitblit v1.7.1