package com.kuanzhai.user.ui.mine.adapter
|
|
import android.view.View
|
import android.widget.LinearLayout
|
import android.widget.TextView
|
import androidx.core.os.bundleOf
|
import cn.sinata.xldutils.activity.BaseActivity
|
import cn.sinata.xldutils.adapter.HFRecyclerAdapter
|
import cn.sinata.xldutils.adapter.util.ViewHolder
|
import cn.sinata.xldutils.gone
|
import cn.sinata.xldutils.utils.myToast
|
import cn.sinata.xldutils.visible
|
import com.kuanzhai.user.R
|
import com.kuanzhai.user.dialog.TipDialog
|
import com.kuanzhai.user.interfaces.StringCallback
|
import com.kuanzhai.user.network.HttpManager
|
import com.kuanzhai.user.network.entity.Order
|
import com.kuanzhai.user.network.request
|
import com.kuanzhai.user.utils.Const
|
import org.jetbrains.anko.textColorResource
|
|
data class OfficialOrderAdapter(val datas:ArrayList<Order>):HFRecyclerAdapter<Order>(datas, R.layout.item_order) {
|
override fun onBind(holder: ViewHolder, position: Int, data: Order) {
|
holder.bind<TextView>(R.id.tv_tag).gone()
|
holder.bind<View>(R.id.tv_thank).gone()
|
holder.bind<TextView>(R.id.tv_thank_money).gone()
|
|
|
holder.setText(R.id.tv_time,data.orderTime)
|
holder.setText(R.id.tv_state,data.getOfficialStateStr())
|
holder.bind<TextView>(R.id.tv_state).textColorResource = data.getStateColor()
|
|
val tvTime = holder.bind<TextView>(R.id.tv_trip_time)
|
val tvStart = holder.bind<TextView>(R.id.tv_start)
|
val tvEnd = holder.bind<TextView>(R.id.tv_end)
|
val ll_check = holder.bind<LinearLayout>(R.id.ll_check)
|
if (data.auditStatus == 0||data.auditStatus == 2){ //待审核和审核失败
|
ll_check.visible()
|
val tvAction = holder.bind<TextView>(R.id.tv_action_check)
|
tvAction.text = if (data.auditStatus == 0) "取消订单" else "详情"
|
tvAction.setOnClickListener {
|
if (data.auditStatus == 0){
|
val tipDialog = TipDialog()
|
tipDialog.arguments = bundleOf("msg" to "是否确认取消订单?")
|
tipDialog.setCallback(object :TipDialog.OnClickCallback{
|
override fun onOk() {
|
HttpManager.cancelOrder(data.orderId,data.orderType).request(context as BaseActivity){_,_->
|
(context as BaseActivity).myToast("取消成功")
|
data.state = 10
|
data.auditStatus = -2
|
notifyItemChanged(position)
|
}
|
}
|
|
override fun onCancel() {
|
}
|
})
|
tipDialog.show((context as BaseActivity).supportFragmentManager,"cancel")
|
}
|
}
|
tvTime.setCompoundDrawablesRelativeWithIntrinsicBounds(0,0,0,0)
|
tvStart.setCompoundDrawablesRelativeWithIntrinsicBounds(0,0,0,0)
|
tvEnd.setCompoundDrawablesRelativeWithIntrinsicBounds(0,0,0,0)
|
tvStart.textColorResource = R.color.textColor66
|
tvEnd.textColorResource = R.color.textColor66
|
}else{
|
ll_check.gone()
|
tvTime.setCompoundDrawablesRelativeWithIntrinsicBounds(R.mipmap.icon_time,0,0,0)
|
tvStart.setCompoundDrawablesRelativeWithIntrinsicBounds(R.mipmap.icon_starting_point,0,0,0)
|
tvEnd.setCompoundDrawablesRelativeWithIntrinsicBounds(R.mipmap.icon_end_point,0,0,0)
|
tvStart.textColorResource = R.color.textColor
|
tvEnd.textColorResource = R.color.textColor
|
}
|
|
holder.setText(R.id.tv_trip_time,data.time)
|
holder.setText(R.id.tv_start,data.startAddress)
|
holder.setText(R.id.tv_end,data.endAddress)
|
holder.bind<TextView>(R.id.tv_count).apply {
|
visibility = if (data.orderType == Const.OrderType.TYPE_CROSS_CITY) {
|
text = String.format("%d人",data.num)
|
View.VISIBLE
|
} else View.GONE
|
}
|
}
|
}
|