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

---
 app/src/main/java/com/okgoincar/slab/cargo/CargoActivity.kt |   67 ++++++++++++++++++++++++++++-----
 1 files changed, 56 insertions(+), 11 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 4a494bd..d9a471f 100644
--- a/app/src/main/java/com/okgoincar/slab/cargo/CargoActivity.kt
+++ b/app/src/main/java/com/okgoincar/slab/cargo/CargoActivity.kt
@@ -173,19 +173,36 @@
     }
 
     private fun addSockectCancel() {
-        MyApplication.addOrderView(object : MyApplication.OrderStatueView {
-            override fun orderInfo(data: OrderSimpleData?) {
-                data?.let {
-                    if (it.status == 10 || it.status == 12) {
-                        Handler(Looper.getMainLooper()).post {
+        MyApplication.addOrderView(orderView)
+    }
+
+    var orderView = object : MyApplication.OrderStatueView {
+        override fun orderInfo(data: OrderSimpleData?) {
+            data?.let {
+                if (it.status == 10 || it.status == 11) {
+                    Handler(Looper.getMainLooper()).post {
+                        if (it.status == 10){
                             toast("用户已取消订单")
                             MyApplication.getTTsManager().setVideoText("用户已取消订单")
-                            finish()
+                        }else{
+                            toast("用户已改派订单")
+                            MyApplication.getTTsManager().setVideoText("用户已改派订单")
                         }
+                        finish()
+                    }
+                }
+                if (it.orderType == 4 || it.orderType == 5 && it.orderId.toString() == orderId) {
+                    Handler(Looper.getMainLooper()).post {
+                        initView()
                     }
                 }
             }
-        })
+        }
+    }
+
+    override fun finish() {
+        MyApplication.removeOrderView(orderView)
+        super.finish()
     }
 
     override fun onBackPressed() {
@@ -259,6 +276,10 @@
         }
 
         tv_gap_money.clickDelay {
+            if (orderBean.data.orderState == 12){
+                toast("用户已支付差价,不能修改")
+                return@clickDelay
+            }
             showGaoMoneyDialog()
         }
 
@@ -271,8 +292,11 @@
                         showStatueMapUI(it)
                     }
                     5, 6 -> {
-                        it.data.orderState = 6
-                        showChangeCargoDialog()
+                        sendCode {
+                            it.data.orderState = 6
+                            showChangeCargoDialog()
+                        }
+
                     }
                     12 -> {
                         it.data.orderState = 5
@@ -301,6 +325,15 @@
         }
     }
 
+    private fun sendCode(function: () -> Unit) {
+        var map = getMapByAny()
+        map["orderId"] = orderId
+        callNet(true,Api.sendVerificationCode, map) {
+            function()
+        }
+    }
+
+
     private fun callNumberCargo(num: String, click: () -> Unit) {
         var map = getMapByAny()
         map["orderId"] = orderId
@@ -314,7 +347,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()
         }
@@ -531,6 +564,9 @@
                 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)
         }
     }
@@ -726,7 +762,11 @@
             callNumberCargo(num){
                 dialog.dismiss()
                 callStartOrder(this,6){
-                    onBackPressed()
+                    startActivity<SlabCargoOverActivity>(
+                        "orderId" to orderId,
+                        "orderType" to orderType
+                    )
+                    finish()
                 }
             }
         }
@@ -759,8 +799,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