lmw
2023-06-13 4b7d8d9a038f6522df46d0f14fa07eb940a1b34d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
package com.kuanzhai.driver.ui.adapter
 
import android.view.View
import cn.sinata.xldutils.utils.*
import com.kuanzhai.driver.R
import com.kuanzhai.driver.base.BaseRvAdapter
import com.kuanzhai.driver.base.BaseViewHolder
import com.kuanzhai.driver.bean.BaseBean
import com.kuanzhai.driver.bean.OrderBean
import com.kuanzhai.driver.netUtls.Api
import com.kuanzhai.driver.netUtls.callNet
import com.kuanzhai.driver.netUtls.getMapByAny
import com.kuanzhai.driver.ui.DialogUtil
import com.kuanzhai.driver.ui.driver_server.CancelActivity
import com.kuanzhai.driver.utils.DateUtil
import kotlinx.android.synthetic.main.item_trip_pooling.view.*
import org.jetbrains.anko.startActivity
 
class TripPoolingAdapter : BaseRvAdapter<OrderBean.DataBean>() {
    override fun getLayoutResId(viewType: Int): Int {
        return R.layout.item_trip_pooling
    }
 
    override fun onBindItem(holder: BaseViewHolder?, view: View?, item: OrderBean.DataBean?) {
        holder?.itemView?.apply {
            tv_name_pool.text = item!!.nickName
            var time = DateUtil.dateToStamp(DateUtil.TYPE0,item.travelTime)
            tv_time.text = DateUtil.getTime(DateUtil.TYPE9,time)
            tv_people_num.text = item.peopleNumber + "人"
            tv_start.text = item.startAddress
            tv_end.text = item.endAddress
            tv_money.text = "¥" + item.moneyInfo1Warpper?.orderMoney?.toString()
            rl_bottom.gone()
            tv_money.gone()
            tv_statue.setDrawableNull()
            tv_statue.clickDelay {  }
            tv_pay_statue.gone()
            tv_cancel.gone()
            iv_phone.clickDelay {
                callPhone(context, item.phone)
            }
 
            tv_cancel.clickDelay {
                context.startActivity<CancelActivity>("orderId" to item.orderId.toString(),"orderType" to 1)
            }
            when (item.orderState) { //1=待接单,2=待出发,3=待到达预约地点,4=待乘客上车,5=服务中,6=完成服务,7=待支付,8=待评价,9=已完成,10=已取消,11=改派中,12=取消待支付
                1, 2, 3 -> {
                    tv_statue.text = "待接驾"
                    tv_statue.textColor(context,R.color.red_pooling)
                    rl_bottom.visible()
                    tv_cancel.visible()
                    if (!isFirst(item,data)){
//                        tv_statue.setDrawableLeft(R.mipmap.icon_top)
//                        tv_statue.clickDelay {
//                            toast("调顶接口")
//                        }
                    }
                }
                4 -> {
                    tv_statue.text = "待上车"
                    rl_bottom.visible()
                    tv_cancel.visible()
                    tv_statue.textColor(context,R.color.color_FD6D28)
                }
                5 -> {
                    tv_statue.text = "已上车"
                    tv_statue.textColor(context,R.color.color_FD6D28)
                }
                6, 7 -> {
                    tv_statue.text = "已送达"
                    tv_statue.textColor(context,R.color.color_FD6D28)
                    rl_bottom.visible()
                    tv_money.visible()
                    tv_pay_statue.visible()
                    tv_pay_statue.text = "未支付"
                    tv_pay_statue.textColor(context,R.color.red_pooling)
                }
                8, 9 -> {
                    tv_statue.text = "已送达"
                    rl_bottom.visible()
                    tv_money.visible()
                    tv_pay_statue.visible()
                    tv_pay_statue.text = "已支付"
                    tv_pay_statue.textColor(context,R.color.blue_pooling)
                }
                11 -> {
                    tv_statue.text = "改派中"
                    tv_statue.textColor(context,R.color.color_FD6D28)
                    //改派
                }
                10,12 ->{
                    tv_statue.textColor(context,R.color.color_FD6D28)
                    tv_statue.text = "已取消"
                }
            }
 
        }
    }
 
    private fun isFirst(item: OrderBean.DataBean, data: List<OrderBean.DataBean>): Boolean {
        var isFirst = true
        for (pos in data.indices){
            if (data[pos].orderState in 1..3){
                return data[pos].orderId == item.orderId
            }
        }
        return isFirst
    }
}