From 40a8a2c243c15fe8d4eb46f4dbc42a290bd0a63a Mon Sep 17 00:00:00 2001
From: liugl <liugl@sinata.cn>
Date: 星期四, 10 九月 2020 15:34:08 +0800
Subject: [PATCH] 9.10

---
 app/src/main/res/layout/activity_order_over.xml               |   11 ++
 app/src/main/java/com/okgoincar/base/MainBroadCastReceiver.kt |   33 ++++++
 app/src/main/java/com/okgoincar/slab/SlabMainActivity.kt      |   14 +-
 app/src/main/java/com/okgoincar/netUtls/Api.java              |    2 
 app/src/main/java/com/okgoincar/slab/SlabOrderOverActivity.kt |  117 +++++++++++++++-------
 app/src/main/java/com/okgoincar/slab/MySlabBaseActivity.java  |    1 
 app/src/main/java/com/okgoincar/slab/SlabLoginActivity.kt     |   68 +++++++++----
 7 files changed, 176 insertions(+), 70 deletions(-)

diff --git a/app/src/main/java/com/okgoincar/base/MainBroadCastReceiver.kt b/app/src/main/java/com/okgoincar/base/MainBroadCastReceiver.kt
index ff3fc27..711e4cf 100644
--- a/app/src/main/java/com/okgoincar/base/MainBroadCastReceiver.kt
+++ b/app/src/main/java/com/okgoincar/base/MainBroadCastReceiver.kt
@@ -67,13 +67,40 @@
         }
     }
 
