From 18c488ada25f028d01f68acd844ab38c61422ca3 Mon Sep 17 00:00:00 2001
From: longz <longzhaoz@qq.com>
Date: 星期一, 27 四月 2026 17:22:11 +0800
Subject: [PATCH] 线路目的地价格获取

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

diff --git a/UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java b/UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
index bb07414..af0462c 100644
--- a/UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
+++ b/UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
@@ -8,6 +8,7 @@
 import com.stylefeng.guns.core.util.ToolUtil;
 import com.stylefeng.guns.modular.account.controller.AppOrderController;
 import com.stylefeng.guns.modular.crossCity.dao.LinePriceMapper;
+import com.stylefeng.guns.modular.crossCity.dao.LineMapper;
 import com.stylefeng.guns.modular.crossCity.dao.LineShiftDriverMapper;
 import com.stylefeng.guns.modular.crossCity.dao.OrderCrossCityMapper;
 import com.stylefeng.guns.modular.crossCity.model.Line;
@@ -70,6 +71,9 @@
 	
 	@Resource
 	private LinePriceMapper linePriceMapper;
+
+	@Resource
+	private LineMapper lineMapper;
 	
 	@Resource
 	private UserActivityDiscount1Mapper userActivityDiscount1Mapper;
@@ -234,7 +238,23 @@
 	 */
 	@Override
 	public ResultUtil queryOrderMoney(String startLonLat, String endLonLat, Integer peopleNumber, Integer travelMode, Integer lineId,
-	                                  Integer serverCarModelId, Integer totalSeat, String seatNumber) throws Exception {
+	                                  Integer lineDestinationId, Integer serverCarModelId, Integer totalSeat, String seatNumber) throws Exception {
+		if (lineDestinationId != null) {
+			Map<String, Object> destination = lineMapper.queryLineDestinationById(lineDestinationId, lineId);
+			if (destination == null) {
+				return ResultUtil.error("目的地不存在");
+			}
+			Object priceObj = (totalSeat != null && totalSeat <= 5) ? destination.get("price5") : destination.get("price7");
+			if (priceObj == null) {
+				return ResultUtil.error("目的地价格未配置");
+			}
+			double unitPrice = Double.valueOf(String.valueOf(priceObj));
+			double totalPrice = new BigDecimal(unitPrice).multiply(new BigDecimal(peopleNumber)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue();
+			Map<String, Object> map = new HashMap<>();
+			map.put("distance", 0);
+			map.put("price", totalPrice);
+			return ResultUtil.success(map);
+		}
 		// TODO: 2023/11/4 无法修改
 		Map<String, String> distance = gdMapElectricFenceUtil.getDistance(startLonLat, endLonLat, 1);//调用高德计算距离
 		if (null != distance) {
@@ -1273,6 +1293,7 @@
 		orderCrossCity.setServerCarModelId(orderCrossCityWarpper.getServerCarModelId());
 		orderCrossCity.setDriverId(orderCrossCityWarpper.getDriverId());
 		orderCrossCity.setLineId(orderCrossCityWarpper.getLineId());
+		orderCrossCity.setLineDestinationId(orderCrossCityWarpper.getLineDestinationId());
 		orderCrossCity.setLineShiftDriverId(orderCrossCityWarpper.getLineShiftDriverId());
 		orderCrossCity.setCarId(orderCrossCityWarpper.getCarId());
 		orderCrossCity.setOrderNum(this.getOrderNum(orderCrossCityWarpper.getDriverId(), orderCrossCityWarpper.getLineShiftDriverId()));

--
Gitblit v1.7.1