liujie
2026-02-13 b265352da07f7dea27ee30d43b841915e80ea863
feat(order): 新增订单任务控制器并调整优惠券接口路径

- 新增OrderMissionController用于处理订单推送功能
- 实现pushOrder接口将订单推送到云端任务系统
- 将优惠券相关接口路径统一调整为mini-program前缀
- 更新获取优惠券列表接口路径
- 更新领取优惠券接口路径
- 更新获取优惠券详情接口路径
- 更新获取优惠券总数接口路径
1个文件已添加
1个文件已修改
55 ■■■■■ 已修改文件
xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/controller/XpAppUserCouponController.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-automaticPilot-boot/src/main/java/com/xiaopeng/automaticPilot/controller/OrderMissionController.java 47 ●●●●● 补丁 | 查看 | 原始文档 | 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-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);
    }
}