From a0afbd1e36f74cb521c4d51b08a54f6a1fe538f2 Mon Sep 17 00:00:00 2001
From: liujie <liujie>
Date: 星期四, 31 八月 2023 12:01:54 +0800
Subject: [PATCH] broker 司机端

---
 src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java |  149 ++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 121 insertions(+), 28 deletions(-)

diff --git a/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java b/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java
index 5929ba5..e2eb878 100644
--- a/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java
+++ b/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java
@@ -13,6 +13,7 @@
 import com.stylefeng.guns.modular.system.model.vo.OrderInfoVo;
 import com.stylefeng.guns.modular.system.service.*;
 import com.stylefeng.guns.modular.system.utils.GoogleMap.FindPlaceFromTextVo;
+import com.stylefeng.guns.modular.system.utils.GoogleMap.GeocodeVo;
 import com.stylefeng.guns.modular.system.utils.GoogleMap.GoogleMapUtil;
 import com.stylefeng.guns.modular.system.utils.UserInfoUtil;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -458,16 +459,16 @@
         lonLat.setLng(tOrder.getStartLon());
         lonLats.add(lonLat);
         String s = tOrder.geteAddress();
-//        GeocodeVo geocode = googleMapUtil.getGeocode(s);
-//        orderInfo.setElat(String.valueOf(geocode.getLat()));
-//        orderInfo.setElon(String.valueOf(geocode.getLng()));
-        lonLat=new LonLat();
-        lonLat.setLng("-113.066919618184");
-        lonLat.setLat("37.684389618184");
+        GeocodeVo geocode = googleMapUtil.getGeocode(s);
+        orderInfo.setElat(String.valueOf(geocode.getLat()));
+        orderInfo.setElon(String.valueOf(geocode.getLng()));
+//        lonLat=new LonLat();
+//        lonLat.setLng("-113.066919618184");
+//        lonLat.setLat("37.684389618184");
         lonLats.add(lonLat);
-        orderInfo.setElat("37.684389618184");
-        orderInfo.setElon("-113.066919618184");
-
+//        orderInfo.setElat("37.684389618184");
+//        orderInfo.setElon("-113.066919618184");
+//
         orderInfo.setLonLats(lonLats);
         Long quoteId = tQuoteMapper.selectList(new EntityWrapper<TQuote>().eq("order_id", tOrder.geteZipZ())).get(0).getId();
         orderInfo.setType(tOrder.getType());
@@ -576,10 +577,10 @@
     @Resource
     private TYardService yardService;
     @Override
