From 6d95b784f6594b49f103330479f98ab38489946a Mon Sep 17 00:00:00 2001
From: liugl <liugl@sinata.cn>
Date: 星期三, 30 十二月 2020 10:39:18 +0800
Subject: [PATCH] 1:新增上线

---
 app/src/main/java/com/okgoincar/slab/cargo/CargoActivity.kt |   82 +++++++++++++++++++++++++++++++---------
 1 files changed, 63 insertions(+), 19 deletions(-)

diff --git a/app/src/main/java/com/okgoincar/slab/cargo/CargoActivity.kt b/app/src/main/java/com/okgoincar/slab/cargo/CargoActivity.kt
index 4ebcd96..4c73626 100644
--- a/app/src/main/java/com/okgoincar/slab/cargo/CargoActivity.kt
+++ b/app/src/main/java/com/okgoincar/slab/cargo/CargoActivity.kt
@@ -62,7 +62,11 @@
 class CargoActivity : MySlabBaseActivity() {
 
     private fun callOver(contexts: Context, travelFee: Double) {
-        MoneyBroadCastReceiver.callOver(contexts, travelFee)
+        callEnd(contexts, travelFee)
+    }
+
+    private fun callEnd(contexts: Context, travelFee: Double) {
+        showChangeCargoDialog()
     }
 
     private fun callStatue(contexts: Context, i: Int) {
@@ -172,13 +176,21 @@
         MyApplication.addOrderView(object : MyApplication.OrderStatueView {
             override fun orderInfo(data: OrderSimpleData?) {
                 data?.let {
-                    if (it.status == 10 || it.status == 12) {
+                    if (it.status == 10 || it.status == 11) {
                         Handler(Looper.getMainLooper()).post {
-                            toast("用户已取消订单")
-                            MyApplication.getTTsManager().setVideoText("用户已取消订单")
-                            MyApplication.currentOrderType = ""
-                            MyApplication.currentOrderId = ""
+                            if (it.status == 10){
+                                toast("用户已取消订单")
+                                MyApplication.getTTsManager().setVideoText("用户已取消订单")
+                            }else{
+                                toast("用户已改派订单")
+                                MyApplication.getTTsManager().setVideoText("用户已改派订单")
+                            }
                             finish()
+                        }
+                    }
+                    if (it.orderType == 4 || it.orderType == 5 && it.orderId.toString() == orderId) {
+                        Handler(Looper.getMainLooper()).post {
+                            initView()
                         }
                     }
                 }
@@ -257,6 +269,10 @@
         }
 
         tv_gap_money.clickDelay {
+            if (orderBean.data.orderState == 12){
+                toast("用户已支付差价,不能修改")
+                return@clickDelay
+            }
             showGaoMoneyDialog()
         }
 
@@ -299,11 +315,13 @@
         }
     }
 
+
+
     private fun callNumberCargo(num: String, click: () -> Unit) {
         var map = getMapByAny()
         map["orderId"] = orderId
         map["pickUpCode"] = num
-        callNet(true,Api.fillInPickUpCode, map) {
+        callNet(true,Api.                                                                                                                                                            fillInPickUpCode, map) {
             click()
         }
     }
@@ -312,7 +330,7 @@
     private fun callseatmoney(num: String, click: () -> Unit) {
         var map = getMapByAny()
         map["orderId"] = orderId
-        map["difference"] = num
+        map["difference"] = doubleTwo(num.toDouble())
         callNet(true,Api.makeUpTheDifference, map) {
             click()
         }
@@ -465,17 +483,12 @@
 
 
     private fun callOrder() {
-        MyApplication.currentOrderId = orderId
-        MyApplication.currentOrderType = orderType
         var map = getMapByAny()
         map["orderId"] = orderId
         map["orderType"] = orderType
         callNet(this, Api.queryOrderInfo, map) {
             orderBean = gson.fromJson(it, OrderBean::class.java)
             showUi(orderBean)
-//            Handler(Looper.getMainLooper()).postDelayed({
-//                startActivity<SlabOrderOverActivity>("orderId" to orderBean.data.orderId.toString() , "orderType" to orderBean.data.type.toString())
-//            },1000)
         }
         callPersion()
     }
@@ -523,14 +536,20 @@
     private fun showUi(orderBean: OrderBean?) {
         orderBean?.let {
             tv_name.text = orderBean.data.nickName
-            tv_car_num.text = it.data.historyNum.toString() + "次乘车"
+            tv_car_num.text = it.data.historyNum.toString() + "次寄物"
             tv_time.text = it.data.travelTime
             tv_start_address.text = it.data.startAddress
             tv_end_address.text = it.data.endAddress
             tv_name_phone.text = orderBean.data.nickName + "-" + orderBean.data.phone
             tv_type_cargo.text = "普通小件X" + orderBean.data.peopleNumber
             tv_red_money.text = doubleTwo(orderBean.data.tipMoney) + "元加急费"
+            if (orderBean.data.tipMoney == null || orderBean.data.tipMoney <= 0.0){
+                tv_red_money.gone()
+            }
             tv_phone.text = orderBean.data.phone
+            if (!it.data.differenceMoney.isNullOrEmpty() && it.data.differenceMoney.toDouble() > 0){
+                tv_gap_money.text = "¥"+doubleTwo(it.data.differenceMoney.toDouble())+"差价(点击修改)"
+            }
             showStatueMapUI(it)
         }
     }
@@ -585,6 +604,10 @@
     //    流程操作状态(3=开始出发预约点,4=到达预约点,5=开始服务,6=服务结束)
     private fun showStatueMapUI(it: OrderBean) {
         getAllMark(it)
+        tv_gap_money.gone()
+        if (it.data.orderState == 4 || it.data.orderState == 8 || it.data.orderState == 12){
+            tv_gap_money.visible()
+        }
         when (it.data.orderState) {
             2, 3 -> {
                 clickBroad()
@@ -601,7 +624,7 @@
                     setTitleText("去取货物")
                 }
             }
-            4,8-> {
+            4,8,12-> {
                 clickBroad()
                 iv_to_gd.gone()
                 closeLine()
@@ -721,11 +744,27 @@
             }
             callNumberCargo(num){
                 dialog.dismiss()
-                startActivity<SlabOrderOverActivity>(
-                    "orderId" to orderId,
-                    "orderType" to orderType
-                )
+                callStartOrder(this,6){
+                    startActivity<SlabCargoOverActivity>(
+                        "orderId" to orderId,
+                        "orderType" to orderType
+                    )
+                    finish()
+                }
             }
+        }
+    }
+
+    fun callStartOrder(contexts: Context, i: Int,func:() -> Unit) {
+        var map = getMapByAny()
+        map["orderId"] = orderId
+        map["orderType"] = orderType
+        map["state"] = i
+        map["lat"] = MyApplication.getLocation().latitude
+        map["lon"] = MyApplication.getLocation().longitude
+        callNet(contexts, Api.process, map) {
+            EventBus.getDefault().post(BaseEvent(BaseEvent.UP_TRIP))
+            func()
         }
     }
 
@@ -743,8 +782,13 @@
                 toast("请输入金额")
                 return@setOnClickListener
             }
+            if (num.toDouble() > 9999) {
+                toast("金额不能大于9999元")
+                return@setOnClickListener
+            }
             callseatmoney(num){
                 dialog.dismiss()
+                tv_gap_money.text = "¥"+doubleTwo(num.toDouble())+"差价(点击修改)"
                 toast("设置成功")
             }
         }

--
Gitblit v1.7.1