package com.fuban.user.ui.mine.adapter
|
|
import android.view.View
|
import android.widget.TextView
|
import cn.sinata.xldutils.adapter.HFRecyclerAdapter
|
import cn.sinata.xldutils.adapter.util.ViewHolder
|
import cn.sinata.xldutils.gone
|
import cn.sinata.xldutils.visible
|
import com.fuban.user.R
|
import com.fuban.user.network.entity.Order
|
import org.jetbrains.anko.sdk27.coroutines.onClick
|
import org.jetbrains.anko.textColorResource
|
import java.util.ArrayList
|
|
class LogisticsAdapter(datas: ArrayList<Order>,private val callback:ClickCallback) : HFRecyclerAdapter<Order>(datas, R.layout.item_logistics_order) {
|
override fun onBind(holder: ViewHolder, position: Int, data: Order) {
|
val pay = holder.bind<TextView>(R.id.tv_pay)
|
val cancel = holder.bind<TextView>(R.id.tv_cancel)
|
val line = holder.bind<View>(R.id.line)
|
holder.setText(R.id.tv_time,data.orderTime)
|
holder.setText(R.id.tv_start,data.startAddress)
|
holder.setText(R.id.tv_goods_typ,data.cargoType)
|
holder.setText(R.id.tv_trip_time,data.time)
|
holder.setText(R.id.tv_state,data.getLogisticsState())
|
holder.bind<TextView>(R.id.tv_state).textColorResource = if (data.state == 10) R.color.textColor66 else R.color.colorPrimary
|
cancel.onClick {
|
callback.onCancel(position)
|
}
|
when(data.state){
|
7->{
|
pay.visible()
|
pay.text = "立即支付(¥%.2f)".format(data.orderMoney)
|
cancel.visible()
|
line.visible()
|
pay.onClick {
|
callback.onPay(position)
|
}
|
}
|
8->{
|
pay.visible()
|
pay.text = "支付差价(¥%.2f)".format(data.differenceMoney)
|
cancel.visible()
|
line.visible()
|
pay.onClick {
|
callback.onPay(position)
|
}
|
}
|
in (1..4),11->{
|
pay.gone()
|
cancel.visible()
|
line.visible()
|
}
|
else->{
|
pay.gone()
|
cancel.gone()
|
line.gone()
|
}
|
}
|
}
|
|
interface ClickCallback{
|
fun onPay(index:Int)
|
fun onCancel(index:Int)
|
}
|
}
|