-    public OrderDetailVo orderInfo(Long id,int typeStr) {
+    public Map<String, Object>  orderInfo(Long id, int did) {
         OrderDetailVo orderDetailVo = new OrderDetailVo();
         List<Map<String, Object>> maps = new ArrayList<>();
-
+        Integer driverId =0;
         // 获取经纬度
         TOrder tOrder = this.baseMapper.selectById(id);
         if(tOrder.getExamSite()!=null && tOrder.getType().equals("Live Unload")){
@@ -587,42 +588,54 @@
                 orderDetailVo.setNextStatus("2");
             }else
             if(tOrder.getStatus().equals("2")){
+                driverId=tOrder.getsDriverid();
                 orderDetailVo.setNextStatus("3");
             }else
             if(tOrder.getStatus().equals("3")){
+                driverId=tOrder.getsDriverid();
                 orderDetailVo.setNextStatus("4");
             }else
             if(tOrder.getStatus().equals("4")){
+                driverId=tOrder.getsDriverid();
                 orderDetailVo.setNextStatus("12");
             }else
             if(tOrder.getStatus().equals("12")){
+                driverId=tOrder.getsDriverid();
                 orderDetailVo.setNextStatus("13");
             }else
             if(tOrder.getStatus().equals("13")){
                 orderDetailVo.setNextStatus("14");
             }else
             if(tOrder.getStatus().equals("14")){
+                driverId=tOrder.getsDriverid();
                 orderDetailVo.setNextStatus("5");
             }else
             if(tOrder.getStatus().equals("5")){
+                driverId=tOrder.getsDriverid();
                 orderDetailVo.setNextStatus("6");
             }else
             if(tOrder.getStatus().equals("6")){
+                driverId=tOrder.getsDriverIdOne();
                 orderDetailVo.setNextStatus("7");
             }else
             if(tOrder.getStatus().equals("7")){
+                driverId=tOrder.getsDriverIdOne();
                 orderDetailVo.setNextStatus("8");
             }else
             if(tOrder.getStatus().equals("8")){
+                driverId=tOrder.getsDriverIdOne();
                 orderDetailVo.setNextStatus("9");
             }else
             if(tOrder.getStatus().equals("9")){
+                driverId=tOrder.geteDriverid();
                 orderDetailVo.setNextStatus("10");
             }else
             if(tOrder.getStatus().equals("10")){
+                driverId=tOrder.geteDriverid();
                 orderDetailVo.setNextStatus("11");
             }else
             if(tOrder.getStatus().equals("11")){
+                driverId=tOrder.geteDriverIdOne();
                 orderDetailVo.setNextStatus("18");
             }
         }else if(tOrder.getExamSite()==null && tOrder.getType().equals("Live Unload")){
@@ -630,33 +643,43 @@
                 orderDetailVo.setNextStatus("2");
             }else
             if(tOrder.getStatus().equals("2")){
+                driverId=tOrder.getsDriverid();
                 orderDetailVo.setNextStatus("3");
             }else
             if(tOrder.getStatus().equals("3")){
+                driverId=tOrder.getsDriverid();
                 orderDetailVo.setNextStatus("4");
             }else
             if(tOrder.getStatus().equals("4")){
+                driverId=tOrder.getsDriverid();
                 orderDetailVo.setNextStatus("5");
             }else
             if(tOrder.getStatus().equals("5")){
+                driverId=tOrder.getsDriverid();
                 orderDetailVo.setNextStatus("6");
             }else
             if(tOrder.getStatus().equals("6")){
+                driverId=tOrder.getsDriverIdOne();
                 orderDetailVo.setNextStatus("7");
             }else
             if(tOrder.getStatus().equals("7")){
+                driverId=tOrder.getsDriverIdOne();
                 orderDetailVo.setNextStatus("8");
             }else
             if(tOrder.getStatus().equals("8")){
+                driverId=tOrder.getsDriverIdOne();
                 orderDetailVo.setNextStatus("9");
             }else
             if(tOrder.getStatus().equals("9")){
+                driverId=tOrder.geteDriverid();
                 orderDetailVo.setNextStatus("10");
             }else
             if(tOrder.getStatus().equals("10")){
+                driverId=tOrder.geteDriverid();
                 orderDetailVo.setNextStatus("11");
             }else
             if(tOrder.getStatus().equals("11")){
+                driverId=tOrder.geteDriverIdOne();
                 orderDetailVo.setNextStatus("18");
             }
         }else if(tOrder.getExamSite()!=null && !tOrder.getType().equals("Live Unload")){
@@ -664,33 +687,42 @@
                 orderDetailVo.setNextStatus("2");
             }else
             if(tOrder.getStatus().equals("2")){
+                driverId=tOrder.getsDriverid();
                 orderDetailVo.setNextStatus("3");
             }else
             if(tOrder.getStatus().equals("3")){
+                driverId=tOrder.getsDriverid();
                 orderDetailVo.setNextStatus("4");
             }else
             if(tOrder.getStatus().equals("4")){
+                driverId=tOrder.getsDriverid();
                 orderDetailVo.setNextStatus("12");
             }else
             if(tOrder.getStatus().equals("12")){
+                driverId=tOrder.getsDriverid();
                 orderDetailVo.setNextStatus("13");
             }else
             if(tOrder.getStatus().equals("13")){
                 orderDetailVo.setNextStatus("14");
             }else
             if(tOrder.getStatus().equals("14")){
+                driverId=tOrder.getsDriverid();
                 orderDetailVo.setNextStatus("5");
             }else
             if(tOrder.getStatus().equals("5")){
+                driverId=tOrder.getsDriverid();
                 orderDetailVo.setNextStatus("6");
             }else
             if(tOrder.getStatus().equals("6")){
+                driverId=tOrder.getsDriverIdOne();
                 orderDetailVo.setNextStatus("7");
             }else
             if(tOrder.getStatus().equals("7")){
+                driverId=tOrder.getsDriverIdOne();
                 orderDetailVo.setNextStatus("8");
             }else
             if(tOrder.getStatus().equals("8")){
+                driverId=tOrder.getsDriverIdOne();
                 orderDetailVo.setNextStatus("9");
             }
         }else {
@@ -698,24 +730,31 @@
                 orderDetailVo.setNextStatus("2");
             }else
             if(tOrder.getStatus().equals("2")){
+                driverId=tOrder.getsDriverid();
                 orderDetailVo.setNextStatus("3");
             }else
             if(tOrder.getStatus().equals("3")){
+                driverId=tOrder.getsDriverid();
                 orderDetailVo.setNextStatus("4");
             }else
             if(tOrder.getStatus().equals("4")){
+                driverId=tOrder.getsDriverid();
                 orderDetailVo.setNextStatus("5");
             }else
             if(tOrder.getStatus().equals("5")){
+                driverId=tOrder.getsDriverid();
                 orderDetailVo.setNextStatus("6");
             }else
             if(tOrder.getStatus().equals("6")){
+                driverId=tOrder.getsDriverIdOne();
                 orderDetailVo.setNextStatus("7");
             }else
             if(tOrder.getStatus().equals("7")){
+                driverId=tOrder.getsDriverIdOne();
                 orderDetailVo.setNextStatus("8");
             }else
             if(tOrder.getStatus().equals("8")){
+                driverId=tOrder.getsDriverIdOne();
                 orderDetailVo.setNextStatus("9");
             }
         }
