From 141376c835204f1f1c33ddfbd365a8162e022a9c Mon Sep 17 00:00:00 2001
From: GamblingDog <125975490@qq.com>
Date: 星期二, 09 九月 2025 11:12:01 +0800
Subject: [PATCH] 交付

---
 app/src/main/java/com/xianning/driver/ui/main/TripActivity.kt |   75 ++++++++++++++++++++++---------------
 1 files changed, 44 insertions(+), 31 deletions(-)

diff --git a/app/src/main/java/com/xianning/driver/ui/main/TripActivity.kt b/app/src/main/java/com/xianning/driver/ui/main/TripActivity.kt
index 09cf54a..3382b36 100644
--- a/app/src/main/java/com/xianning/driver/ui/main/TripActivity.kt
+++ b/app/src/main/java/com/xianning/driver/ui/main/TripActivity.kt
@@ -27,7 +27,6 @@
 import com.xianning.driver.base.gaode.AMapKit.getTimeType
 import com.xianning.driver.base.gaode.AMapKit.initMap
 import com.xianning.driver.base.gaode.AMapKit.moveCamera
-import com.xianning.driver.base.gaode.gpsnav.GPSNaviActivity
 import com.xianning.driver.bean.OrderBean
 import com.xianning.driver.bean.OrderSimpleData
 import com.xianning.driver.netUtls.*
@@ -40,6 +39,9 @@
 import com.xianning.driver.base.gaode.AMapKit.moveCamera3
 import com.xianning.driver.base.gaode.BaiduUtils
 import com.xianning.driver.base.gaode.gpsnav.BaiduNaviActivity
+import com.xianning.driver.bean.MajorMoneyBean
+import com.xianning.driver.ui.main.major.MajorSureMoneyOfflineActivity
+import com.xianning.driver.utils.Cache.CacheKey
 import com.ypx.imagepicker.utils.PBitmapUtils
 import io.reactivex.Observable
 import io.reactivex.android.schedulers.AndroidSchedulers
@@ -192,7 +194,7 @@
 
     private fun onclick() {
         tv_Right.clickDelay {
-            startActivity<ReassignActivity>(
+            startActivity<CancelActivity>(
                                 "orderId" to orderId,
                                 "orderType" to orderType
                             )
@@ -226,12 +228,7 @@
             orderBean.let {
                 when (it.data.orderState) {
                     2, 3 -> {
-//                        startAMapNavi(makeMarker!!)
-//                        startNavi(carMarker!!.position,makeMarker!!.position)
-                        startActivity<GPSNaviActivity>(
-                            "start" to com.amap.api.maps.model.LatLng(carMarker!!.position.latitude,carMarker!!.position.longitude),
-                            "end" to com.amap.api.maps.model.LatLng(makeMarker!!.position.latitude,makeMarker!!.position.longitude)
-                        )
+                        startNavi(carMarker!!.position,makeMarker!!.position)
                     }
 
                     4 -> {
@@ -276,23 +273,10 @@
                         }
                     }
                     5, 6 -> {
-                        it.data.orderState = 6
-                        when(orderType){
-                            "2" -> {
-                                showMoneyTypeDialog()
-                            }
-                            "1" -> {
-                                callStatue(6,{
-                                    startActivity<MajorSureMoneyActivity>(
-                                        "orderId" to orderId,
-                                        "orderType" to orderType
-                                    )
-                                    finish()
-                                }) {
-
-                                }
-                            }
-                        }
+                        if (it.data.payManner == 3||it.data.payManner == 2){ //原型4.7 打表计费直接弹窗确认收款
+                            showMoneyTypeDialog()
+                        }else
+                            callorderMoney()
                     }
                 }
             }
@@ -301,6 +285,33 @@
         iv_phone.clickDelay {
             orderBean.let {
                 Utils.callPhone(this, it.data.phone)
+            }
+        }
+    }
+
+    /**
+     * 陈昆:结束订单前(state==5)需要计算费用
+     */
+    private fun callorderMoney() {
+        var map = getMapByAny()
+        map["orderId"] = orderId
+        map["orderType"] = orderType
+        callNet(false, Api.queryMoneyInfo, map) {
+            orderBean.data.orderState = 6
+            callStatue(6,{
+                if (orderBean.data.payManner == 2){
+                    startActivity<MajorSureMoneyOfflineActivity>(
+                        "orderId" to orderId,
+                        "orderType" to orderType
+                    )
+                }else
+                    startActivity<MajorSureMoneyActivity>(
+                        "orderId" to orderId,
+                        "orderType" to orderType
+                    )
+                finish()
+            }) {
+
             }
         }
     }
@@ -355,7 +366,7 @@
 //            payType = 2
 //        }
 
-        DialogUtil.getDelAndSureDialog(this, "请确定是否收款?", {}, {
+        DialogUtil.getDelAndSureDialog(this, "请确定是否线下收款?", {}, {
 //            pop.dismiss()
             val map = getMapByAny()
             map["orderId"] = orderId
@@ -383,8 +394,10 @@
         listener = object :BDAbstractLocationListener(){
             override fun onReceiveLocation(it: BDLocation?) {
                 it?.let {
-                    MyApplication.aMapLocation = it
-                    carMarker!!.position = LatLng(it.latitude, it.longitude)
+                    if (it.longitude!= 4.9E-324){
+                        MyApplication.aMapLocation = it
+                        carMarker!!.position = LatLng(it.latitude, it.longitude)
+                    }
                 }
                 orderBean.let {
                     when (it.data.orderState) {
@@ -403,7 +416,7 @@
 
     private fun changeCarThree(isMove: Boolean) {
         if (makeMarker != null && carMarker != null) {
-            BaiduUtils.initRouteLine(carMarker!!.position,makeMarker!!.position,object :BaiduUtils.Callback{
+            BaiduUtils.initRouteLine(carMarker!!.position,makeMarker!!.position,null,object :BaiduUtils.Callback{
                 override fun onGetDrivingRouteResult(
                     latLngs: ArrayList<LatLng>?,
                     lineTance: Float,
@@ -421,7 +434,7 @@
 
     private fun changeCarFive(isMove: Boolean) {
         if (carMarker != null && endMarker != null) {
-            BaiduUtils.initRouteLine(carMarker!!.position,endMarker!!.position,object :BaiduUtils.Callback{
+            BaiduUtils.initRouteLine(carMarker!!.position,endMarker!!.position,null,object :BaiduUtils.Callback{
                 override fun onGetDrivingRouteResult(
                     latLngs: ArrayList<LatLng>,
                     lineTance: Float,
@@ -487,7 +500,7 @@
             startMarker = addMarker(aMap, it.data.startLat, it.data.startLon, view, "") as Marker
         }
         startMarker!!.isVisible = false
-        if (endMarker == null) {
+        if (endMarker == null&&it.data.endLat!=0.0) {
             val view = createView(R.layout.item_map_market, this)
             view.iv_img.setImageResource(R.mipmap.end_point)
             endMarker = addMarker(aMap, it.data.endLat, it.data.endLon, view, "") as Marker

--
Gitblit v1.7.1