From 4873e23bebf15d2093ee99012d92794faeac474c Mon Sep 17 00:00:00 2001
From: liugl <liugl@sinata.cn>
Date: 星期四, 28 一月 2021 17:15:33 +0800
Subject: [PATCH] 1。4:处理预约单导致串单的问题 隐藏预约单

---
 app/src/main/res/layout/view_no.xml                             |    7 ++
 app/src/main/java/com/okgoincar/bean/OrderBean.java             |   31 +++++++---
 app/src/main/java/com/okgoincar/slab/SlabMainActivity.kt        |    4 
 app/src/main/java/com/okgoincar/slab/adapter/SlabMainAdapter.kt |    3 
 app/src/main/java/com/okgoincar/netUtls/Api.java                |   12 ++--
 app/src/main/java/com/okgoincar/slab/SlabOrderListFragment.kt   |    1 
 app/src/main/java/com/okgoincar/base/AMapKit.kt                 |    7 +
 app/src/main/java/com/okgoincar/slab/SlabOrderOverActivity.kt   |    3 +
 app/src/main/java/com/okgoincar/slab/SlabGetOrderFragment.kt    |   10 +-
 app/src/main/java/com/okgoincar/slab/SlabTripActivity.kt        |   56 ++++++++++++------
 10 files changed, 90 insertions(+), 44 deletions(-)

diff --git a/app/src/main/java/com/okgoincar/base/AMapKit.kt b/app/src/main/java/com/okgoincar/base/AMapKit.kt
index d2dc105..1343cee 100644
--- a/app/src/main/java/com/okgoincar/base/AMapKit.kt
+++ b/app/src/main/java/com/okgoincar/base/AMapKit.kt
@@ -162,11 +162,14 @@
      */
     fun addMarker(
         aMap: AMap,
-        mLat: Double,
-        mLng: Double,
+        mLat: Double?,
+        mLng: Double?,
         view: View,
         peopleId: String
     ): Marker? {
+        if (mLat == null || mLng == null){
+            return null
+        }
         val options: MarkerOptions = getOption(LatLng(mLat, mLng), view)
         val marker: Marker = aMap.addMarker(options)
         if (!TextUtils.isEmpty(peopleId)) {
diff --git a/app/src/main/java/com/okgoincar/bean/OrderBean.java b/app/src/main/java/com/okgoincar/bean/OrderBean.java
index 7ab66ee..5ff24bd 100644
--- a/app/src/main/java/com/okgoincar/bean/OrderBean.java
+++ b/app/src/main/java/com/okgoincar/bean/OrderBean.java
@@ -57,8 +57,8 @@
          */
 
         private String endAddress;
-        private double endLat;
-        private double endLon;
+        private String endLat;
+        private String endLon;
         private int historyNum;
         private int isReassign;
         private String nickName;
@@ -163,6 +163,9 @@
         }
 
         public String getEndAddress() {
+            if (endAddress == null){
+                endAddress = "";
+            }
             return endAddress;
         }
 
@@ -170,20 +173,28 @@
             this.endAddress = endAddress;
         }
 