@@ -742,10 +781,16 @@
         TTransportation tTransportations = tTransportationService.selectOne(new EntityWrapper<TTransportation>().eq("order_id", id).eq("type",1));
           // 第一个port
         HashMap<String, Object> orderInfo = getOrderInfo(tTransportations, tOrder);
+
+        ArrayList<Map<String,String>> strings = new ArrayList<>();
+        TPort tPort1 = portMapper.selectById(tOrder.getPort());
+        System.out.println(tPort1+"12312321");
+        strings.add(getLat(tPort1.getAddress(),1));
+
         orderInfo.put("7_danger",tGoods.getDanger());
         orderInfo.put("8_weight",tGoods.getWeight());
         Map<String, Object> map = sortMapByKey(orderInfo);
-        if(typeStr==1){
+        if(tOrder.getsDriverid()==did){
             maps.add(map);
         }
         if(tOrder.getExamSite()!=null){
@@ -753,19 +798,29 @@
             TExamSite tExamSite = examSiteService.selectById(examSite);
             // 第二个检查站
             Map<String, Object> examInfo = getExamInfo(tExamSite);
-            if(typeStr==1){
+            if(tOrder.getsDriverid()==did){
                 maps.add(examInfo);
             }
+            strings.add(getLat(tExamSite.getAddress(),2));
         }
         TTransportation tTransportations1 = tTransportationService.selectOne(new EntityWrapper<TTransportation>().eq("order_id", id).eq("type",2));
-        Integer yardId = tTransportations1.getYardId();
-        TYard tYard = yardService.selectById(yardId);
-        // 第三个  yard
-        Map<String, Object> yardOne = getYardOne(tTransportations1, tYard);
+        Map<String, Object> yardOne=null;
+        if(ToolUtil.isNotEmpty(tTransportations1)) {
+            Integer yardId = tTransportations1.getYardId();
+            TYard tYard = yardService.selectById(yardId);
+            if(tYard!=null){
+                strings.add(getLat(tYard.getStreetAddress(), 3));
+            }
+            // 第三个  yard
+            yardOne = getYardOne(tTransportations1, tYard);
+        }
         // 第四个  destination
         Map<String, Object> destination = getDestination(tOrder);
-        if(typeStr==2){
-            maps.add(yardOne);
+        strings.add(getLat(tOrder.geteAddress(),4));
+        if(tOrder.getsDriverIdOne()==did){
+            if(yardOne!=null){
+                maps.add(yardOne);
+            }
             maps.add(destination);
         }
         TTransportation tTransportations2 = tTransportationService.selectOne(new EntityWrapper<TTransportation>().eq("order_id", id).eq("type",3));
@@ -773,7 +828,7 @@
             TYard tYard1 = yardService.selectById(tTransportations2.getYardId());
             // 第五个  yard
             Map<String, Object> yardOne1 = getYardOne(tTransportations2, tYard1);
-            if(typeStr==3 && tOrder.getType().equals("Live Unload")){
+            if(tOrder.geteDriverid()==did && tOrder.getType().equals("Live Unload")){
                 maps.add(yardOne1);
             }
         }
@@ -781,18 +836,51 @@
         TTransportation tTransportations3 = tTransportationService.selectOne(new EntityWrapper<TTransportation>().eq("order_id", id).eq("type",4));
         if(tTransportations3!=null){
             TPort tPort = portMapper.selectById(tTransportations3.getPortId());
-
-            // 第六个 port
-            Map<String, Object> port = getPort(tTransportations3, tPort);
-            if(typeStr==4 && tOrder.getType().equals("Live Unload")){
-                maps.add(port);
+            if(ToolUtil.isNotEmpty(tPort)){
+                // 第六个 port
+                Map<String, Object> port = getPort(tTransportations3, tPort);
+                if(tOrder.geteDriverIdOne()==did && tOrder.getType().equals("Live Unload")){
+                    maps.add(port);
+                }
             }
         }
         orderDetailVo.setTGoods(tGoods);
         orderDetailVo.setOrderId(id);
         orderDetailVo.setStatus(tOrder.getStatus());
         orderDetailVo.setList(maps);
-        return orderDetailVo;
+        if(did==driverId){
+            orderDetailVo.setButton(1);
+        }
+        HashMap<String, Object> map1 = new HashMap<>();
+        map1.put("lonlat",strings);
+        map1.put("data",orderDetailVo);
+        return map1;
+    }
+
+    @Override
+    public void saveLonLat(Long id, String lon, String lat) {
+        this.baseMapper.saveLonLat(id,lon,lat);
+    }
+
+    @Override
+    public List<Map<String, Object>> getLonLat(Long orderId) {
+        return this.baseMapper.getLonLat(orderId);
+    }
+
+    private HashMap<String, String> getLat(String a,Integer type){
+        HashMap<String, String> map = new HashMap<>();
+        try {
+            GeocodeVo geocode = googleMapUtil.getGeocode(a);
+            map.put("lon",String.valueOf(geocode.getLng()));
+            map.put("lat",String.valueOf(geocode.getLat()));
+            map.put("type",type.toString());
+        }catch (Exception e){
+            e.printStackTrace();
+            map.put("lon",null);
+            map.put("lat",null);
+        }
+
+        return map;
     }
 
     private HashMap<String, Object> getOrderInfo(TTransportation tTransportation,TOrder tOrder){
@@ -877,8 +965,13 @@
 //        String stateName = countryService.selectById(yard.getState()).getName();
 //        String name = countryService.selectById(yard.getCountry()).getName();
         map.put("1_title","Yard");
-        map.put("2_address",yard.getStreetAddress()+yard.getCity()+yard.getState()+yard.getZipCode()+yard.getCountry());
-        map.put("3_yardName",yard.getYardName());
+        if(yard!=null){
+            map.put("2_address",yard.getStreetAddress()+yard.getCity()+yard.getState()+yard.getZipCode()+yard.getCountry());
+            map.put("3_yardName",yard.getYardName());
+        }else {
+            map.put("2_address","");
+            map.put("3_yardName","");
+        }
         map.put("4_contactName",tTransportations1.getName());
         map.put("5_contactPhone",tTransportations1.getPhone());
         map.put("6_contactEmail",tTransportations1.getEmail());

--
Gitblit v1.7.1