package com.xw.yunwei.ui.work.car.detail
|
|
import android.util.Log
|
import androidx.fragment.app.Fragment
|
import androidx.viewpager2.adapter.FragmentStateAdapter
|
import com.blankj.utilcode.util.GsonUtils
|
import com.google.android.material.tabs.TabLayoutMediator
|
import com.xw.common.base.BaseActivity
|
import com.xw.common.base.fastObserve
|
import com.xw.yunwei.BR
|
import com.xw.yunwei.MyApp
|
import com.xw.yunwei.MyApp.Companion.findPermissionByName
|
import com.xw.yunwei.databinding.ActivityCarDetailBinding
|
import com.xw.yunwei.ui.work.car.detail.dispatch.DispatchFragment
|
import com.xw.yunwei.ui.work.car.detail.management.ManagementFragment
|
import com.xw.yunwei.ui.work.car.detail.operations.OperationsFragment
|
|
/**
|
* 车辆详情
|
*/
|
class CarDetailActivity : BaseActivity<ActivityCarDetailBinding, CarDetailVM>() {
|
override fun getBindingVariable() = BR.viewModel
|
|
private val tabTitles = listOf("车辆调度", "车辆运维", "车辆管理")
|
|
override fun init() {
|
super.init()
|
viewModel.carId = intent.getLongExtra("carId", 0L)
|
viewModel.queryInfo()
|
binding.pager.adapter = PageAdapter()
|
TabLayoutMediator(binding.tabs, binding.pager) { tab, positon ->
|
tab.text = tabTitles[positon]
|
}.attach()
|
}
|
|
override fun setListener() {
|
super.setListener()
|
with(binding.refreshLayout) {
|
setOnRefreshListener {
|
viewModel.refreshData()
|
}
|
}
|
}
|
|
override fun setObservable() {
|
super.setObservable()
|
viewModel.refreshLiveData.fastObserve(this, binding.refreshLayout)
|
|
MyApp.permissions.observe(this){
|
viewModel.unlockDoorPermissions.value = findPermissionByName("车门解锁")?.visible == "0"
|
viewModel.unlockBoxPermissions.value = findPermissionByName("后备箱解锁")?.visible == "0"
|
viewModel.departurePermissions.value = findPermissionByName("发车/收车")?.visible == "0"
|
viewModel.takeOrdersPermissions.value = findPermissionByName("接单/测试")?.visible == "0"
|
|
viewModel.zhengbeiPermissions.value = findPermissionByName("车辆整备")?.visible == "0"
|
viewModel.chongdianPermissions.value = findPermissionByName("车辆充电")?.visible == "0"
|
viewModel.jiancePermissions.value = findPermissionByName("车辆检测")?.visible == "0"
|
viewModel.weixiuPermissions.value = findPermissionByName("车辆维修")?.visible == "0"
|
viewModel.qingjiePermissions.value = findPermissionByName("车辆清洁")?.visible == "0"
|
viewModel.recordPermissions.value = findPermissionByName("运维记录")?.visible == "0"
|
viewModel.policyPermissions.value = findPermissionByName("查看保单")?.visible == "0"
|
}
|
}
|
|
override fun onResume() {
|
super.onResume()
|
viewModel.getAppPermission()
|
}
|
|
private inner class PageAdapter : FragmentStateAdapter(this) {
|
override fun getItemCount(): Int = tabTitles.size
|
override fun createFragment(position: Int): Fragment {
|
return when (tabTitles[position]) {
|
"车辆调度" -> DispatchFragment()
|
"车辆运维" -> OperationsFragment()
|
"车辆管理" -> ManagementFragment()
|
else -> error("Wrong position $position")
|
}
|
}
|
}
|
}
|