From 664834b83a4c50cac039bbfa49f5164ca9bf8e3c Mon Sep 17 00:00:00 2001
From: liugl <liugl@sinata.cn>
Date: 星期五, 07 八月 2020 17:05:17 +0800
Subject: [PATCH] 8.7

---
 app/src/main/java/com/okgoincar/slab/SlabMainActivity.kt |  257 +++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 189 insertions(+), 68 deletions(-)

diff --git a/app/src/main/java/com/okgoincar/slab/SlabMainActivity.kt b/app/src/main/java/com/okgoincar/slab/SlabMainActivity.kt
index 61dd992..63e6c6a 100644
--- a/app/src/main/java/com/okgoincar/slab/SlabMainActivity.kt
+++ b/app/src/main/java/com/okgoincar/slab/SlabMainActivity.kt
@@ -1,5 +1,6 @@
 package com.okgoincar.slab
 
+import android.content.Context
 import android.content.Intent
 import android.content.IntentFilter
 import android.os.Bundle
@@ -9,9 +10,7 @@
 import androidx.recyclerview.widget.LinearLayoutManager
 import androidx.recyclerview.widget.RecyclerView
 import cn.sinata.rxnetty.NettyClient
-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.location.AMapLocation
 import com.amap.api.location.AMapLocationListener
 import com.okgoincar.netUtls.callNet
@@ -23,17 +22,21 @@
 import com.okgoincar.base.AMapKit
 import com.okgoincar.base.BaseEvent
 import com.okgoincar.base.MyApplication
-import com.okgoincar.bean.HomeDataBean
-import com.okgoincar.bean.MainInfoBean
-import com.okgoincar.bean.UserBean
-import com.okgoincar.bean.UserInfoBean
+import com.okgoincar.bean.*
 import com.okgoincar.netUtls.Api
+import com.okgoincar.netUtls.sendAudio
 import com.okgoincar.slab.event.SlabMineEventActivity
+import com.okgoincar.slab.util.DialogUtil
 import com.okgoincar.utils.DateUtil
+import com.okgoincar.utils.download.DownloadUtil
 import com.okgoincar.utils.glide.GlideUtil
+import kotlinx.android.synthetic.main.slab_activity_login.*
 import kotlinx.android.synthetic.main.slab_activity_main.*
+import kotlinx.android.synthetic.main.slab_activity_main.tv_name
+import org.greenrobot.eventbus.EventBus
 import org.jetbrains.anko.startActivity
 import org.jetbrains.anko.toast
