From eb0fa100af9347ba2a93188170d023fe5cf396eb Mon Sep 17 00:00:00 2001
From: “mitao” <“2763622819@qq.com”>
Date: 星期二, 13 一月 2026 19:13:21 +0800
Subject: [PATCH] feat(user):扫码下单创建订单接口
---
UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/controller/OrderCrossCityController.java | 49 ++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 42 insertions(+), 7 deletions(-)
diff --git a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/controller/OrderCrossCityController.java b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/controller/OrderCrossCityController.java
index e9a680b..2ff34dc 100644
--- a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/controller/OrderCrossCityController.java
+++ b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/controller/OrderCrossCityController.java
@@ -2,6 +2,7 @@
import com.stylefeng.guns.modular.crossCity.server.IOrderCrossCityService;
+import com.stylefeng.guns.modular.crossCity.warpper.OrderCrossCityScanWarpper;
import com.stylefeng.guns.modular.crossCity.warpper.OrderCrossCityWarpper;
import com.stylefeng.guns.modular.crossCity.warpper.ScanOrderDetailWarpper;
import com.stylefeng.guns.modular.system.service.IUserInfoService;
@@ -155,24 +156,58 @@
/**
* 【202601】获取扫码下单详情
* @param lineShiftDriverId 司机排班记录ID
- * @param otherFee 其他费用
* @return 扫码下单详情
*/
@ResponseBody
@RequestMapping(value = "/api/orderCrossCity/queryScanOrderDetail", method = RequestMethod.POST)
@ApiOperation(value = "【202601】获取扫码下单详情", tags = {"用户端-跨城"}, notes = "根据扫码内容获取下单页面详情数据,包含司机信息、线路信息、站点信息等")
- @ApiImplicitParams({
- @ApiImplicitParam(value = "司机排班记录ID", name = "lineShiftDriverId", required = true, dataType = "int"),
- @ApiImplicitParam(value = "其他费用", name = "otherFee", required = false, dataType = "double")
- })
- public ResultUtil<ScanOrderDetailWarpper> queryScanOrderDetail(Integer lineShiftDriverId, Double otherFee) {
+ @ApiImplicitParam(value = "司机排班记录ID", name = "lineShiftDriverId", required = true, dataType = "int")
+ public ResultUtil<ScanOrderDetailWarpper> queryScanOrderDetail(Integer lineShiftDriverId, HttpServletRequest request) {
try {
- return orderCrossCityService.queryScanOrderDetail(lineShiftDriverId, otherFee);
+ Integer uid = userInfoService.getUserIdFormRedis(request);
+ if(null == uid){
+ return ResultUtil.tokenErr();
+ }
+ return orderCrossCityService.queryScanOrderDetail(lineShiftDriverId);
} catch (Exception e) {
e.printStackTrace();
return ResultUtil.runErr();
}
}
+ /**
+ * 【202601】跨城出行扫码下单操作
+ * <p>用户扫描司机二维码后进行下单,系统自动分配座位号</p>
+ * <p>与普通下单的区别:仅支持拼车模式,座位自动分配,支持其他费用</p>
+ *
+ * @param orderCrossCityScanWarpper 扫码下单参数
+ * @param request HTTP请求
+ * @return 订单ID
+ */
+ @ResponseBody
+ @RequestMapping(value = "/api/orderCrossCity/orderCrossCityScan", method = RequestMethod.POST)
+ @ApiOperation(value = "【202601】跨城出行扫码下单操作", tags = {"用户端-跨城"}, notes = "用户扫描司机二维码下单,系统自动分配座位,仅支持拼车模式。返回订单ID后进行支付")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
+ })
+ public ResultUtil<BaseWarpper> orderCrossCityScan(OrderCrossCityScanWarpper orderCrossCityScanWarpper, HttpServletRequest request){
+ try {
+ // XSS过滤地址信息
+ String startAddress = orderCrossCityScanWarpper.getStartAddress();
+ orderCrossCityScanWarpper.setStartAddress(cleanXSS(startAddress));
+ orderCrossCityScanWarpper.setEndAddress(cleanXSS(orderCrossCityScanWarpper.getEndAddress()));
+ // 获取用户ID
+ Integer uid = userInfoService.getUserIdFormRedis(request);
+ if(null == uid){
+ return ResultUtil.tokenErr();
+ }
+ return orderCrossCityService.orderCrossCityScan(orderCrossCityScanWarpper, uid);
+ } catch (SystemException se){
+ return ResultUtil.error(se.getMessage());
+ } catch (Exception e){
+ e.printStackTrace();
+ return ResultUtil.runErr();
+ }
+ }
}
--
Gitblit v1.7.1