From 0da19d473d89bb812610501809481fdf6c2c4756 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期二, 24 三月 2026 20:53:13 +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/controller/XpTestOrderController.java |  314 +++++++++------------------------------------------
 1 files changed, 57 insertions(+), 257 deletions(-)

diff --git a/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/controller/XpTestOrderController.java b/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/controller/XpTestOrderController.java
index 6262700..00d28e5 100644
--- a/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/controller/XpTestOrderController.java
+++ b/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/controller/XpTestOrderController.java
@@ -12,7 +12,7 @@
 import com.xiaopeng.api.dto.statistics.OrderStatisticsDTO;
 import com.xiaopeng.api.dto.statistics.StatisticsQueryDTO;
 import com.xiaopeng.api.feignClient.vehicleConvoy.XpVehicleClient;
-import com.xiaopeng.api.model.order.XpOrder;
+import com.xiaopeng.api.model.order.XpTestOrder;
 import com.xiaopeng.api.model.vehicleConvoy.XpVehicle;
 import com.xiaopeng.api.vo.automaticPilot.VehiclePosition;
 import com.xiaopeng.api.vo.operation.RouteVo;
@@ -75,11 +75,52 @@
 public class XpTestOrderController {
 
     private final IXpTestOrderService xpTestOrderService;
-    private final RedisService redisService;
-    @Autowired
-    private MongoTemplate mongoTemplate;
     @Autowired
     private XpVehicleClient xpVehicleClient;
+
+
+    /**
+     * 通过订单id查询订单信息
+     *
+     * @param orderId 订单id
+     * @return 订单详情
+     */
+    @PostMapping("/inner/testOrder/queryOrderById")
+    public R<XpTestOrder> queryOrderById(@RequestParam Long orderId){
+        XpTestOrder xpTestOrder = xpTestOrderService.getById(orderId);
+        return R.ok(xpTestOrder);
+    }
+
+
+
+    /**
+     * 修改订单状态
+     * @param orderId
+     * @param status
+     * @return
+     */
+    @PostMapping("/inner/v1/testOrder/updateOrderStatus")
+    public R<String> updateOrderStatus(@RequestParam Long orderId,
+                                @RequestParam Integer status){
+        xpTestOrderService.updateOrderStatus(orderId, status);
+        return R.ok();
+    }
+
+
+
+    /**
+     * 生成订单
+     * @param query
+     * @return
+     */
+    @ApiOperation(value = "生成订单", tags = {"管理后台-测试计划"})
+    @PostMapping("/api/v1/testOrder/addTestOrder")
+    public R<?> addTestOrder(@RequestBody AddTestOrderVo query){
+        xpTestOrderService.addTestOrder(query);
+        return R.ok();
+    }
+
+
 
 
     /**
@@ -102,7 +143,7 @@
      * @return 订单详情
      */
     @ApiOperation(value = "订单详情", tags = {"管理后台-测试计划"})
-    @GetMapping("/api/v1/order/queryById")
+    @GetMapping("/api/v1/testOrder/queryById")
     public R<XpTestOrderDetailVO> queryById(@ApiParam(value = "订单id", required = true) @RequestParam Long id) {
         XpTestOrderDetailVO detail = xpTestOrderService.getOrderDetail(id);
         return R.ok(detail);
@@ -115,7 +156,7 @@
      * @return 操作结果
      */
     @ApiOperation(value = "删除订单", tags = {"管理后台-测试计划"})
-    @DeleteMapping("/api/v1/order/deleteById")
+    @DeleteMapping("/api/v1/testOrder/deleteById")
     public R<?> deleteById(@ApiParam(value = "订单id", required = true) @RequestParam Long id) {
         xpTestOrderService.deleteOrder(id);
         return R.ok();
@@ -129,7 +170,7 @@
      * @return 操作结果
      */
     @ApiOperation(value = "取消/关闭订单", tags = {"管理后台-测试计划"})
-    @PostMapping("/api/v1/order/cancelAndCloseById")
+    @PostMapping("/api/v1/testOrder/cancelAndCloseById")
     public R<?> cancelAndCloseById(@Validated @RequestBody XpOrderOperateDTO dto) {
         xpTestOrderService.cancelOrCloseOrder(dto.getOrderId(), dto.getType());
         return R.ok();
@@ -141,10 +182,10 @@
      * @param dto 改派请求参数
      * @return 操作结果
      */
-    @ApiOperation(value = "改派订单", tags = {"管理后台-交易管理-订单管理"}, notes = "车辆列表在vehicleConvoy服务")
-    @PostMapping("/api/v1/order/reassignById")
+    @ApiOperation(value = "改派订单", tags = {"管理后台-测试计划"}, notes = "车辆列表在vehicleConvoy服务")
+    @PostMapping("/api/v1/testOrder/reassignById")
     public R<?> reassignById(@Validated @RequestBody XpOrderReassignDTO dto) {
-        xpOrderService.reassignOrder(
+        xpTestOrderService.reassignOrder(
                 dto.getOrderId(),
                 dto.getVehicleId(),
                 dto.getReassignReason()
@@ -153,276 +194,35 @@
     }
 
 
-    @ApiOperation(value = "订单改价", tags = {"管理后台-交易管理-订单管理"})
-    @PostMapping("/api/v1/order/changeAmount")
+    @ApiOperation(value = "订单改价", tags = {"管理后台-测试计划"})
+    @PostMapping("/api/v1/testOrder/changeAmount")
     @ApiImplicitParams({
             @ApiImplicitParam(name = "id", value = "订单ID", required = true, dataType = "Long"),
             @ApiImplicitParam(name = "amount", value = "新的订单金额", required = true, dataType = "BigDecimal")
     })
     public R<?> changeAmount(@RequestParam("id") Long id, @RequestParam("amount") BigDecimal amount) {
-        xpOrderService.changeAmount(id, amount);
+        xpTestOrderService.changeAmount(id, amount);
         return R.ok();
     }
 
-    /**
-     * 获取用户快捷胶囊 历史 时段 终点高点
-     */
-    @ApiOperation(value = "获取用户快捷胶囊 历史 时段 终点高点", tags = {"小程序-获取用户快捷胶囊 历史 时段 终点高点"})
-    @GetMapping("/api/v1/mini-program/order/getUserQuickCapsule")
-    @XpClientCheck(checkToken = false, checkOtpToken = true)
-    public R<XpPointInfoVo> getUserQuickCapsule(HttpServletRequest request) {
-        // uid已通过拦截器otp校验,可以直接使用
-        String uid = request.getHeader("XP-Uid");
-        return R.ok(xpOrderService.getUserQuickCapsule(uid));
-
-    }
-
-    /**
-     * 获取订单详情
-     */
-    @PutMapping("/api/v1/mini-program/order/orderDetail/{orderId}")
-    @ApiOperation(value = "获取订单详情", tags = {"小程序-获取订单详情"})
-    @XpClientCheck(checkToken = false, checkOtpToken = true)
-    public R<OrderDetailVo> orderDetail(@PathVariable("orderId") Long orderId, HttpServletRequest request) {
-        // uid已通过拦截器otp校验,可以直接使用
-        String uid = request.getHeader("XP-Uid");
-        OrderDetailVo orderDetailVo = xpOrderService.orderDetail(orderId, uid);
-        BigDecimal orderMoney = orderDetailVo.getOrderMoney();
-        if(orderMoney==null){
-            orderDetailVo.setOrderMoneyStr("0.00");
-        }else {
-            orderDetailVo.setOrderMoneyStr(orderMoney.setScale(2, RoundingMode.HALF_UP).toString());
-        }
-        return R.ok(orderDetailVo);
-    }
-
-
-    /**
-     * 获取历史下单成功起点10条数据列表
-     */
-    @ApiOperation(value = "获取历史下单成功起点10条数据列表", tags = {"小程序-获取历史下单成功起点10条数据列表"})
-    @GetMapping("/base/v1/mini-program/history/startPoints")
-    @XpClientCheck(checkToken = false, checkOtpToken = true)
-    public R<List<XpHistoryStartPointsVo>> getHistoryStartPoints(double lon, double lat,Long electronicAreaId, HttpServletRequest request) {
-        // uid已通过拦截器otp校验,可以直接使用
-        String uid = request.getHeader("XP-Uid");
-        return R.ok(xpOrderService.getHistoryStartPoints(uid, lon, lat,electronicAreaId));
-    }
-
-    /**
-     * 获取历史下单成功终点点10条数据列表
-     */
-    @ApiOperation(value = "获取历史下单成功终点10条数据列表", tags = {"小程序-获取历史下单成功终点10条数据列表"})
-    @GetMapping("/base/v1/mini-program/history/endPoints")
-    @XpClientCheck(checkToken = false, checkOtpToken = true)
-    public R<List<XpHistoryEndPointsVo>> getHistoryEndPoints(double lon, double lat,Long electronicAreaId, HttpServletRequest request) {
-        // uid已通过拦截器otp校验,可以直接使用
-        String uid = request.getHeader("XP-Uid");
-        return R.ok(xpOrderService.getHistoryEndPoints(uid, lon, lat,electronicAreaId));
-    }
-
-
-    /**
-     * 获取正在进行中的订单
-     */
-    @ApiOperation(value = "获取正在进行中的订单", tags = {"小程序-获取正在进行中的订单"})
-    @GetMapping("/api/v1/mini-program/order/active")
-    @XpClientCheck(checkToken = false, checkOtpToken = true)
-    public R<XpOrderDetailVO> getActiveOrder(HttpServletRequest request) {
-        // uid已通过拦截器otp校验,可以直接使用
-        String uid = request.getHeader("XP-Uid");
-        return R.ok(xpOrderService.getActiveOrder(uid));
-    }
-
-
-    /**
-     * 查询历史订单列表
-     */
-    @ApiOperation(value = "查询历史订单列表", tags = {"小程序-查询历史订单列表"})
-    @PostMapping("/api/v1/mini-program/order/history/list")
-    @XpClientCheck(checkToken = false, checkOtpToken = true)
-    public R<XpOrderHistoryVO> getHistoryOrderList(@RequestBody XpHistoryOrderListQuery query, HttpServletRequest request) {
-        // uid已通过拦截器otp校验,可以直接使用
-        String uid = request.getHeader("XP-Uid");
-        return R.ok(xpOrderService.getHistoryOrderList(query, uid));
-    }
-
-
-    /**
-     * +
-     * 取消订单
-     */
-
-    @PutMapping("/api/v1/mini-program/order/cancel/{orderId}")
-    @ApiOperation(value = "取消订单", tags = {"小程序-取消订单"})
-    @XpClientCheck(checkToken = false, checkOtpToken = true)
-    public R cancelOrder(@PathVariable("orderId") Long orderId, HttpServletRequest request) {
-        // uid已通过拦截器otp校验,可以直接使用
-        String uid = request.getHeader("XP-Uid");
-        xpOrderService.cancelOrder(orderId, uid);
-        return R.ok();
-    }
-
-    /**
-     * +
-     * 手动结束订单
-     */
-
-    @PutMapping("/api/v1/mini-program/order/endTrip/{orderId}")
-    @ApiOperation(value = "结束行程", tags = {"小程序-结束行程"})
-    @XpClientCheck(checkToken = false, checkOtpToken = true)
-    public R<?> endTrip(@PathVariable("orderId") Long orderId, HttpServletRequest request) {
-        // uid已通过拦截器otp校验,可以直接使用
-        String uid = request.getHeader("XP-Uid");
-        try {
-            Boolean b = xpOrderService.endTrip(orderId, uid);
-            return R.ok(b);
-
-        } catch (Exception e) {
-            return R.ok();
-        }
-    }
 
 
 
-    /**
-     * +
-     * 获取行程费用明细
-     */
-    @PutMapping("/api/v1/mini-program/order/fare-breakdown/{orderId}")
-    @ApiOperation(value = "获取行程费用明细", tags = {"小程序-获取行程费用明细"})
-    @XpClientCheck(checkToken = false, checkOtpToken = true)
-    public R<FareBreakdownVo> fareBreakdown(@PathVariable("orderId") Long orderId, HttpServletRequest request) {
-        // uid已通过拦截器otp校验,可以直接使用
-        String uid = request.getHeader("XP-Uid");
-        return xpOrderService.fareBreakdown(orderId, uid);
-    }
 
-    /**
-     * +
-     * 获取行程费用明细
-     */
-    @PutMapping("/api/v1/mini-program/order/feeDescription/{orderId}")
-    @ApiOperation(value = "获取费用说明", tags = {"小程序-获取费用说明"})
-    @XpClientCheck(checkToken = false, checkOtpToken = true)
-    public R<String> feeDescription(@PathVariable("orderId") Long orderId, HttpServletRequest request) {
-        // uid已通过拦截器otp校验,可以直接使用
-        String uid = request.getHeader("XP-Uid");
-        return xpOrderService.feeDescription(orderId, uid);
-    }
-
-    /**
-     * 订单评价
-     */
-    @PostMapping("/api/v1/mini-program/order/payment")
-    @ApiOperation(value = "发起支付", tags = {"小程序-发起支付"})
-    @XpClientCheck(checkToken = false, checkOtpToken = true)
-    public R payment(@Validated @RequestBody XpOrderPayDto dto, HttpServletRequest request) {
-        // uid已通过拦截器otp校验,可以直接使用
-        String uid = request.getHeader("XP-Uid");
-        return xpOrderService.payment(dto, uid);
-    }
-
-    /**
-     * 订单评价
-     */
-    @PostMapping("/api/v1/mini-program/order/comment")
-    @ApiOperation(value = "订单评价", tags = {"小程序-订单评价"})
-    @XpClientCheck(checkToken = false, checkOtpToken = true)
-    public R comment(@Validated @RequestBody XpOrderCommentDto dto, HttpServletRequest request) {
-        // uid已通过拦截器otp校验,可以直接使用
-        String uid = request.getHeader("XP-Uid");
-        xpOrderService.comment(dto, uid);
-        return R.ok();
-    }
-
-    /**
-     * 订单状态修改-车控消息推送我方调用(内部接口)
-     */
-    @ApiOperation(value = "订单状态推送修改")
-    @PostMapping("/inner/v1/order/updateOrderStatus")
-    public R<String> updateOrderStatus(@RequestParam Long orderId,
-                                       @RequestParam Integer status) {
-        return xpOrderService.updateOrderStatus(orderId, status);
-    }
-
-    /**
-     * 业务流程-通过订单id查询车辆信息
-     */
-    @ApiOperation(value = "通过订单id查询车辆信息", tags = {"小程序-业务流程"})
-    @XpClientCheck(checkToken = false, checkOtpToken = true)
-    @GetMapping("/api/v1/mini-program/order/queryVehicleByOrderId")
-    public R<XpVehicle> queryVehicleByOrderId(@RequestParam Long orderId, HttpServletRequest request) {
-        String uid = request.getHeader("XP-Uid");
-        return R.ok(xpOrderService.queryVehicleByOrderId(orderId, uid));
-    }
 
     /**
      * 订单车辆定位实时存储-订单车辆定位实时存储(内部接口)
      */
     @ApiOperation(value = "订单车辆定位实时存储")
-    @PostMapping("/inner/v1/order/saveVehicleLocation")
+    @PostMapping("/inner/v1/testOrder/saveVehicleLocation")
     public R<String> saveVehicleLocation(@RequestBody OrderTrajectoryVo vo) {
         OrderTrajectory orderTrajectory = new OrderTrajectory();
         BeanUtils.copyProperties(vo, orderTrajectory);
-        xpOrderService.saveVehicleLocation(orderTrajectory);
+        xpTestOrderService.saveVehicleLocation(orderTrajectory);
         return R.ok();
     }
 
-    /**
-     * 订单查询实时轨迹路线
-     */
-    @ApiOperation(value = "订单查询实时轨迹路线")
-    @PostMapping("/api/v1/mini-program/order/queryOrderRoute")
-    public R<RouteVo> queryOrderRoute(@Validated @RequestBody QueryOrderRouteDTO dto, HttpServletRequest request) {
-        String uid = request.getHeader("XP-Uid");
-        // 查询订单信息
-        XpOrder xpOrder = xpOrderService.getById(dto.getOrderId());
-        // 获取路线规划
-//        RouteVo routeVo = redisService.getCacheObject(CacheConstants.ORDER_ROUTE_CAPTURE + "_" + dto.getOrderId() + "_" +dto.getRouteType());
 
-        String key = "";
-        //接驾情况,获取车辆位置到起点的导航
-        if (xpOrder.getStatus() < 5) {
-            key = "ORDER_NAVIGATION_START_DATA:" + xpOrder.getAppUserId();
-        }
-        //服务中,获取起点到终点的导航数据
-        if (xpOrder.getStatus() >= 5) {
-            key = "ORDER_NAVIGATION_END_DATA:" + xpOrder.getAppUserId();
-        }
-        Object cacheObject = redisService.getCacheObject(key);
-        RouteVo routeVo = JSON.parseObject(cacheObject.toString(), RouteVo.class);
-        XpVehicle xpVehicle = xpVehicleClient.queryById(xpOrder.getVehicleId()).getData();
-        VehiclePosition vehiclePosition = mongoTemplate.findOne(new Query(Criteria.where("vin").is(xpVehicle.getVehicleVin())), VehiclePosition.class);
-        routeVo.setDirection(null != vehiclePosition ? vehiclePosition.getCourse() : 90);
-        return R.ok(routeVo);
-    }
-    /**
-     * 订单查询轨迹路线
-     */
-    @ApiOperation(value = "订单查询轨迹路线")
-    @GetMapping("/api/v1/mini-program/order/queryOrderTrajectory")
-    public R<RouteVo> queryOrderTrajectory(@RequestParam String orderId, HttpServletRequest request) {
-        String uid = request.getHeader("XP-Uid");
-        List<OrderTrajectory> trajectories = mongoTemplate.find(
-                new Query(Criteria.where("orderId").is(Long.valueOf(orderId)))
-                        .with(Sort.by(Sort.Direction.ASC, "locatetime")),
-                OrderTrajectory.class
-        );
-        // 封装信息
-        RouteVo routeVo = new RouteVo();
-        List<LonLatDto> polyline = new ArrayList<>();
-        if(!CollectionUtils.isEmpty(trajectories)){
-            for (OrderTrajectory trajectory : trajectories) {
-                LonLatDto lonLatDto = new LonLatDto();
-                String[] split = trajectory.getLocation().split(",");
-                lonLatDto.setLongitude(Double.valueOf(split[0]));
-                lonLatDto.setLatitude(Double.valueOf(split[1]));
-                polyline.add(lonLatDto);
-            }
-        }
-        routeVo.setPolyline(polyline);
-        return R.ok(routeVo);
-    }
+
 
 }

--
Gitblit v1.7.1