From da780b14b8db78043d2c0f27d3bfd73111e6d550 Mon Sep 17 00:00:00 2001
From: longz <longzhaoz@qq.com>
Date: 星期四, 04 六月 2026 15:36:54 +0800
Subject: [PATCH] 更新配置文件和线路模型增加调度电话字段

---
 DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/LineSiteServiceImpl.java |   26 +++++++++++++++++++++++---
 1 files changed, 23 insertions(+), 3 deletions(-)

diff --git a/DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/LineSiteServiceImpl.java b/DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/LineSiteServiceImpl.java
index 74b172d..c6b59ce 100644
--- a/DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/LineSiteServiceImpl.java
+++ b/DriverYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/LineSiteServiceImpl.java
@@ -31,6 +31,7 @@
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.math.BigDecimal;
 import java.text.SimpleDateFormat;
 import java.util.*;
 import java.util.stream.Collectors;
@@ -149,9 +150,8 @@
                 }
                 if(lineShift.getId().intValue() == Integer.valueOf(map.get("id").toString()).intValue()){
                     b = false;
-                    String content = String.valueOf(map.get("content"));
-                    JSONObject jsonObject = JSON.parseObject(content);
-                    map.put("price", jsonObject.getString("num1"));
+                    BigDecimal price = getDefaultDestinationPrice(map);
+                    map.put("price", price == null ? "0" : price.toPlainString());
                     data = map;
                     list.add(data);
                 }
@@ -165,6 +165,26 @@
         return list;
     }
 
+    private BigDecimal getDefaultDestinationPrice(Map<String, Object> map) {
+        if (map == null) {
+            return null;
+        }
+        Integer totalSeat = map.get("totalSeat") == null ? null : Integer.valueOf(map.get("totalSeat").toString());
+        BigDecimal price = totalSeat != null && totalSeat == 6 ? getBigDecimal(map.get("defaultPrice7")) : getBigDecimal(map.get("defaultPrice5"));
+        return price == null ? getBigDecimal(map.get("defaultPrice5")) : price;
+    }
+
+    private BigDecimal getBigDecimal(Object value) {
+        if (value == null || ToolUtil.isEmpty(String.valueOf(value))) {
+            return null;
+        }
+        try {
+            return new BigDecimal(String.valueOf(value));
+        } catch (Exception e) {
+            return null;
+        }
+    }
+
 
     /**
      * 根据司机排班数据id获取数据(剩余座位号和总座位数)

--
Gitblit v1.7.1