From d8440cc93f48e5a4b932d8daf740023e16d65008 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期一, 18 五月 2026 00:07:54 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/1.0' into 1.0

---
 xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java |   12 ++++++------
 1 files changed, 6 insertions(+), 6 deletions(-)

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 a041974..a2f865c 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
@@ -2542,7 +2542,7 @@
                             }
 
                             // 天气预报动态调价
-                            JSONArray ws = jsonObject.getJSONArray("weather");
+                            JSONArray ws = jsonObject.getJSONArray("weatherRules");
                             if (null != ws) {
                                 WeatherDTO data = xpMapClient.wether(order.getCityCode()).getData();
                                 List<WeatherDTO.Lives> lives = data.getLives();
@@ -2550,8 +2550,8 @@
                                     String w = lives.get(0).getWeather();
                                     for (Object o : ws) {
                                         JSONObject ele = JSONObject.parseObject(o.toString());
-                                        if (w.contains(ele.getString("weatherType"))) {
-                                            double floatRate = jsonObject.getDouble("ratio");
+                                        if (w.contains(ele.getString("weatherType")) || ele.getString("weatherType").contains(w)) {
+                                            double floatRate = ele.getDouble("ratio");
                                             priceRate = new BigDecimal(priceRate).add(new BigDecimal(floatRate)).doubleValue();
                                             break;
                                         }
@@ -2663,7 +2663,7 @@
                             }
 
                             // 天气预报动态调价
-                            JSONArray ws = jsonObject.getJSONArray("weather");
+                            JSONArray ws = jsonObject.getJSONArray("weatherRules");
                             if (null != ws) {
                                 WeatherDTO data = xpMapClient.wether(order.getCityCode()).getData();
                                 List<WeatherDTO.Lives> lives = data.getLives();
@@ -2671,8 +2671,8 @@
                                     String w = lives.get(0).getWeather();
                                     for (Object o : ws) {
                                         JSONObject ele = JSONObject.parseObject(o.toString());
-                                        if (w.contains(ele.getString("weatherType"))) {
-                                            double floatRate = jsonObject.getDouble("ratio");
+                                        if (w.contains(ele.getString("weatherType")) || ele.getString("weatherType").contains(w)) {
+                                            double floatRate = ele.getDouble("ratio");
                                             priceRate = new BigDecimal(priceRate).add(new BigDecimal(floatRate)).doubleValue();
                                             break;
                                         }

--
Gitblit v1.7.1