-        public double getEndLat() {
-            return endLat;
+        public Double getEndLat() {
+            if (endLat.isEmpty()){
+                return null;
+            }else {
+                return Double.valueOf(endLat);
+            }
         }
 
-        public void setEndLat(double endLat) {
-            this.endLat = endLat;
+        public void setEndLat(Double endLat) {
+            this.endLat = endLat.toString();
         }
 
-        public double getEndLon() {
-            return endLon;
+        public Double getEndLon() {
+            if (endLon.isEmpty()){
+                return null;
+            }else {
+                return Double.valueOf(endLon);
+            }
         }
 
-        public void setEndLon(double endLon) {
-            this.endLon = endLon;
+        public void setEndLon(Double endLon) {
+            this.endLon = endLon.toString();
         }
 
         public void setStartLat(double startLat) {
diff --git a/app/src/main/java/com/okgoincar/netUtls/Api.java b/app/src/main/java/com/okgoincar/netUtls/Api.java
index 79df922..58019c2 100644
--- a/app/src/main/java/com/okgoincar/netUtls/Api.java
+++ b/app/src/main/java/com/okgoincar/netUtls/Api.java
@@ -12,14 +12,14 @@
 //    public static final int SOCKET_PORT = 9999;
 
     //39.108.148.228 测试服务器
-//    public static final String BASE_URL = "http://39.108.148.228:80/driver/";
-//    public static final String SOCKET_SERVER = "39.108.148.228";
-//    public static final int SOCKET_PORT = 8888;
+    public static final String BASE_URL = "http://39.108.148.228:80/driver/";
+    public static final String SOCKET_SERVER = "39.108.148.228";
+    public static final int SOCKET_PORT = 8888;
 
     //外网
-    public static final String BASE_URL = "https://okyueche.com:443/driver/";
-    public static final String SOCKET_SERVER = "39.108.122.38";
-    public static final int SOCKET_PORT = 8888;
+//    public static final String BASE_URL = "https://okyueche.com:443/driver/";
+//    public static final String SOCKET_SERVER = "39.108.122.38";
+//    public static final int SOCKET_PORT = 8888;
     public static final  int SUCCESS = 200;
 
     /**
diff --git a/app/src/main/java/com/okgoincar/slab/SlabGetOrderFragment.kt b/app/src/main/java/com/okgoincar/slab/SlabGetOrderFragment.kt
index 02a0379..99eb1e5 100644
--- a/app/src/main/java/com/okgoincar/slab/SlabGetOrderFragment.kt
+++ b/app/src/main/java/com/okgoincar/slab/SlabGetOrderFragment.kt
@@ -5,10 +5,7 @@
 import android.os.Bundle
 import android.os.CountDownTimer
 import cn.sinata.xldutils.activitys.DialogActivity
-import cn.sinata.xldutils.utils.Toast
-import cn.sinata.xldutils.utils.clickDelay
-import cn.sinata.xldutils.utils.getNowTimeBlack
-import cn.sinata.xldutils.utils.textColor
+import cn.sinata.xldutils.utils.*
 import com.amap.api.maps.model.LatLng
 import com.okgoincar.netUtls.*
 import com.okgoincar.slab.util.UiUtil
@@ -88,7 +85,7 @@
             if (!bean.data.isNullOrEmpty()){
                 MyApplication.getTTsManager().setVideoText(bean.data)
                 var str = bean.data
-                str = str.substring(7,str.indexOf("公里,"))
+                str = str.substring(7,str.indexOf("公里"))
                 tv_title.text = "距您约"+str+"公里"
             }
         }
@@ -123,6 +120,9 @@
             tv_time.text = data.travelTime
             tv_car_type.text = UiUtil.getNameByType(orderType!!)
             tv_start.text = data.startAddress
+            if(data.endAddress.isNullOrEmpty()){
+                tv_end.gone()
+            }
             tv_end.text = data.endAddress
             tv_money.text = data.tipMoney.toString() + "元红包"
             tv_reassign.text = data.type
diff --git a/app/src/main/java/com/okgoincar/slab/SlabMainActivity.kt b/app/src/main/java/com/okgoincar/slab/SlabMainActivity.kt
index a5330ec..c3ae536 100644
--- a/app/src/main/java/com/okgoincar/slab/SlabMainActivity.kt
+++ b/app/src/main/java/com/okgoincar/slab/SlabMainActivity.kt
@@ -154,7 +154,7 @@
         clickClose: () -> Unit,
         clickSure: () -> Unit
     ): PopupWindow {
-        var dialog = PopupWindow(createView(R.layout.dialog_sure_and_del_slab,context))
+        var dialog = PopupWindow(createView(R.layout.dialog_sure_and_del_slab, context))
         dialog.width = ViewGroup.LayoutParams.MATCH_PARENT
         dialog.height = ViewGroup.LayoutParams.MATCH_PARENT
 
@@ -291,7 +291,7 @@
         }
 
         tv_title_top.clickDelay {
-
+//            showOrder("3170","2",100,1)
         }
 
         view_mode.clickDelay {
diff --git a/app/src/main/java/com/okgoincar/slab/SlabOrderListFragment.kt b/app/src/main/java/com/okgoincar/slab/SlabOrderListFragment.kt
index 022391a..a786e71 100644
--- a/app/src/main/java/com/okgoincar/slab/SlabOrderListFragment.kt
+++ b/app/src/main/java/com/okgoincar/slab/SlabOrderListFragment.kt
@@ -48,6 +48,7 @@
             view.tv_time.text = it.time
             view.tv_start.text = it.startAddress
             view.tv_end.text = it.endAddress
+            view.tv_end.visibility = if (it.endAddress.isNullOrEmpty()) View.GONE else View.VISIBLE
             view.tv_money.text = it.redMoney.toString() + "元红包"
             view. tv_money_num.text = it.orderMoney.toString()+"元"
             if (it.payManner != null){
diff --git a/app/src/main/java/com/okgoincar/slab/SlabOrderOverActivity.kt b/app/src/main/java/com/okgoincar/slab/SlabOrderOverActivity.kt
index 41bc491..488b11f 100644
--- a/app/src/main/java/com/okgoincar/slab/SlabOrderOverActivity.kt
+++ b/app/src/main/java/com/okgoincar/slab/SlabOrderOverActivity.kt
@@ -3,6 +3,7 @@
 import android.os.CountDownTimer
 import android.os.Handler
 import android.os.Looper
+import android.view.View
 import cn.sinata.xldutils.utils.*
 import com.okgoincar.netUtls.callNet
 import com.okgoincar.netUtls.getMapByAny
@@ -127,6 +128,7 @@
             tv_name.text = it.data.nickName
             tv_car_num.text = it.data.historyNum.toString() + "次乘车"
             tv_phone.text = it.data.phone
+
             tv_phone.clickDelay {
                 MyUtils.getInstans().CallPhone(this, it.data.phone.toString())
             }
@@ -135,6 +137,7 @@
             tv_time.text = it.data.travelTime
             tv_start_address.text = it.data.startAddress
             tv_end_address.text = it.data.endAddress
+            tv_end_address.visibility = if (it.data.endAddress.isNullOrEmpty()) View.GONE else View.VISIBLE
             tv_red_money.text = it.data.tipMoney.toString() + "元小费"
 //            when (orderBean.data.orderState) {
 //                10, 11 -> {
diff --git a/app/src/main/java/com/okgoincar/slab/SlabTripActivity.kt b/app/src/main/java/com/okgoincar/slab/SlabTripActivity.kt
index 87aa844..226e275 100644
--- a/app/src/main/java/com/okgoincar/slab/SlabTripActivity.kt
+++ b/app/src/main/java/com/okgoincar/slab/SlabTripActivity.kt
@@ -215,7 +215,11 @@
                         moveCamera(aMap, carMarker!!.position)
                     }
                     5, 6 -> {
-                        moveCamera(aMap, carMarker!!.position, endMarker!!.position)
+                        if (endMarker == null){
+                            moveCamera(aMap, carMarker!!.position)
+                        }else{
+                            moveCamera(aMap, carMarker!!.position, endMarker!!.position)
+                        }
                     }
                 }
             }
@@ -232,11 +236,18 @@
 
                     }
                     5, 6 -> {
-//                        startAMapNavi(endMarker!!)
-                        startActivity<GPSNaviActivity>(
-                            "start" to carMarker!!.position,
-                            "end" to endMarker!!.position
-                        )
+                        if (endMarker == null){
+                            toast("暂无终点")
+                        }else{
+                            startActivity<GPSNaviActivity>(
+                                "start" to carMarker!!.position,
+                                "end" to endMarker!!.position
+                            )
+                        }
+
+                    }
+                    else -> {
+
                     }
                 }
             }
@@ -420,7 +431,19 @@
                         }
                     }
                 })
+        }else{
+            var view =
+                creatCarView()
+            carMarker?.setIcon(getIcon(view))
+            if (isMove) {
+                moveCamera(aMap, carMarker!!.position)
+            }
         }
+    }
+
+    fun creatNullView(): View {
+        val carView = createView(R.layout.view_no, this)
+        return carView
     }
 
 
@@ -481,6 +504,7 @@
             tv_time.text = it.data.travelTime
             tv_start_address.text = it.data.startAddress
             tv_end_address.text = it.data.endAddress
+            tv_end_address.visibility = if (it.data.endAddress.isNullOrEmpty()) View.GONE else View.VISIBLE
             tv_red_money.text = it.data.tipMoney.toString() + "元小费"
             tv_phone.text = orderBean.data.phone
             showStatueMapUI(it)
@@ -505,7 +529,7 @@
             view.iv_img.setImageResource(R.mipmap.zhongdian)
             endMarker = addMarker(aMap, it.data.endLat, it.data.endLon, view, "")
         }
-        endMarker!!.isVisible = false
+        endMarker?.isVisible = false
         if (carMarker == null) {
             val carView = creatCarView("")
             carMarker = addMarker(
@@ -531,6 +555,13 @@
         carView.iv_img.setImageResource(R.mipmap.icon_car)
         carView.tv_hint.visible()
         carView.tv_hint.text = content
+        return carView
+    }
+
+    fun creatCarView(): View {
+        val carView = createView(R.layout.item_map_market, this)
+        carView.iv_img.setImageResource(R.mipmap.icon_car)
+        carView.tv_hint.gone()
         return carView
     }
 
@@ -642,17 +673,6 @@
         }
     }
 
-    fun getTance(startLatLng: LatLng, endLatLng: LatLng, onclick: (tance: Float) -> Unit) {
-        AMapKit.initRouteLine(
-            this,
-            startLatLng,
-            endLatLng,
-            object : (MutableList<LatLng>, Float, Long) -> Unit {
-                override fun invoke(p1: MutableList<LatLng>, p2: Float, p3: Long) {
-                    onclick(p2)
-                }
-            })
-    }
 
     override fun setOnclick() {
 
diff --git a/app/src/main/java/com/okgoincar/slab/adapter/SlabMainAdapter.kt b/app/src/main/java/com/okgoincar/slab/adapter/SlabMainAdapter.kt
index ece92d2..99cb09e 100644
--- a/app/src/main/java/com/okgoincar/slab/adapter/SlabMainAdapter.kt
+++ b/app/src/main/java/com/okgoincar/slab/adapter/SlabMainAdapter.kt
@@ -34,7 +34,7 @@
             it.itemView.tv_start.text = item.startAddress
             it.itemView.tv_end.text = item.endAddress
             it.itemView.tv_qian.text = item.redMoney.toString() + "元小费"
-
+            it.itemView.tv_end.visibility = if (item.endAddress.isNullOrEmpty()) View.GONE else View.VISIBLE
             it.itemView.clickDelay {
                 when (item.state) {
                     2, 3, 4, 5 -> {
@@ -64,6 +64,7 @@
                         view.tv_time.text = item.time
                         view.tv_start.text = item.startAddress
                         view.tv_end.text = item.endAddress
+                        view.tv_end.visibility = if (item.endAddress.isNullOrEmpty()) View.GONE else View.VISIBLE
                         view.tv_money.text = item.redMoney.toString() + "元红包"
                         view.tv_money_num.text = item.orderMoney.toString() + "元"
                         if (item.payManner != null){
diff --git a/app/src/main/res/layout/view_no.xml b/app/src/main/res/layout/view_no.xml
new file mode 100644
index 0000000..69eb124
--- /dev/null
+++ b/app/src/main/res/layout/view_no.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<androidx.constraintlayout.widget.ConstraintLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="1dp"
+    android:layout_height="1dp">
+
+</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file

--
Gitblit v1.7.1