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
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
package com.xw.yunwei.ui.work.car.detail.operations
 
import android.annotation.SuppressLint
import androidx.core.os.bundleOf
import com.xw.common.base.BaseFragmentNoVM
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.FragmentCarOperationsBinding
import com.xw.yunwei.model.CarModel
import com.xw.yunwei.ui.work.car.detail.CarDetailActivity
import com.xw.yunwei.ui.work.car.detail.operations.charge.ChargeCarActivity
import com.xw.yunwei.ui.work.car.detail.operations.check.CheckCarActivity
import com.xw.yunwei.ui.work.car.detail.operations.clean.CleanCarActivity
import com.xw.yunwei.ui.work.car.detail.operations.maintain.MaintainCarActivity
import com.xw.yunwei.ui.work.car.detail.operations.repair.RepairCarActivity
import com.xw.yunwei.ui.work.car.detail.operations.repair.record.RepairRecordActivity
 
/**
 * 车辆运维
 */
class OperationsFragment : BaseFragmentNoVM<FragmentCarOperationsBinding>() {
 
    val viewModel by lazy { (requireActivity() as CarDetailActivity).viewModel }
 
    override fun init() {
        super.init()
        binding.viewModel = viewModel
        binding.lifecycleOwner = this
    }
 
    override fun setObservable() {
        super.setObservable()
        viewModel.carInfo.observe(this) {
            initBasicInfo(it)
        }
    }
 
    override fun setListener() {
        super.setListener()
        binding.viewDetail.setOnClickListener {
            startActivity(
                RepairRecordActivity::class.java,
                bundleOf("carId" to (viewModel.carInfo.value?.id ?: 0L))
            )
        }
        binding.zhengbeiLayout.setOnClickListener {
            startActivity(
                MaintainCarActivity::class.java,
                bundleOf("carId" to (viewModel.carInfo.value?.id ?: 0L))
            )
        }
        binding.chongdianLayout.setOnClickListener {
            startActivity(
                ChargeCarActivity::class.java,
                bundleOf("carId" to (viewModel.carInfo.value?.id ?: 0L))
            )
        }
        binding.jianceLayout.setOnClickListener {
            startActivity(
                CheckCarActivity::class.java,
                bundleOf("carId" to (viewModel.carInfo.value?.id ?: 0L))
            )
        }
        binding.weixiuLayout.setOnClickListener {
            startActivity(
                RepairCarActivity::class.java,
                bundleOf("carId" to (viewModel.carInfo.value?.id ?: 0L))
            )
        }
        binding.qingjieLayout.setOnClickListener {
            startActivity(
                CleanCarActivity::class.java,
                bundleOf("carId" to (viewModel.carInfo.value?.id ?: 0L))
            )
        }
    }
 
    @SuppressLint("SetTextI18n")
    private fun initBasicInfo(it: CarModel) {
        binding.batteryLife.text = "${it.mileageRange?.toInt()}km"
        binding.batteryLife.setTextColor(
            com.xw.common.custom.BatteryView.getBatteryColor(
                it.currentElectricity ?: 0
            )
        )
        binding.batteryView.setLevel(it.currentElectricity ?: 0)
        var url = ""
        try {
            url = it.vehiclePictures?.getUrl() ?: ""
        } catch (e: Exception) {
        }
        ViewAdapter.loadImage(binding.icon, ImageDefault(url, R.mipmap.img_work_car1))
    }
}