From d4f8d30d1c6e4397dbfbdbb759cc66132913dd53 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期五, 13 三月 2026 11:34:35 +0800
Subject: [PATCH] 修改计费规则

---
 xp-robotaxi-push-message-boot/pom.xml                                                                        |   10 ++--
 xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java                 |   59 +++++++++++++++++------------
 xp-robotaxi-automatic-pilot-boot/pom.xml                                                                     |   10 -----
 xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java |    1 
 xp-robotaxi-map-boot/src/main/java/com/xiaopeng/map/utils/GDMapGeocodingUtil.java                            |    6 +-
 5 files changed, 43 insertions(+), 43 deletions(-)

diff --git a/xp-robotaxi-automatic-pilot-boot/pom.xml b/xp-robotaxi-automatic-pilot-boot/pom.xml
index 8be332c..da3ab04 100644
--- a/xp-robotaxi-automatic-pilot-boot/pom.xml
+++ b/xp-robotaxi-automatic-pilot-boot/pom.xml
@@ -143,16 +143,6 @@
     <build>
         <finalName>${project.artifactId}</finalName>
         <plugins>
-<!--            <plugin>-->
-<!--                <groupId>org.apache.maven.plugins</groupId>-->
-<!--                <artifactId>maven-surefire-plugin</artifactId>-->
-<!--                <configuration>-->
-<!--                    <argLine>-->
-<!--                        &#45;&#45;add-opens java.base/java.lang=ALL-UNNAMED-->
-<!--                        &#45;&#45;add-opens java.base/java.util=ALL-UNNAMED-->
-<!--                    </argLine>-->
-<!--                </configuration>-->
-<!--            </plugin>-->
             <plugin>
                 <groupId>org.springframework.boot</groupId>
                 <artifactId>spring-boot-maven-plugin</artifactId>
diff --git a/xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java b/xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java
index 374bfb6..ae9a8b9 100644
--- a/xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java
+++ b/xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java
@@ -837,7 +837,6 @@
                     //下车完成
                     buildPushOrderStatus(orderId, OrderStatusEnum.APPROVAL_REJECTION, sequence);
                     xpOrderClient.updateOrderStatus(Long.parseLong(orderId.contains("XU") ? orderId.substring(2) : orderId), OrderStatusEnum.APPROVAL_REJECTION.getCode());
-
                     // 下发巡游任务
                     R<XpOrder> xpOrderR = xpOrderClient.queryOrderById(Long.parseLong(orderId));
                     if(xpOrderR.getCode()==200){
diff --git a/xp-robotaxi-map-boot/src/main/java/com/xiaopeng/map/utils/GDMapGeocodingUtil.java b/xp-robotaxi-map-boot/src/main/java/com/xiaopeng/map/utils/GDMapGeocodingUtil.java
index 75483cb..0eb8c08 100644
--- a/xp-robotaxi-map-boot/src/main/java/com/xiaopeng/map/utils/GDMapGeocodingUtil.java
+++ b/xp-robotaxi-map-boot/src/main/java/com/xiaopeng/map/utils/GDMapGeocodingUtil.java
@@ -254,10 +254,10 @@
         if(routePlanRule!=null){
             params.put("strategy", routePlanRule);
         }
-
+        log.info("高德地图接口:{}", url);
+        log.info("高德地图参数:{}", params);
         String post = HttpUtils.post(url, JSON.toJSONString(params));
-        System.out.println("高德地图返回结果:"+ post);
-//        String forObject = restTemplate.getForObject(url, String.class, params);
+        log.info("高德地图返回结果:"+ post);
         JSONObject jsonObject = JSON.parseObject(post);
         String data = jsonObject.getString("data");
 
diff --git a/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java b/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java
index cf6c106..f433dd1 100644
--- a/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java
+++ b/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java
@@ -1476,19 +1476,19 @@
             throw new ServiceException("当前城市未配置定价规则", I18nKeyConstant.ORDER_PRICING_NOT_EXISTS);
         }
         // 费用
-//        // 查询订单轨迹
-//        List<OrderTrajectory> trajectories = mongoTemplate.find(
-//                new Query(Criteria.where("orderId").is(orderId))
-//                        .with(Sort.by(Sort.Direction.ASC, "locatetime")),
-//                OrderTrajectory.class
-//        );
-//        List<TaxiPricingDemoService.GpsPoint> gpsPoints = new ArrayList<>();
-//        for (OrderTrajectory trajectory : trajectories) {
-//            TaxiPricingDemoService.GpsPoint point = new TaxiPricingDemoService.GpsPoint(trajectory.getDistance(), trajectory.getLocatetime());
-//            gpsPoints.add(point);
-//        }
-        // 补充临时轨迹数据
-        List<TaxiPricingDemoService.GpsPoint> gpsPoints = TaxiPricingDemoService.createMockGpsPoints(DateUtils.toDate(order.getCreateTime()));
+        // 查询订单轨迹
+        List<OrderTrajectory> trajectories = mongoTemplate.find(
+                new Query(Criteria.where("orderId").is(orderId))
+                        .with(Sort.by(Sort.Direction.ASC, "locatetime")),
+                OrderTrajectory.class
+        );
+        List<TaxiPricingDemoService.GpsPoint> gpsPoints = new ArrayList<>();
+        for (OrderTrajectory trajectory : trajectories) {
+            TaxiPricingDemoService.GpsPoint point = new TaxiPricingDemoService.GpsPoint(trajectory.getDistance(), trajectory.getLocatetime());
+            gpsPoints.add(point);
+        }
+//         补充临时轨迹数据
+//        List<TaxiPricingDemoService.GpsPoint> gpsPoints = TaxiPricingDemoService.createMockGpsPoints(DateUtils.toDate(order.getCreateTime()));
 
 
         TaxiPricingDemoService.PricingConfig config = new TaxiPricingDemoService.PricingConfig();
