无关风月
2026-02-13 3bcf097a22472426179941578d42a06efad22f11
Merge remote-tracking branch 'origin/master'
1个文件已添加
11个文件已修改
85 ■■■■■ 已修改文件
xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/XpAppUserCouponController.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-api/src/main/java/com/xiaopeng/api/feignClient/order/XpOrderClient.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-api/src/main/java/com/xiaopeng/api/feignClient/vehicleConvoy/XpVehicleClient.java 4 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-api/src/main/java/com/xiaopeng/api/model/order/XpOrderCancel.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-api/src/main/java/com/xiaopeng/api/vo/automaticPilot/VehiclePosition.java 1 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-automaticPilot-boot/src/main/java/com/xiaopeng/automaticPilot/controller/OrderMissionController.java 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/utils/TaskOrderUtil.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/controller/XpOrderController.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/model/query/XpHistoryOrderListQuery.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java 1 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-order-boot/src/main/resources/mapper/order/XpOrderMapper.xml 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-vehicleConvoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/controller/XpVehicleController.java 4 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/XpAppUserCouponController.java
@@ -84,7 +84,7 @@
    /**
     * 获取优惠券列表
     */
    @PostMapping("/api/v1/coupon/list")
    @PostMapping("/api/v1/mini-program/coupon/list")
    @ApiOperation(value = "获取用户获取优惠券列表", tags = {"小程序-获取用户获取优惠券列表"})
    @XpClientCheck(checkToken = false, checkOtpToken = true)
    public R<XpAppUserCouponVo> list(@RequestBody XpUserCouponListQuery query, HttpServletRequest request) {
@@ -97,7 +97,7 @@
    /**
     * 领取优惠券
     */
    @PostMapping("/api/v1/coupon/receive")
    @PostMapping("/api/v1/mini-program/coupon/receive")
    @ApiOperation(value = "领取优惠券", tags = {"小程序-领取优惠券"})
    @XpClientCheck(checkToken = false, checkOtpToken = true)
    public R<String> receive(@RequestBody ReceiveCouponDto dto, HttpServletRequest request) {
@@ -115,7 +115,7 @@
    /**
     * 获取优惠券详情
     */
    @GetMapping("/api/v1/coupon/detail/{couponId}")
    @GetMapping("/api/v1/mini-program/coupon/detail/{couponId}")
    @ApiOperation(value = "获取用户获取优惠券详情", tags = {"小程序-获取用户获取优惠券详情"})
    @XpClientCheck(checkToken = false, checkOtpToken = true)
    public R<XpAppUserCouponListVo> detail(@PathVariable("couponId") Long couponId, HttpServletRequest request) {
@@ -143,7 +143,7 @@
    /**
     * 获取优惠券列表total
     */
    @GetMapping("/api/v1/coupon/total")
    @GetMapping("/api/v1/mini-program/coupon/total")
    @ApiOperation(value = "获取用户获取优惠券数量", tags = {"小程序-获取用户获取优惠券数量"})
    @XpClientCheck(checkToken = false, checkOtpToken = true)
    public R<XpAppUserCouponTotalVo> total(HttpServletRequest request) {
xp-robotaxi-api/src/main/java/com/xiaopeng/api/feignClient/order/XpOrderClient.java
@@ -61,7 +61,7 @@
     * @param orderId 订单id
     */
    @PostMapping("/inner/order/cancelOrder")
    R<?> cancelOrder(String orderId);
    R<?> cancelOrder(@RequestParam("orderId") String orderId);
    /**
xp-robotaxi-api/src/main/java/com/xiaopeng/api/feignClient/vehicleConvoy/XpVehicleClient.java
@@ -40,7 +40,7 @@
     * @return 车辆
     */
    @GetMapping("/inner/vehicle/queryById")
    R<XpVehicle> queryById(Long id);
    R<XpVehicle> queryById(@RequestParam Long id);
    /**
     * 修改车辆信息
     *
@@ -80,5 +80,5 @@
     * @return
     */
    @GetMapping("/inner/vehicle/findByVehicleVin")
    R<XpVehicle> findByVehicleVin(String vehicleVin);
    R<XpVehicle> findByVehicleVin(@RequestParam("vehicleVin") String vehicleVin);
}
xp-robotaxi-api/src/main/java/com/xiaopeng/api/model/order/XpOrderCancel.java
@@ -31,7 +31,7 @@
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "主键")
    @TableId(value = "id", type = IdType.AUTO)
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "订单id")
xp-robotaxi-api/src/main/java/com/xiaopeng/api/vo/automaticPilot/VehiclePosition.java
@@ -24,7 +24,6 @@
    /**
     * 车辆VIN
     */
    @Id
    private String vin;
    /**
     * 车辆所属围栏id
xp-robotaxi-automaticPilot-boot/src/main/java/com/xiaopeng/automaticPilot/controller/OrderMissionController.java
New file
@@ -0,0 +1,47 @@
package com.xiaopeng.automaticPilot.controller;
import com.xiaopeng.api.vo.automaticPilot.proto.down.ResponseMessage;
import com.xiaopeng.api.vo.automaticPilot.proto.down.StatusCode;
import com.xiaopeng.api.vo.automaticPilot.proto.down.cloudCreateOrder.RTTask;
import com.xiaopeng.api.vo.automaticPilot.proto.down.cloudCreateOrder.TaskStatus;
import com.xiaopeng.api.vo.automaticPilot.proto.down.cloudCreateOrder.TaskType;
import com.xiaopeng.automaticPilot.util.XPUUtil;
import com.xiaopeng.common.core.domain.R;
import io.swagger.annotations.Api;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@Slf4j
@RestController
@RequestMapping("")
@Api(tags = "订单任务Api")
public class OrderMissionController {
    private final XPUUtil xpuUtil;
    public OrderMissionController(XPUUtil xpuUtil) {
        this.xpuUtil = xpuUtil;
    }
    @PostMapping("/inner/pushOrder")
    public R<Boolean> pushOrder(@RequestParam Long orderId) {
        RTTask task = new RTTask();
        task.setOrder_id(orderId.toString());
        // TODO id处理 已经数据是否存储
        task.setTask_id(System.currentTimeMillis()+ "");
        task.setTask_type(TaskType.ROBOTAXI);
        task.setStatus(TaskStatus.PENDING);
        ResponseMessage responseMessage = xpuUtil.cloudCreateOrder(task);
        if (responseMessage.getCode()== StatusCode.OK) {
            return R.ok(true);
        }
        return R.ok(false);
    }
}
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/utils/TaskOrderUtil.java
@@ -100,10 +100,11 @@
            String firstElement = redisService.getFirstElement(name);
            if (firstElement != null) {
                String[] split = firstElement.toString().split("_");
                // 如果市未处理 创建新任务
                // 如果未处理 创建新任务
                if (split[2].equals("0")) {
                    String value = split[0] + "_" + split[1] + "_1" + "_"+split[3] + "_"+ split[4] + "_"+ split[5] + "_"+ split[6] + "_"+ split[7];
                    // 状态改为处理中
//                    redisService.updateFirst(name, split[0] + "_" + split[1] + "_1"+split[3]+split[4]+split[5]+split[6]);
                    redisService.updateFirst(name, value);
                    threadPoolTaskExecutor.submit(() -> {
                        orderProcess(name, firstElement.toString());
                    });
@@ -611,8 +612,11 @@
//
//                    VehiclePositionVo vehiclePositionVo1 = vehiclePositionVo;
                    RLock lock = redissonClient.getLock("FIND_CAR_" + vehiclePositionVo.getVin());
                    lock.lock(10, TimeUnit.SECONDS);
                    System.err.println("队列:"+quoteName+"  车辆:"+vehiclePositionVo.getVin()+"订单"+orderNo);
                    try {
//                        VehiclePosition vehiclePosition = vehiclePositionService.findByVehicleId(vehiclePositionVo.getVehicle_id());
                        R<XpVehicle> vehiclePositionR = xpVehicleClient.findByVehicleVin(vehiclePositionVo.getVin());
@@ -635,7 +639,7 @@
                        BaseVehicleUserDto baseVehicleUserDto = userVehicleClient.addTaxiPassenger(addTaxiPassengerVo);
                        if (baseVehicleUserDto.getCode() == 200) {
                        if (baseVehicleUserDto!=null && baseVehicleUserDto.getCode() == 200) {
                            // TODO 下单
                            // 绑定成功  弹出这个队列第一个订单
                            redisService.popFirstElement(quoteName);
xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/controller/XpOrderController.java
@@ -138,7 +138,7 @@
     * @return 操作结果
     */
    @PostMapping("/inner/order/cancelOrder")
    public R<?> cancelOrder(String orderId){
    public R<?> cancelOrder(@RequestParam("orderId") String orderId){
        xpOrderService.cancelOrder(orderId);
        return R.ok();
    }
xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/model/query/XpHistoryOrderListQuery.java
@@ -9,6 +9,6 @@
@ApiModel(value = "XpHistoryOrderListQuery", description = "历史订单列表查询参数")
public class XpHistoryOrderListQuery extends BasePage {
    @ApiModelProperty(value = "订单状态 0=已取消,6=待支付,8=已完成")
    @ApiModelProperty(value = "订单状态9=待评价,10=已完成")
    private Integer status;
}
xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java
@@ -762,6 +762,7 @@
        xpOrderCancel.setUserId(1l);
        xpOrderCancel.setCancelSource(4);
        xpOrderCancel.setCancelReason("系统取消订单");
        xpOrderCancel.setCreateTime(LocalDateTime.now());
        xpOrderCancelService.save(xpOrderCancel);
xp-robotaxi-order-boot/src/main/resources/mapper/order/XpOrderMapper.xml
@@ -47,7 +47,7 @@
    <select id="getHistoryOrderList" resultType="com.xiaopeng.order.model.vo.XpOrderHistoryListVO">
        select start_point_name as originAddress, end_point_name as destinationAddress,
        DATE_FORMAT(create_time, '%H:%i') AS orderTime, pay_money as amount,create_time as time,
        id as orderId from xp_order where app_user_id = #{uid}
        id as orderId from xp_order where app_user_id = #{uid} and is_deleted = 0 and status in (9,10)
        <if test="query.status != null">
            and status = #{query.status}
        </if>
xp-robotaxi-vehicleConvoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/controller/XpVehicleController.java
@@ -90,7 +90,7 @@
     * @return 车辆列表
     */
    @GetMapping("/inner/vehicle/queryById")
    public R<XpVehicle> queryById(Long id) {
    public R<XpVehicle> queryById(@RequestParam Long id) {
        return R.ok(xpVehicleService.getById(id));
    }
    /**
@@ -402,7 +402,7 @@
     * @return
     */
    @GetMapping("/inner/vehicle/findByVehicleVin")
    public R<XpVehicle> findByVehicleVin(String vehicleVin){
    public R<XpVehicle> findByVehicleVin(@RequestParam("vehicleVin") String vehicleVin){
        XpVehicle xpVehicle = xpVehicleService.getOne(new LambdaQueryWrapper<XpVehicle>().eq(XpVehicle::getVehicleVin, vehicleVin));
        return R.ok(xpVehicle);
    }