From e52227b01983146f2e3c81dc575141d8b9889497 Mon Sep 17 00:00:00 2001
From: yanghb <yanghb>
Date: 星期五, 21 四月 2023 10:16:30 +0800
Subject: [PATCH] 代码调整

---
 DriverTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushUtil.java |   81 ++++++++++++++++++++++++++++++++--------
 1 files changed, 65 insertions(+), 16 deletions(-)

diff --git a/DriverTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushUtil.java b/DriverTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushUtil.java
index 2f5dead..9f84f44 100644
--- a/DriverTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushUtil.java
+++ b/DriverTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PushUtil.java
@@ -20,6 +20,8 @@
 import org.springframework.web.client.RestTemplate;
 
 import java.math.BigDecimal;
+import java.math.MathContext;
+import java.math.RoundingMode;
 import java.util.*;
 
 /**
@@ -53,7 +55,6 @@
 
     private Map<String, Timer> taskMap = new HashMap<>();//存储定时推送的定时器
 
-    private final String host = "http://ZUUL-GATEWAY/";
 
 
     /**
@@ -82,10 +83,19 @@
         //将请求头部和参数合成一个请求
         MultiValueMap<String, Object> params = new LinkedMultiValueMap<>();
         params.add("msg", jsonObject.toJSONString());
-        params.add("id", String.valueOf(uid));
+        if(orderType == 2 && type == 1){
+            OrderTaxi orderTaxi = orderTaxiService.selectById(orderId);
+            if(orderTaxi.getOrderSource() == 7){
+                params.add("id", orderTaxi.getDeviceCode());
+            }else{
+                params.add("id", String.valueOf(uid));
+            }
+        }else{
+            params.add("id", String.valueOf(uid));
+        }
         params.add("type", String.valueOf(type));
         HttpEntity<MultiValueMap<String, Object>> requestEntity = new HttpEntity<>(params, headers);
-        String s = internalRestTemplate.postForObject(host + "/netty/sendMsgToClient",requestEntity , String.class);
+        String s = internalRestTemplate.postForObject("http://zuul-gateway/netty/sendMsgToClient",requestEntity , String.class);
         JSONObject jsonObject1 = JSON.parseObject(s, JSONObject.class);
         if(jsonObject1.getIntValue("code") != 200){
             System.err.println(jsonObject1.getString("msg"));
@@ -116,10 +126,19 @@
         //将请求头部和参数合成一个请求
         MultiValueMap<String, Object> params = new LinkedMultiValueMap<>();
         params.add("msg", jsonObject.toJSONString());
-        params.add("id", String.valueOf(uid));
+        if(orderType == 2 && type == 1){
+            OrderTaxi orderTaxi = orderTaxiService.selectById(orderId);
+            if(orderTaxi.getOrderSource() == 7){
+                params.add("id", orderTaxi.getDeviceCode());
+            }else{
+                params.add("id", String.valueOf(uid));
+            }
+        }else{
+            params.add("id", String.valueOf(uid));
+        }
         params.add("type", type.toString());
         HttpEntity<MultiValueMap<String, Object>> requestEntity = new HttpEntity<>(params, headers);
-        String s = internalRestTemplate.postForObject(host + "/netty/sendMsgToClient",requestEntity , String.class);
+        String s = internalRestTemplate.postForObject("http://zuul-gateway/netty/sendMsgToClient",requestEntity , String.class);
         JSONObject jsonObject1 = JSON.parseObject(s, JSONObject.class);
         if(jsonObject1.getIntValue("code") != 200){
             System.err.println(jsonObject1.getString("msg"));
@@ -279,8 +298,8 @@
             System.err.println("查询距离出错了");
             return;
         }else{
-            d = new BigDecimal(distance.get("distance")).divide(new BigDecimal(1000)).setScale(2, BigDecimal.ROUND_HALF_EVEN).toString();
-            t = new BigDecimal(distance.get("duration")).divide(new BigDecimal(60)).setScale(2, BigDecimal.ROUND_HALF_EVEN).intValue() + "";
+            d = new BigDecimal(distance.get("distance")).divide(new BigDecimal(1000), new MathContext(2, RoundingMode.HALF_EVEN)).setScale(2, BigDecimal.ROUND_HALF_EVEN).toString();
+            t = new BigDecimal(distance.get("duration")).divide(new BigDecimal(60), new MathContext(2, RoundingMode.HALF_EVEN)).setScale(2, BigDecimal.ROUND_HALF_EVEN).intValue() + "";
         }
         JSONObject msg = new JSONObject();
         msg.put("code", 200);
@@ -318,8 +337,8 @@
                 if(null == distance){
                     System.err.println("查询距离出错了");
                 }else{
-                    d = new BigDecimal(distance.get("distance")).divide(new BigDecimal(1000)).setScale(2, BigDecimal.ROUND_HALF_EVEN).toString();
-                    t = new BigDecimal(distance.get("duration")).divide(new BigDecimal(60)).setScale(2, BigDecimal.ROUND_HALF_EVEN).intValue() + "";
+                    d = new BigDecimal(distance.get("distance")).divide(new BigDecimal(1000), new MathContext(2, RoundingMode.HALF_EVEN)).setScale(2, BigDecimal.ROUND_HALF_EVEN).toString();
+                    t = new BigDecimal(distance.get("duration")).divide(new BigDecimal(60), new MathContext(2, RoundingMode.HALF_EVEN)).setScale(2, BigDecimal.ROUND_HALF_EVEN).intValue() + "";
                 }
                 map.put("laveMileage", d);//距离终点剩余未服务的里程数
                 map.put("laveTime", t);//距离终端剩余未服务的预计时间
@@ -337,10 +356,20 @@
         JSONObject jsonObject = pushMap.get(orderId + "_" + orderType);
         MultiValueMap<String, Object> params = new LinkedMultiValueMap<>();
         params.add("msg", msg.toJSONString());
-        params.add("id", jsonObject.getString("id"));
+
+        if(orderType == 2){
+            OrderTaxi orderTaxi = orderTaxiService.selectById(orderId);
+            if(orderTaxi.getOrderSource() == 7){
+                params.add("id", orderTaxi.getDeviceCode());
+            }else{
+                params.add("id", jsonObject.getString("id"));
+            }
+        }else{
+            params.add("id", jsonObject.getString("id"));
+        }
         params.add("type", jsonObject.getString("type"));
         HttpEntity<MultiValueMap<String, Object>> requestEntity = new HttpEntity<>(params, headers);
-        String s = internalRestTemplate.postForObject(host + "/netty/sendMsgToClient",requestEntity , String.class);
+        String s = internalRestTemplate.postForObject("http://zuul-gateway/netty/sendMsgToClient",requestEntity , String.class);
         JSONObject jsonObject1 = JSON.parseObject(s, JSONObject.class);
         if(jsonObject1.getIntValue("code") != 200){
             System.err.println(jsonObject1.getString("msg"));
@@ -371,7 +400,7 @@
         params.add("id", id.toString());
         params.add("type", type.toString());
         HttpEntity<MultiValueMap<String, Object>> requestEntity = new HttpEntity<>(params, headers);
-        String s = internalRestTemplate.postForObject(host + "/netty/sendMsgToClient",requestEntity , String.class);
+        String s = internalRestTemplate.postForObject("http://zuul-gateway/netty/sendMsgToClient",requestEntity , String.class);
         JSONObject jsonObject1 = JSON.parseObject(s, JSONObject.class);
         if(jsonObject1.getIntValue("code") != 200){
             System.err.println(jsonObject1.getString("msg"));
@@ -407,10 +436,20 @@
         //将请求头部和参数合成一个请求
         MultiValueMap<String, Object> params = new LinkedMultiValueMap<>();
         params.add("msg", jsonObject.toJSONString());
-        params.add("id", String.valueOf(uid));
+
+        if(orderType == 2 && type == 1){
+            OrderTaxi orderTaxi = orderTaxiService.selectById(orderId);
+            if(orderTaxi.getOrderSource() == 7){
+                params.add("id", orderTaxi.getDeviceCode());
+            }else{
+                params.add("id", String.valueOf(uid));
+            }
+        }else{
+            params.add("id", String.valueOf(uid));
+        }
         params.add("type", String.valueOf(type));
         HttpEntity<MultiValueMap<String, Object>> requestEntity = new HttpEntity<>(params, headers);
-        String s = internalRestTemplate.postForObject(host + "/netty/sendMsgToClient",requestEntity , String.class);
+        String s = internalRestTemplate.postForObject("http://zuul-gateway/netty/sendMsgToClient",requestEntity , String.class);
         JSONObject jsonObject1 = JSON.parseObject(s, JSONObject.class);
         if(jsonObject1.getIntValue("code") != 200){
             System.err.println(jsonObject1.getString("msg"));
@@ -444,10 +483,20 @@
         //将请求头部和参数合成一个请求
         MultiValueMap<String, Object> params = new LinkedMultiValueMap<>();
         params.add("msg", jsonObject.toJSONString());
-        params.add("id", String.valueOf(uid));
+
+        if(orderType == 2 && type == 1){
+            OrderTaxi orderTaxi = orderTaxiService.selectById(orderId);
+            if(orderTaxi.getOrderSource() == 7){
+                params.add("id", orderTaxi.getDeviceCode());
+            }else{
+                params.add("id", String.valueOf(uid));
+            }
+        }else{
+            params.add("id", String.valueOf(uid));
+        }
         params.add("type", String.valueOf(type));
         HttpEntity<MultiValueMap<String, Object>> requestEntity = new HttpEntity<>(params, headers);
-        String s = internalRestTemplate.postForObject(host + "/netty/sendMsgToClient",requestEntity , String.class);
+        String s = internalRestTemplate.postForObject("http://zuul-gateway/netty/sendMsgToClient",requestEntity , String.class);
         JSONObject jsonObject1 = JSON.parseObject(s, JSONObject.class);
         if(jsonObject1.getIntValue("code") != 200){
             System.err.println(jsonObject1.getString("msg"));

--
Gitblit v1.7.1