@@ -1529,11 +1529,26 @@
                 paramNum5 = jsonObject.getDouble("num5");
                 break;
             }
-
-
         }
 
 
+        //一口价
+        if(pricing.getPricingType() == 2){
+            JSONObject basicPricingJson = JSONObject.parseObject(pricing.getBasicPricingJson());
+            String num1 = "00:00";
+            String num2 = "23:59";
+            String num3 = basicPricingJson.getString("num1");
+            String num4 = basicPricingJson.getString("num2");
+            String num5 = basicPricingJson.getString("num3");
+            String num6 = basicPricingJson.getString("num4");
+            String num7 = basicPricingJson.getString("num5");
+            config.normals.add(new TaxiPricingDemoService.PricingRule("普通时段", num1, num2, Double.parseDouble(num3), Double.parseDouble(num4), Double.parseDouble(num5), Double.parseDouble(num6), Double.parseDouble(num7)));
+            paramNum4 = basicPricingJson.getDouble("num2");
+            paramNum5 = basicPricingJson.getDouble("num3");
+        }
+
+
+        //动态计费
         if (pricing.getPricingType() == 1) {
             JSONObject basicPricingJson = JSONObject.parseObject(pricing.getBasicPricingJson());
             config.peaks.add(new TaxiPricingDemoService.PricingRule("高峰期", basicPricingJson.getString("num21").split(" - ")[0], basicPricingJson.getString("num21").split(" - ")[1], Double.parseDouble(basicPricingJson.getString("num23")),paramNum4, paramNum5,  Double.parseDouble(basicPricingJson.getString("num24")), Double.parseDouble(basicPricingJson.getString("num25"))));
@@ -1551,17 +1566,14 @@
 
 
         TaxiPricingDemoService.TaxiPricingService service = new TaxiPricingDemoService.TaxiPricingService();
-
         Integer holidayToday = holidayUtil.isHolidayToday();
-
-
         Map<String, BigDecimal> bill = service.calculateOrderPrice(DateUtils.toDate(order.getBoardingTime()), order.getMileageKilometers(), gpsPoints, config,holidayToday);
-        System.err.println("======= 订单计费账单 =======");
-        bill.forEach((detail, price) -> System.err.println(detail + ": " + price + " 元"));
+        log.info("======= 订单计费账单 =======");
+        bill.forEach((detail, price) -> log.info(detail + ": " + price + " 元"));
 
         BigDecimal totalAmount = bill.values().stream().reduce(BigDecimal.ZERO, BigDecimal::add);
-        System.err.println("--------------------------");
-        System.err.println("应付总额: " + totalAmount + " 元");
+        log.info("--------------------------");
+        log.info("应付总额: " + totalAmount + " 元");
         BigDecimal startMoney = BigDecimal.ZERO;
         // 默认费率1
         double priceRate = 1;
@@ -1789,8 +1801,7 @@
         if (vehicle != null) {
             // 修改车辆状态
             vehicle.setState(0);
-
-
+            //发送巡游订单
             addCruiseMission(vehicle, order);
 //            // 获取配置 根据配置判断是否该收车 如果是则找到收车点位进行收车操作
 //            R<XpTaskRule> xpTaskRuleR = xpTaskRuleClient.queryDetail();
diff --git a/xp-robotaxi-push-message-boot/pom.xml b/xp-robotaxi-push-message-boot/pom.xml
index 345cd0b..66d7cab 100644
--- a/xp-robotaxi-push-message-boot/pom.xml
+++ b/xp-robotaxi-push-message-boot/pom.xml
@@ -108,11 +108,11 @@
                 </exclusion>
             </exclusions>
         </dependency>
-<!--        <dependency>-->
-<!--            <groupId>org.apache.shardingsphere</groupId>-->
-<!--            <artifactId>shardingsphere-transaction-base-seata-at</artifactId>-->
-<!--            <version>5.2.1</version>-->
-<!--        </dependency>-->
+        <dependency>
+            <groupId>org.apache.shardingsphere</groupId>
+            <artifactId>shardingsphere-transaction-base-seata-at</artifactId>
+            <version>5.2.1</version>
+        </dependency>
         <dependency>
             <groupId>org.yaml</groupId>
             <artifactId>snakeyaml</artifactId>

--
Gitblit v1.7.1