From e1a1ae7d3976963647e5878d3f12e42338ad163a Mon Sep 17 00:00:00 2001
From: yanderong <307678080@qq.com>
Date: 星期二, 30 六月 2026 14:55:51 +0800
Subject: [PATCH] feat: 专车价格计算逻辑修改
---
DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java | 4 +++-
DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/SystemPriceMapper.xml | 6 +++++-
UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ServerCarModelServiceImpl.java | 1 -
3 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java b/DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
index 6308898..f19359a 100644
--- a/DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
+++ b/DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -1244,7 +1244,9 @@
double estimateMileage = (null == orderPrivateCar.getEstimateMileage() ? 0D : orderPrivateCar.getEstimateMileage());
System.out.println("预估里程数"+estimateMileage);
//在价格区间按照一口价算,不在区间按实时价格算
- if(d<estimateMileage+contentPrice.getDouble("exceedMileageInner")*1000 && d>estimateMileage-contentPrice.getDouble("belowMileageInner")*1000){
+ double exceedMileageInner = Optional.ofNullable(query1.get("exceedMileageInner")).map(Object::toString).map(Double::parseDouble).orElse(0d);
+ double belowMileageInner = Optional.ofNullable(query1.get("belowMileageInner")).map(Object::toString).map(Double::parseDouble).orElse(0d);
+ if(d<estimateMileage+exceedMileageInner*1000 && d>estimateMileage-belowMileageInner*1000) {
System.out.println("在区间===============");
orderPrivateCar = calculationPrice(orderPrivateCar,contentPrice,jsonObject.getLongValue("num1"),jsonObject.getDouble("num2"),parkingFee,crossingFee);
System.out.println("返回订单数据"+orderPrivateCar);
diff --git a/DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/SystemPriceMapper.xml b/DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/SystemPriceMapper.xml
index d4070cd..b9cadd4 100644
--- a/DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/SystemPriceMapper.xml
+++ b/DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/SystemPriceMapper.xml
@@ -23,7 +23,11 @@
contentNotThree as contentNotThree,
contentExclusive as contentExclusive,
contentPrice as contentPrice,
- isOpen as isOpen
+ isOpen as isOpen,
+ exceedMileageInner as exceedMileageInner,
+ exceedMileageOut as exceedMileageOut,
+ belowMileageOut as belowMileageOut,
+ belowMileageInner as belowMileageInner
from t_system_price where state = 1 and systemPriceCityId = #{systemPriceCityId}
<if test="null != type">
and `type` = #{type}
diff --git a/UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ServerCarModelServiceImpl.java b/UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ServerCarModelServiceImpl.java
index bd79066..1ac8fa2 100644
--- a/UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ServerCarModelServiceImpl.java
+++ b/UserYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/ServerCarModelServiceImpl.java
@@ -422,7 +422,6 @@
return serverCarModelWarpper;
}
-
/**
* 专车费用计算
*/
--
Gitblit v1.7.1