+//    private fun toLoginActivity(context: Context?, driverCertificate: String?) {
+//        var map = getMapByAny()
+//        map["identification"] = driverCertificate
+//        callNet(context!!, Api.loginByIdentification, map) {
+//            toast("登录成功")
+//            var bean = Gson().fromJson<LoginBean>(it, LoginBean::class.java)
+//            CacheKey.putKeyStr("identification", driverCertificate!!)
+//            CacheKey.putKeyStr("appid", bean.data.appid)
+//            CacheKey.putKeyStr("token", bean.data.token)
+//            CacheKey.putKeyStr("userId", bean.data.id.toString())
+//            CacheKey.putKeyStr("serverId", bean.data.serverId.toString())
+//            CacheKey.putKeyStr("terminalName", bean.data.terminalId.toString())
+//            Handler(Looper.getMainLooper()).post {
+//                var intent = Intent()
+//                intent.setClass(context, SlabMainActivity::class.java)
+//                intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK
+//                context.startActivity(intent)
+//            }
+//        }
+//    }
+
     private fun toLoginActivity(context: Context?, driverCertificate: String?) {
         var map = getMapByAny()
-        map["identification"] = driverCertificate
-        callNet(context!!, Api.loginByIdentification, map) {
+        if (driverCertificate.isNullOrEmpty()){
+//            toast("资格证号:空")
+            return
+        }else{
+//            toast("资格证号:"+driverCertificate)
+        }
+        map["taxiAptitudeCard"] = driverCertificate
+        callNet(context!!, Api.loginByTaxiAptitudeCard, map) {
             toast("登录成功")
             var bean = Gson().fromJson<LoginBean>(it, LoginBean::class.java)
-            CacheKey.putKeyStr("identification", driverCertificate!!)
+            CacheKey.putKeyStr("identification", driverCertificate)
             CacheKey.putKeyStr("appid", bean.data.appid)
             CacheKey.putKeyStr("token", bean.data.token)
             CacheKey.putKeyStr("userId", bean.data.id.toString())
diff --git a/app/src/main/java/com/okgoincar/netUtls/Api.java b/app/src/main/java/com/okgoincar/netUtls/Api.java
index 8f9f526..8e8053f 100644
--- a/app/src/main/java/com/okgoincar/netUtls/Api.java
+++ b/app/src/main/java/com/okgoincar/netUtls/Api.java
@@ -34,6 +34,8 @@
     public static String work2 = "api/driver/work2"; //api/driver/work2 司机上下班操作
     public static String loginByIdentification = "base/driver/loginByIdentification"; //api/driver/work2 司机身份证登录
     public static String loginOut = "api/driver/loginOut"; ///api/driver/loginOut 司机退出登录
+    public static String loginByTaxiAptitudeCard = "base/driver/loginByTaxiAptitudeCard";
+    public static String completeOrder = "api/taxi/completeOrder"; // /api/taxi/completeOrder 手动确认订单完成
 
 
     /***
diff --git a/app/src/main/java/com/okgoincar/slab/MySlabBaseActivity.java b/app/src/main/java/com/okgoincar/slab/MySlabBaseActivity.java
index 245c088..afecbb2 100644
--- a/app/src/main/java/com/okgoincar/slab/MySlabBaseActivity.java
+++ b/app/src/main/java/com/okgoincar/slab/MySlabBaseActivity.java
@@ -228,7 +228,6 @@
         } else {
             startActivity(tClass);
         }
-
     }
 
     public void startActivityResult(Class tClass, int code) {
diff --git a/app/src/main/java/com/okgoincar/slab/SlabLoginActivity.kt b/app/src/main/java/com/okgoincar/slab/SlabLoginActivity.kt
index c759399..f3e7c5a 100644
--- a/app/src/main/java/com/okgoincar/slab/SlabLoginActivity.kt
+++ b/app/src/main/java/com/okgoincar/slab/SlabLoginActivity.kt
@@ -1,6 +1,7 @@
 package com.okgoincar.slab
 
 import android.content.Context
+import android.content.Intent
 import android.os.Handler
 import android.os.Looper
 import android.widget.Toast
@@ -45,25 +46,26 @@
 
     override fun setOnclick() {
         tv_login.clickDelay {
-            if (et_number.getContent().isNullOrEmpty()) {
-                toast("请输入工号")
-                return@clickDelay
-            }
-            var map = getMapByAny()
-            map["jobNum"] = et_number.getContent().trim()
-            callNet(true, Api.loginByJobNumber, map) {
-                toast("登录成功")
-                var bean = gson.fromJson<LoginBean>(it, LoginBean::class.java)
-                CacheKey.putKeyStr("jobNum",et_number.getContent().trim())
-                CacheKey.putKeyStr("appid", bean.data.appid)
-                CacheKey.putKeyStr("token", bean.data.token)
-                CacheKey.putKeyStr("userId", bean.data.id.toString())
-                CacheKey.putKeyStr("serverId", bean.data.serverId.toString())
-                CacheKey.putKeyStr("terminalName", bean.data.terminalId.toString())
-                finish()
-                startActivity<SlabMainActivity>()
-            }
-//            toLoginActivity(this,"452229198204010012")
+//            if (et_number.getContent().isNullOrEmpty()) {
+//                toast("请输入工号")
+//                return@clickDelay
+//            }
+//            var map = getMapByAny()
+//            map["jobNum"] = et_number.getContent().trim()
+//            callNet(true, Api.loginByJobNumber, map) {
+//                toast("登录成功")
+//                var bean = gson.fromJson<LoginBean>(it, LoginBean::class.java)
+//                CacheKey.putKeyStr("jobNum",et_number.getContent().trim())
+//                CacheKey.putKeyStr("appid", bean.data.appid)
+//                CacheKey.putKeyStr("token", bean.data.token)
+//                CacheKey.putKeyStr("userId", bean.data.id.toString())
+//                CacheKey.putKeyStr("serverId", bean.data.serverId.toString())
+//                CacheKey.putKeyStr("terminalName", bean.data.terminalId.toString())
+//                finish()
+//                startActivity<SlabMainActivity>()
+//            }
+//            51168119911111447X  15928265276 11111q
+//            toLoginActivity(this,"51168119911111447X")
 
         }
     }
@@ -94,19 +96,41 @@
         }
     }
 
+//    private fun toLoginActivity(context: Context?, driverCertificate: String?) {
+//        var map = getMapByAny()
+//        map["taxiAptitudeCard"] = driverCertificate
+//        callNet(context!!,Api.loginByTaxiAptitudeCard,map){
+//            cn.sinata.xldutils.utils.toast("登录成功")
+//            var bean = Gson().fromJson<LoginBean>(it, LoginBean::class.java)
+//            CacheKey.putKeyStr("appid", bean.data.appid)
+//            CacheKey.putKeyStr("token", bean.data.token)
+//            CacheKey.putKeyStr("userId", bean.data.id.toString())
+//            CacheKey.putKeyStr("serverId", bean.data.serverId.toString())
+//            CacheKey.putKeyStr("terminalName", bean.data.terminalId.toString())
+//            Handler(Looper.getMainLooper()).post {
+//                context.startActivity<SlabMainActivity>()
+//            }
+//        }
+//    }
+
+
     private fun toLoginActivity(context: Context?, driverCertificate: String?) {
         var map = getMapByAny()
         map["identification"] = driverCertificate
-        callNet(context!!,Api.loginByIdentification,map){
-            cn.sinata.xldutils.utils.toast("登录成功")
+        callNet(context!!, Api.loginByIdentification, map) {
+            toast("登录成功")
             var bean = Gson().fromJson<LoginBean>(it, LoginBean::class.java)
+            CacheKey.putKeyStr("identification", driverCertificate!!)
             CacheKey.putKeyStr("appid", bean.data.appid)
             CacheKey.putKeyStr("token", bean.data.token)
             CacheKey.putKeyStr("userId", bean.data.id.toString())
             CacheKey.putKeyStr("serverId", bean.data.serverId.toString())
             CacheKey.putKeyStr("terminalName", bean.data.terminalId.toString())
             Handler(Looper.getMainLooper()).post {
-                context.startActivity<SlabMainActivity>()
+                var intent = Intent()
+                intent.setClass(context, SlabMainActivity::class.java)
+                intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK
+                context.startActivity(intent)
             }
         }
     }
diff --git a/app/src/main/java/com/okgoincar/slab/SlabMainActivity.kt b/app/src/main/java/com/okgoincar/slab/SlabMainActivity.kt
index 6809a4f..e50b41e 100644
--- a/app/src/main/java/com/okgoincar/slab/SlabMainActivity.kt
+++ b/app/src/main/java/com/okgoincar/slab/SlabMainActivity.kt
@@ -401,10 +401,12 @@
         var identification = CacheKey.getKeyStr("identification")
         if (jobNum.isNotEmpty()) {
             var map = getMapByAny()
-            map["jobNum"] = jobNum
-            callNet(true, Api.loginByJobNumber, map) {
-                var bean = gson.fromJson<LoginBean>(it, LoginBean::class.java)
-                CacheKey.putKeyStr("jobNum", jobNum)
+            map["taxiAptitudeCard"] = identification
+            callNet(this, Api.loginByTaxiAptitudeCard, map,{
+                ok()
+            }) {
+                var bean = Gson().fromJson<LoginBean>(it, LoginBean::class.java)
+                CacheKey.putKeyStr("identification", identification)
                 CacheKey.putKeyStr("appid", bean.data.appid)
                 CacheKey.putKeyStr("token", bean.data.token)
                 CacheKey.putKeyStr("userId", bean.data.id.toString())
@@ -414,8 +416,8 @@
             }
         } else if (identification.isNotEmpty()) {
             var map = getMapByAny()
-            map["identification"] = identification
-            callNet(true, Api.loginByIdentification, map) {
+            map["taxiAptitudeCard"] = identification
+            callNet(true, Api.loginByTaxiAptitudeCard, map) {
                 var bean = Gson().fromJson<LoginBean>(it, LoginBean::class.java)
                 CacheKey.putKeyStr("identification", identification)
                 CacheKey.putKeyStr("appid", bean.data.appid)
diff --git a/app/src/main/java/com/okgoincar/slab/SlabOrderOverActivity.kt b/app/src/main/java/com/okgoincar/slab/SlabOrderOverActivity.kt
index 34b600a..35dc565 100644
--- a/app/src/main/java/com/okgoincar/slab/SlabOrderOverActivity.kt
+++ b/app/src/main/java/com/okgoincar/slab/SlabOrderOverActivity.kt
@@ -28,7 +28,7 @@
         intent.getStringExtra("orderId")
     }
 
-    var time:CountDownTimer? = null
+    var time: CountDownTimer? = null
 
     lateinit var orderBean: OrderBean
 
@@ -43,50 +43,50 @@
 
     override fun onPause() {
         super.onPause()
-        if (time != null){
+        if (time != null) {
             time!!.cancel()
         }
     }
 
     override fun setBlackMode(b: Boolean?) {
         super.setBlackMode(b)
-        if(b!!){ //晚上
+        if (b!!) { //晚上
             rl_main_bg.setBackgroundResource(R.color.black)
             ll_content_web.setBackgroundResource(R.drawable.bg_slab_main_8_black)
             ll_order_top.setBackgroundResource(R.drawable.bg_slab_main_8_black_bottom)
 //            ll_pay_result.setBackgroundResource(R.drawable.bg_slab_main_8_shen_black)
             iv_back_slab.setImageResource(R.mipmap.icon_back_slab)
-            tv_title_slab.textColor(this,R.color.write)
-            tv_name.textColor(this,R.color.write)
-            tv_car_num.textColor(this,R.color.write)
-            tv_phone.textColor(this,R.color.write)
-            tv_time.textColor(this,R.color.write)
+            tv_title_slab.textColor(this, R.color.write)
+            tv_name.textColor(this, R.color.write)
+            tv_car_num.textColor(this, R.color.write)
+            tv_phone.textColor(this, R.color.write)
+            tv_time.textColor(this, R.color.write)
             tv_time.setDrawableLeft(R.mipmap.icon_time_gray)
-            tv_start_address.textColor(this,R.color.write)
-            tv_end_address.textColor(this,R.color.write)
-            tv_red_money.textColor(this,R.color.write)
-            tv_pay_result_title.textColor(this,R.color.write)
-            tv_order_type.textColor(this,R.color.write)
-            tv_hive_small_money.textColor(this,R.color.write)
+            tv_start_address.textColor(this, R.color.write)
+            tv_end_address.textColor(this, R.color.write)
+            tv_red_money.textColor(this, R.color.write)
+            tv_pay_result_title.textColor(this, R.color.write)
+            tv_order_type.textColor(this, R.color.write)
+            tv_hive_small_money.textColor(this, R.color.write)
             tv_phone.setDrawableLeft(R.mipmap.icon_dial_slab)
-        }else{
+        } else {
             rl_main_bg.setBackgroundResource(R.color.write)
             ll_content_web.setBackgroundResource(R.drawable.write_top_10)
             ll_order_top.setBackgroundResource(R.drawable.write_bottom_10)
 //            ll_pay_result.setBackgroundResource(R.drawable.bg_white_round5)
             iv_back_slab.setImageResource(R.mipmap.icon_back_black)
-            tv_title_slab.textColor(this,R.color.black)
-            tv_name.textColor(this,R.color.black)
-            tv_car_num.textColor(this,R.color.black)
-            tv_phone.textColor(this,R.color.black)
-            tv_time.textColor(this,R.color.black)
+            tv_title_slab.textColor(this, R.color.black)
+            tv_name.textColor(this, R.color.black)
+            tv_car_num.textColor(this, R.color.black)
+            tv_phone.textColor(this, R.color.black)
+            tv_time.textColor(this, R.color.black)
             tv_time.setDrawableLeft(R.mipmap.icon_time_xiao)
-            tv_start_address.textColor(this,R.color.black)
-            tv_end_address.textColor(this,R.color.black)
-            tv_red_money.textColor(this,R.color.black)
-            tv_pay_result_title.textColor(this,R.color.black)
-            tv_order_type.textColor(this,R.color.black)
-            tv_hive_small_money.textColor(this,R.color.black)
+            tv_start_address.textColor(this, R.color.black)
+            tv_end_address.textColor(this, R.color.black)
+            tv_red_money.textColor(this, R.color.black)
+            tv_pay_result_title.textColor(this, R.color.black)
+            tv_order_type.textColor(this, R.color.black)
+            tv_hive_small_money.textColor(this, R.color.black)
             tv_phone.setDrawableLeft(R.mipmap.icon_dial)
         }
     }
@@ -148,18 +148,18 @@
         MyApplication.addOrderView(object : MyApplication.OrderStatueView {
             override fun orderInfo(data: OrderSimpleData?) {
                 data?.let {
-                    if (it.status == 8||it.status == 7) {
+                    if (it.status == 8 || it.status == 7) {
                         tv_pay_result_money.textColor(
                             this@SlabOrderOverActivity,
                             R.color.slab_green_over
                         )
                         Handler(Looper.getMainLooper()).post {
-                            if (isPlay)
-                            {
+                            if (isPlay) {
                                 return@post
                             }
                             isPlay = true
-                            MyApplication.getTTsManager().setVideoText("乘客已支付"+orderBean?.data?.orderMoney.toString()+"元")
+                            MyApplication.getTTsManager()
+                                .setVideoText("乘客已支付" + orderBean?.data?.orderMoney.toString() + "元")
                             time = timeOver(20000) {
                                 tv_title_slab.text = "已完成($it)"
                                 if (it == 0) {
@@ -204,20 +204,20 @@
         var map = getMapByAny()
 //        map["orderId"] = orderId
 //        map["orderType"] = orderType
-        callNet(false,Api.orderStateSocket, map) {
+        callNet(false, Api.orderStateSocket, map) {
             val orderSimpleData =
                 Gson().fromJson(
                     it,
                     OrderStatueBean::class.java
                 )
             orderSimpleData?.data?.let {
-                var currentBean:OrderStatueBean.DataBean? = null
-                for (item in it){
-                    if (item.orderId ==orderBean.data?.orderId ){
+                var currentBean: OrderStatueBean.DataBean? = null
+                for (item in it) {
+                    if (item.orderId == orderBean.data?.orderId) {
                         currentBean = item
                     }
                 }
-                if (it.size == 0 || currentBean == null){
+                if (it.size == 0 || currentBean == null) {
                     return@callNet
                 }
                 if (currentBean.state == 8) {
@@ -226,12 +226,12 @@
                         R.color.slab_green_over
                     )
                     Handler(Looper.getMainLooper()).post {
-                        if (isPlay)
-                        {
+                        if (isPlay) {
                             return@post
                         }
                         isPlay = true
-                        MyApplication.getTTsManager().setVideoText("乘客已支付"+ orderBean.data?.orderMoney.toString()+"元")
+                        MyApplication.getTTsManager()
+                            .setVideoText("乘客已支付" + orderBean.data?.orderMoney.toString() + "元")
                         time = timeOver(20000) {
                             tv_title_slab.text = "已完成($it)"
                             if (it == 0) {
@@ -282,5 +282,46 @@
         tv_to_main.clickDelay {
             onBackPressed()
         }
+
+        tv_complete.clickDelay {
+            callComplete() {
+                tv_complete.gone()
+                tv_pay_result_money.textColor(
+                    this@SlabOrderOverActivity,
+                    R.color.slab_green_over
+                )
+                Handler(Looper.getMainLooper()).post {
+                    if (isPlay) {
+                        return@post
+                    }
+                    isPlay = true
+                    MyApplication.getTTsManager()
+                        .setVideoText("乘客已支付" + orderBean.data?.orderMoney.toString() + "元")
+                    time = timeOver(20000) {
+                        tv_title_slab.text = "已完成($it)"
+                        if (it == 0) {
+                            if (time != null) {
+                                time!!.cancel()
+                            }
+                            try {
+                                onBackPressed()
+                            } catch (e: Exception) {
+                            }
+                        }
+                    }
+                }
+            }
+        }
+    }
+
+    private fun callComplete(function: () -> Unit) {
+        var map = getMapByAny()
+        map["orderId"] = orderId
+        map["orderType"] = orderType
+        callNet(Api.completeOrder,map,{
+            function()
+        }){
+
+        }
     }
 }
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_order_over.xml b/app/src/main/res/layout/activity_order_over.xml
index eff4600..769933a 100644
--- a/app/src/main/res/layout/activity_order_over.xml
+++ b/app/src/main/res/layout/activity_order_over.xml
@@ -282,6 +282,17 @@
         <include layout="@layout/include_weight_height"/>
 
         <TextView
+            android:id="@+id/tv_complete"
+            android:layout_width="wrap_content"
+            android:text="我已付款 >"
+            android:textSize="30sp"
+            android:layout_gravity="center"
+            android:layout_marginBottom="10dp"
+            android:textColor="@color/main_yellow"
+            android:gravity="center"
+            android:layout_height="70dp"/>
+
+        <TextView
             android:id="@+id/tv_to_main"
             android:layout_width="match_parent"
             android:layout_height="100dp"

--
Gitblit v1.7.1