8.7
liugl
2020-08-07 664834b83a4c50cac039bbfa49f5164ca9bf8e3c
app/src/main/java/com/okgoincar/slab/SlabOrderOverActivity.kt
@@ -1,9 +1,9 @@
package com.okgoincar.slab
import android.os.CountDownTimer
import android.os.Handler
import android.os.Looper
import cn.sinata.xldutils.utils.clickDelay
import cn.sinata.xldutils.utils.gone
import cn.sinata.xldutils.utils.visible
import cn.sinata.xldutils.utils.*
import com.okgoincar.netUtls.callNet
import com.okgoincar.netUtls.getMapByAny
import com.google.gson.Gson
@@ -12,8 +12,10 @@
import com.okgoincar.bean.OrderBean
import com.okgoincar.bean.OrderSimpleData
import com.okgoincar.netUtls.Api
import com.okgoincar.netUtls.timeOver
import com.okgoincar.utils.MyUtils
import kotlinx.android.synthetic.main.activity_order_over.*
import java.lang.Exception
class SlabOrderOverActivity : MySlabBaseActivity() {
@@ -25,29 +27,66 @@
        intent.getStringExtra("orderId")
    }
    var time:CountDownTimer? = null
    lateinit var orderBean: OrderBean
    override fun setContentView() {
        setContentView(R.layout.activity_order_over)
        MyApplication.currentOrderType = ""
        MyApplication.currentOrderId = ""
        ll_pay_result.gone()
        showHeader(false)
        showTitle(false)
    }
    override fun onPause() {
        super.onPause()
        if (time != null){
            time!!.cancel()
        }
    }
    override fun setBlackMode(b: Boolean?) {
        super.setBlackMode(b)
        if(b!!){
            rl_main_bg.setBackgroundResource(R.color.black_191919)
        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.color.black_191919)
            ll_pay_result.setBackgroundResource(R.drawable.bg_slab_main_8_shen_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_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_phone.setDrawableLeft(R.mipmap.icon_dial_slab)
        }else{
            rl_main_bg.setBackgroundResource(R.drawable.bg_slab_main)
            ll_content_web.setBackgroundResource(R.drawable.bg_slab_main_8)
            ll_order_top.setBackgroundResource(R.drawable.bg_slab_main_8_bottom)
            ll_pay_result.setBackgroundResource(R.drawable.bg_slab_main_8_shen)
            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_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_phone.setDrawableLeft(R.mipmap.icon_dial)
        }
    }
@@ -59,43 +98,48 @@
        callNet(this, Api.queryOrderInfo, map) {
            orderBean = gson.fromJson(it, OrderBean::class.java)
            showUi(orderBean)
            addSocketLisener()
        }
    }
    private fun showUi(orderBean: OrderBean?) {
        orderBean?.let {
            tv_title_slab.text = "待支付"
            tv_name.text = it.data.nickName
            tv_car_num.text = it.data.historyNum.toString() + "次乘车"
            tv_phone.clickDelay {
                MyUtils.getInstans().CallPhone(this, it.data.phone.toString())
            }
            tv_pay_result_money.text = "¥" + it.data.orderMoney.toString()
            tv_pay_result_small_money.text = "¥" + it.data.tipMoney.toString()
            tv_time.text = it.data.travelTime
            tv_start_address.text = it.data.startAddress
            tv_end_address.text = it.data.endAddress
            tv_red_money.text = it.data.tipMoney.toString() + "元小费"
            when (orderBean.data.orderState) {
                10, 11 -> {
                    ll_pay_result.gone()
                    setTitleText("已取消")
                }
                6, 7 -> {
                    if (it.data.payManner == 2) {
                        ll_pay_result.gone()
                        setTitleText("已完成")
                    } else {
                        addSocketLisener()
                        showPayResultText(it, it.data.orderState)
                    }
                }
                8, 9 -> {
                    if (it.data.payManner == 2) {
                        ll_pay_result.gone()
                        setTitleText("已完成")
                    } else {
                        showPayResultText(it, it.data.orderState)
                    }
                }
            }
//            when (orderBean.data.orderState) {
//                10, 11 -> {
//                    ll_pay_result.gone()
//                    setTitleText("已取消")
//                }
//                6, 7 -> {
//                    if (it.data.payManner == 2) {
//                        ll_pay_result.gone()
//                        setTitleText("已完成")
//                    } else {
//                        addSocketLisener()
//                        showPayResultText(it, it.data.orderState)
//                    }
//                }
//                8, 9 -> {
//                    if (it.data.payManner == 2) {
//                        ll_pay_result.gone()
//                        setTitleText("已完成")
//                    } else {
//                        showPayResultText(it, it.data.orderState)
//                    }
//                }
//            }
        }
    }
@@ -103,11 +147,27 @@
        MyApplication.addOrderView(object : MyApplication.OrderStatueView {
            override fun orderInfo(data: OrderSimpleData?) {
                data?.let {
                    if (it.status == 8) {
                        android.os.Handler(Looper.getMainLooper()).post {
                            orderBean.data.orderState = 8
                            showUi(orderBean)
                    if (it.status == 8||it.status == 7) {
                        tv_pay_result_money.textColor(this@SlabOrderOverActivity,R.color.slab_green_over)
                        Handler(Looper.getMainLooper()).post {
                            time = timeOver (20000){
                                tv_title_slab.text = "已完成($it)"
                                if (it == 0){
                                    if (time != null){
                                        time!!.cancel()
                                    }
                                    try {
                                        onBackPressed()
                                    }catch (e:Exception){
                                    }
                                }
                            }
                        }
//                        android.os.Handler(Looper.getMainLooper()).post {
//                            orderBean.data.orderState = 8
//                            showUi(orderBean)
//                        }
                    }
                }
            }
@@ -171,5 +231,9 @@
        iv_back_slab.clickDelay {
            onBackPressed()
        }
        tv_to_main.clickDelay {
            onBackPressed()
        }
    }
}