+import java.lang.Exception
 
 class SlabMainActivity : MySlabBaseActivity(), AMapLocationListener {
 
@@ -50,32 +53,36 @@
 
     override fun setBlackMode(b: Boolean?) {
         super.setBlackMode(b)
-        if (b!!) {
+        if (b!!) { //晚上
             ct_bg.setBackgroundResource(R.color.black_191919)
-            ll_top.setBackgroundResource(R.drawable.bg_green_top_black)
-            tv_server_ing.textColor(this,R.color.write)
-            iv_small.textColor(this,R.color.write)
-            tv_wait_server.textColor(this,R.color.write)
-            tv_code_num.textColor(this,R.color.write)
-            tv_name.textColor(this,R.color.write)
-            tv_car_num.textColor(this,R.color.write)
-            tv_star_num.textColor(this,R.color.write)
-            tv_current_time.textColor(this,R.color.write)
-            tv_company.textColor(this,R.color.write)
-            tv_time.textColor(this,R.color.write)
+            ll_top.setBackgroundResource(R.drawable.bg_gray_top)
+            tv_server_ing.textColor(this, R.color.write)
+            iv_small.textColor(this, R.color.write)
+            tv_wait_server.textColor(this, R.color.write)
+            tv_code_num.textColor(this, R.color.write)
+            tv_name.textColor(this, R.color.write)
+            tv_car_num.textColor(this, R.color.write)
+            tv_star_num.textColor(this, R.color.write)
+            tv_current_time.textColor(this, R.color.write)
+            tv_company.textColor(this, R.color.write)
+            tv_time.textColor(this, R.color.write)
+            tv_car_statue.textColor(this, R.color.write)
+            tv_title.textColor(this, R.color.slab_yellow_zhong)
         } else {
-            ll_top.setBackgroundResource(R.drawable.bg_white_round5)
+            ll_top.setBackgroundResource(R.drawable.bg_green_top)
             ct_bg.setBackgroundResource(R.drawable.write)
-            tv_server_ing.textColor(this,R.color.black)
-            iv_small.textColor(this,R.color.black)
-            tv_wait_server.textColor(this,R.color.black)
-            tv_code_num.textColor(this,R.color.black)
-            tv_name.textColor(this,R.color.black)
-            tv_car_num.textColor(this,R.color.black)
-            tv_star_num.textColor(this,R.color.black)
-            tv_current_time.textColor(this,R.color.black)
-            tv_company.textColor(this,R.color.black)
-            tv_time.textColor(this,R.color.black)
+            tv_server_ing.textColor(this, R.color.black)
+            iv_small.textColor(this, R.color.black)
+            tv_wait_server.textColor(this, R.color.black)
+            tv_code_num.textColor(this, R.color.black)
+            tv_name.textColor(this, R.color.black)
+            tv_car_num.textColor(this, R.color.black)
+            tv_star_num.textColor(this, R.color.black)
+            tv_current_time.textColor(this, R.color.black)
+            tv_company.textColor(this, R.color.black)
+            tv_time.textColor(this, R.color.black)
+            tv_car_statue.textColor(this, R.color.black)
+            tv_title.textColor(this, R.color.yellow_ffa72d)
 
         }
     }
@@ -84,12 +91,19 @@
         setTitleText("OK出行司机")
         showHeader(false)
         showTitle(false)
-        addFragment(mainFragment, R.id.rl_container)
-        AMapKit.initLocation(this, this)
-        initCall()
-        NettyClient.getInstance().startService()
-        callPersion()
+        callLogin {
+            view_mode.isSelected = !getNowTimeBlack()
+            addFragment(mainFragment, R.id.rl_container)
+            AMapKit.initLocation(this, this)
+            initCall()
+            NettyClient.getInstance().startService()
+            callPersion()
+//        showOrder("2221", "2", 100, 2)
+            callVersion()
+        }
+        //重重新登录 用来上线
     }
+
 
     private fun callPersion() {
         callNet(true, Api.queryInfo, getMapByAny()) {
@@ -101,12 +115,16 @@
 
     override fun onResume() {
         super.onResume()
-        mainFragment.refresh()
+        try {
+            mainFragment.refresh()
+        }catch (e:Exception){
+
+        }
     }
 
     private fun showUI(data: UserInfoBean?) {
         data?.let {
-            tv_code_num.text = "证号:" + data.taxiAptitudeCard
+            tv_code_num.text = "资格证号:" + data.taxiAptitudeCard
             tv_name.text = "姓名:" + it.name
             tv_car_num.text = "车牌:" + it.licensePlate
             recycler_view_start.layoutManager =
@@ -118,11 +136,11 @@
             recycler_view_start.adapter = SlabStartAdapter(it.score.toDouble())
             tv_company.text = "公司:" + it.company
             tv_time.text = "发证日期:" + it.networkCarlssueDate
-            GlideUtil.load(this, it.avatar, iv_head, 1)
+            GlideUtil.load(this, it.avatar, iv_head, 8)
             tv_current_time.text = DateUtil.getTime(
                 DateUtil.TYPE7,
                 System.currentTimeMillis()
-            ) + "\n" + DateUtil.getWeek(System.currentTimeMillis())
+            ) + DateUtil.getWeek(System.currentTimeMillis())
         }
     }
 
@@ -132,10 +150,17 @@
             var data = gson.fromJson<HomeDataBean>(it, HomeDataBean::class.java)
             homeDataBean = data
             tv_car.text = if (data.data.work == 1) "收车" else "出车"
-            if (data.data.work == 1){
+            if (data.data.work == 1) {
                 MyApplication.getTTsManager().setVideoText("您正在上班中")
-            }else{
-                MyApplication.getTTsManager().setVideoText("您已下班")
+            } else {
+//                MyApplication.getTTsManager().setVideoText("您已下班")
+                var mapC = getMapByAny()
+                mapC["type"] = "2"
+                callNet(true, Api.work2, mapC) {
+                    homeDataBean?.data?.work = 1
+                    tv_car.text = "收车"
+                    MyApplication.getTTsManager().setVideoText("您正在上班中")
+                }
             }
         }
 
@@ -157,9 +182,9 @@
     override fun setOnclick() {
         tv_server_ing.setOnClickListener {
             tv_server_ing.textColor(this, R.color.main_yellow)
-            if (getNowTimeBlack()){
+            if (getNowTimeBlack()) {
                 tv_wait_server.textColor(this, R.color.white)
-            }else{
+            } else {
                 tv_wait_server.textColor(this, R.color.black)
             }
             mainFragment.state = 1
@@ -168,9 +193,9 @@
 
         tv_wait_server.setOnClickListener {
             tv_wait_server.textColor(this, R.color.main_yellow)
-            if (getNowTimeBlack()){
+            if (getNowTimeBlack()) {
                 tv_server_ing.textColor(this, R.color.white)
-            }else{
+            } else {
                 tv_server_ing.textColor(this, R.color.black)
             }
             mainFragment.state = 2
@@ -178,7 +203,6 @@
         }
 
         tv_name.clickDelay {
-            toast("点亮网约")
         }
 
         tv_car_num.clickDelay {
@@ -189,27 +213,53 @@
 
         }
 
+        tv_more.clickDelay {
+            startActivity<SlabOrderListActivity>()
+        }
+
+
         ll_task.clickDelay {
             startActivity<SlabMineEventActivity>()
         }
 
+        tv_title_top.clickDelay {
+
+        }
+
+        view_mode.clickDelay {
+            view_mode.isSelected = !view_mode.isSelected
+            if (getNowTimeBlack()) {
+                CacheKey.putKeyStr("date_mode", System.currentTimeMillis().toString())
+                CacheKey.putKeyStr("mode_now_time", "1")//记录为点击切换的颜色 1 白色 2 黑色
+                setBlackMode(false)
+                mainFragment.adapter.notifyDataSetChanged()
+            } else {
+                CacheKey.putKeyStr("date_mode", System.currentTimeMillis().toString())
+                CacheKey.putKeyStr("mode_now_time", "2")
+                setBlackMode(true)
+                mainFragment.adapter.notifyDataSetChanged()
+            }
+
+
+        }
 
         tv_car.clickDelay {
-            if (homeDataBean?.data?.work == 1) {
-                callNet(true, Api.work2, getMapByAny()) {
-                    homeDataBean?.data?.work = 2
-                    tv_car.text = "出车"
-                    MyApplication.getTTsManager().setVideoText("您已下班")
-                }
-            } else {
-                var map = getMapByAny()
-                map["type"] = "2"
-                callNet(true, Api.work2, map) {
-                    homeDataBean?.data?.work = 1
-                    tv_car.text = "收车"
-                    MyApplication.getTTsManager().setVideoText("您正在上班中")
-                }
-            }
+
+            //            if (homeDataBean?.data?.work == 1) {
+//                callNet(true, Api.work2, getMapByAny()) {
+//                    homeDataBean?.data?.work = 2
+//                    tv_car.text = "出车"
+//                    MyApplication.getTTsManager().setVideoText("您已下班")
+//                }
+//            } else {
+//                var map = getMapByAny()
+//                map["type"] = "2"
+//                callNet(true, Api.work2, map) {
+//                    homeDataBean?.data?.work = 1
+//                    tv_car.text = "收车"
+//                    MyApplication.getTTsManager().setVideoText("您正在上班中")
+//                }
+//            }
         }
 
     }
@@ -224,7 +274,7 @@
                 .show()
             mBackAppTime = System.currentTimeMillis()
         } else {
-            closeAll()
+            moveTaskToBack(true)
         }
     }
 
@@ -239,22 +289,93 @@
                     toast("收到显示屏信息")
                 }
             }
+            BaseEvent.ERROR_INFO -> {
+                try {
+                    mainFragment.refresh()
+                }catch (e:Exception){
+
+                }
+            }
         }
     }
 
     override fun onLocationChanged(p0: AMapLocation?) {
-        if (p0 == null){
-            toast("高德位置是空的")
+        if (p0 == null) {
+//            toast("高德位置是空的")
             return
         }
         if (p0.errorCode == 0) {
-            toast("定位成功")
+//            toast("定位成功")
             MyApplication.aMapLocation = p0
             CacheKey.putKeyStr("location", Gson().toJson(p0))
-        }else{
+        } else {
             p0.let {
-                toast("定位失败"+it.errorCode.toString())
+//                toast("定位失败" + it.errorCode.toString())
             }
         }
     }
+
+    private fun callVersion() {
+        var map = getMapByAny()
+        callNet(false, Api.queryNewData_, map) {
+            var bean = gson.fromJson<VersionBean>(it, VersionBean::class.java)
+            if (bean.data.version != "" && bean.data.version != Utils.getAppVersion(this)) {
+                if (bean.data.mandatory == 0) {
+                    var pop =
+                        DialogUtil.getSlabDelAndSurePopWindow(this, "确定", "取消", "有新版本是否更新", {}) {
+                            DownloadUtil(this).downloadAPK(bean.data.url, "ok出行车载端")
+                        }
+                    pop.showCenter(window.decorView)
+                } else {
+                    var pop = DialogUtil.getSlabDelAndSurePopWindow(
+                        this,
+                        "确定",
+                        "取消",
+                        "版本已过时,是否强制升级?",
+                        {}) {
+                        DownloadUtil(this).downloadAPK(bean.data.url, "ok出行车载端")
+                        toast("后台开始下载,请等待")
+                    }
+                    pop.showCenter(window.decorView)
+                }
+
+            } else {
+            }
+        }
+    }
+
+
+    private fun callLogin(ok: () -> Unit) {
+        var jobNum = CacheKey.getKeyStr("jobNum")
+        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)
+                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())
+                ok()
+            }
+        } else if (identification.isNotEmpty()) {
+            var map = getMapByAny()
+            map["identification"] = identification
+            callNet(true, Api.loginByIdentification, map) {
+                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())
+                CacheKey.putKeyStr("serverId", bean.data.serverId.toString())
+                CacheKey.putKeyStr("terminalName", bean.data.terminalId.toString())
+                ok()
+            }
+        } else {
+            ok()
+        }
+    }
 }
\ No newline at end of file

--
Gitblit v1.7.1