18034727885
2026-04-14 370014cbb9ec1ef64e7e42bb4f9a12671461d8e4
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
package com.xw.yunwei.ui.work
 
import android.annotation.SuppressLint
import androidx.databinding.DataBindingUtil
import com.chad.library.adapter.base.BaseQuickAdapter
import com.chad.library.adapter.base.viewholder.BaseViewHolder
import com.xw.common.base.OnItemClickListener
import com.xw.common.utils.BindUtils.getUrl
import com.xw.common.viewAdapter.ImageDefault
import com.xw.common.viewAdapter.ViewAdapter
import com.xw.yunwei.R
import com.xw.yunwei.databinding.ItemWorkCarBinding
import com.xw.yunwei.model.CarModel
 
class CarAdapter(var listener: OnItemClickListener<CarModel>) :
    BaseQuickAdapter<CarModel, BaseViewHolder>(R.layout.item_work_car) {
 
    @SuppressLint("SetTextI18n")
    override fun convert(holder: BaseViewHolder, item: CarModel) {
        val binding: ItemWorkCarBinding? = DataBindingUtil.bind(holder.itemView)
        binding?.let {
            it.root.setOnClickListener { listener.onItemClick(item) }
 
            var url = ""
            try {
                url = item.vehiclePictures?.getUrl() ?: ""
            } catch (e: Exception) {
            }
            ViewAdapter.loadImage(binding.icon, ImageDefault(url, R.mipmap.img_work_car))
            binding.name.text = item.plateNumber
            binding.no.text = "NO.${item.vehicleCode}"
            binding.batteryLife.text = "${item.mileageRange?.toInt()}km"
            binding.batteryLife.setTextColor(
                com.xw.common.custom.BatteryView.getBatteryColor(
                    item.currentElectricity ?: 0
                )
            )
            binding.batteryView.setLevel(item.currentElectricity ?: 0)
 
            val setStatus: (Int) -> Unit = { id ->
                binding.status.setImageResource(id)
            }
 
            // 1=运营中 2=维修中 3=已收车 4=车辆异常
            when (item.operatingStatus) {
                1 -> setStatus(R.mipmap.ic_work_fache)
                2 -> setStatus(R.mipmap.ic_work_weixiu)
                3 -> setStatus(R.mipmap.ic_work_quche)
                4 -> setStatus(R.mipmap.ic_work_weixiu)
            }
        }
    }
 
}