From b5ee0c2205ed57cbd9d11726186a6131fd3bd802 Mon Sep 17 00:00:00 2001
From: “mitao” <“2763622819@qq.com”>
Date: 星期一, 12 一月 2026 17:41:55 +0800
Subject: [PATCH] feat(user):用户端扫码下单相关

---
 UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java |   63 +++++++++++++++++++++++++++++++
 1 files changed, 63 insertions(+), 0 deletions(-)

diff --git a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
index 35854be..2b8eb80 100644
--- a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
+++ b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
@@ -15,6 +15,7 @@
 import com.stylefeng.guns.modular.crossCity.server.ILineService;
 import com.stylefeng.guns.modular.crossCity.server.IOrderCrossCityService;
 import com.stylefeng.guns.modular.crossCity.warpper.OrderCrossCityWarpper;
+import com.stylefeng.guns.modular.crossCity.warpper.ScanOrderDetailWarpper;
 import com.stylefeng.guns.modular.smallLogistics.server.IOrderLogisticsService;
 import com.stylefeng.guns.modular.specialTrain.dao.OrderPrivateCarMapper;
 import com.stylefeng.guns.modular.specialTrain.model.OrderPrivateCar;
@@ -2976,4 +2977,66 @@
 		}
 		return maps;
 	}
+
+	/**
+	 * 【202601】获取扫码下单详情
+	 * @param lineShiftDriverId 司机排班记录ID
+	 * @param otherFee 其他费用
+	 * @return 扫码下单详情
+	 * @throws Exception
+	 */
+	@Override
+	public ResultUtil<ScanOrderDetailWarpper> queryScanOrderDetail(Integer lineShiftDriverId, Double otherFee) throws Exception {
+		// 1. 查询基础数据
+		Map<String, Object> data = lineShiftDriverMapper.queryScanOrderDetail(lineShiftDriverId);
+		if (data == null || data.isEmpty()) {
+			return ResultUtil.error("班次信息不存在");
+		}
+
+		// 2. 构建返回对象
+		ScanOrderDetailWarpper result = new ScanOrderDetailWarpper();
+
+		// 司机信息
+		result.setHeadImgUrl(data.get("headImgUrl") != null ? data.get("headImgUrl").toString() : null);
+		result.setDriverName(data.get("driverName") != null ? data.get("driverName").toString() : null);
+		result.setCarLicensePlate(data.get("carLicensePlate") != null ? data.get("carLicensePlate").toString() : null);
+		result.setCarBrand(data.get("carBrand") != null ? data.get("carBrand").toString() : null);
+		result.setCarColor(data.get("carColor") != null ? data.get("carColor").toString() : null);
+		result.setScore(data.get("score") != null ? Double.parseDouble(data.get("score").toString()) : 0.0);
+		result.setOrderCount(data.get("orderCount") != null ? Integer.parseInt(data.get("orderCount").toString()) : 0);
+
+		// 线路信息
+		result.setLineId(data.get("lineId") != null ? Integer.parseInt(data.get("lineId").toString()) : null);
+		result.setLineName(data.get("lineName") != null ? data.get("lineName").toString() : null);
+		result.setDay(data.get("day") != null ? data.get("day").toString() : null);
+		result.setStartTime(data.get("startTime") != null ? data.get("startTime").toString() : null);
+		result.setEndTime(data.get("endTime") != null ? data.get("endTime").toString() : null);
+		result.setTotalSeat(data.get("totalSeat") != null ? Integer.parseInt(data.get("totalSeat").toString()) : null);
+		result.setLaveSeat(data.get("laveSeat") != null ? Integer.parseInt(data.get("laveSeat").toString()) : null);
+		result.setLaveSeatNumber(data.get("laveSeatNumber") != null ? data.get("laveSeatNumber").toString() : null);
+
+		// 3. 解析价格JSON获取单人价格
+		String priceContent = data.get("priceContent") != null ? data.get("priceContent").toString() : null;
+		if (priceContent != null && !priceContent.isEmpty()) {
+			JSONObject json = JSON.parseObject(priceContent);
+			String num1 = json.getString("num1");
+			if (num1 != null && !num1.isEmpty()) {
+				result.setUnitPrice(Double.parseDouble(num1));
+			}
+		}
+
+		// 站点信息
+		result.setStartSiteId(data.get("startSiteId") != null ? Integer.parseInt(data.get("startSiteId").toString()) : null);
+		result.setStartSiteName(data.get("startSiteName") != null ? data.get("startSiteName").toString() : null);
+		result.setEndSiteId(data.get("endSiteId") != null ? Integer.parseInt(data.get("endSiteId").toString()) : null);
+		result.setEndSiteName(data.get("endSiteName") != null ? data.get("endSiteName").toString() : null);
+
+		// 其他信息
+		result.setOtherFee(otherFee);
+		result.setServerCarModelId(data.get("serverCarModelId") != null ? Integer.parseInt(data.get("serverCarModelId").toString()) : null);
+		result.setDriverId(data.get("driverId") != null ? Integer.parseInt(data.get("driverId").toString()) : null);
+		result.setLineShiftDriverId(lineShiftDriverId);
+
+		return ResultUtil.success(result);
+	}
 }

--
Gitblit v1.7.1