| | |
| | | package com.xw.yunwei.ui.task.normal |
| | | |
| | | import android.app.Application |
| | | import android.content.Context |
| | | import android.util.Log |
| | | import android.view.View |
| | | import androidx.core.os.bundleOf |
| | |
| | | import com.xw.common.base.ImageEventListener |
| | | import com.xw.common.base.ImageSelectAdapter |
| | | import com.xw.common.utils.ToastUtilCommon |
| | | import com.xw.yunwei.Constants |
| | | import com.xw.yunwei.Constants.user |
| | | import com.xw.yunwei.R |
| | | import com.xw.yunwei.model.TaskNormalChargeModel |
| | |
| | | import com.xw.yunwei.model.TaskNormalMaintainModel |
| | | import com.xw.yunwei.model.TaskNormalModel |
| | | import com.xw.yunwei.model.TaskNormalRepairModel |
| | | import com.xw.yunwei.net.CommonRepository |
| | | import com.xw.yunwei.net.TaskRepository |
| | | import com.xw.yunwei.net.WorkRepository |
| | | import com.xw.yunwei.net.CommonRepository |
| | | import com.xw.yunwei.ui.dialog.ApplyForReassignReasonDialog |
| | | import com.xw.yunwei.ui.work.car.detail.StandardDescriptionActivity |
| | | import com.xw.yunwei.ui.work.car.detail.operations.charge.ChargeCarActivity |
| | | import com.xw.yunwei.ui.work.car.detail.operations.check.CheckCarActivity |
| | |
| | | import okhttp3.RequestBody.Companion.asRequestBody |
| | | import org.koin.core.component.inject |
| | | import java.io.File |
| | | import kotlin.getValue |
| | | |
| | | class NormalTaskDetailVM(application: Application) : BaseViewModel(application) { |
| | | val taskRepository: TaskRepository by inject() |
| | |
| | | var taskId = 0L |
| | | val taskDetail: MutableLiveData<TaskNormalModel> = MutableLiveData() |
| | | val title = taskDetail.map { |
| | | if(it.status == 1) "待处理" else if(it.status == 2) "已处理" else "" |
| | | if (it.status == 1) "待处理" else if (it.status == 2) "已处理" else "" |
| | | } |
| | | val levelId = taskDetail.map { |
| | | when(it.taskUrgencyLevel){ |
| | | 0 -> R.mipmap.ic_accident_one |
| | | 1 -> R.mipmap.ic_accident_two |
| | | 2 -> R.mipmap.ic_accident_three |
| | | 3 -> R.mipmap.ic_accident_four |
| | | else -> R.mipmap.ic_accident_one |
| | | } |
| | | when (it.taskUrgencyLevel) { |
| | | 0 -> R.mipmap.ic_accident_one |
| | | 1 -> R.mipmap.ic_accident_two |
| | | 2 -> R.mipmap.ic_accident_three |
| | | 3 -> R.mipmap.ic_accident_four |
| | | else -> R.mipmap.ic_accident_one |
| | | } |
| | | } |
| | | val btnDoingAction = MutableLiveData("") |
| | | val showDoingBtn = MutableLiveData(true) // 显示按钮 |
| | |
| | | |
| | | fun queryDetail() { |
| | | launchRequest { |
| | | Log.e(TAG, "queryDetail: $taskId", ) |
| | | Log.e(TAG, "queryDetail: $taskId") |
| | | taskRepository.vehicleRoutineDetail("$taskId")?.let { |
| | | runOnMainThread { |
| | | if (taskDetail.value == null || taskDetail.value!!.status != it.status) { |
| | |
| | | checkModel.postValue(it) |
| | | } |
| | | } |
| | | |
| | | "2" -> { // 充电 |
| | | taskRepository.chargingDetail("$taskId")?.let { |
| | | chargeModel.postValue(it) |
| | | } |
| | | } |
| | | |
| | | "3" -> { // 整备 |
| | | taskRepository.preparationDetail("$taskId")?.let { |
| | | maintainModel.postValue(it) |
| | | } |
| | | } |
| | | |
| | | "4" -> { // 洗车 |
| | | taskRepository.cleanDetail("$taskId")?.let { |
| | | cleanModel.postValue(it) |
| | | } |
| | | } |
| | | |
| | | "5" -> { // 维修 |
| | | taskRepository.repairDetail("$taskId")?.let { |
| | | repairModel.postValue(it) |
| | |
| | | } |
| | | } |
| | | |
| | | private fun submit(){ |
| | | private fun submit() { |
| | | taskDetail.value?.let { |
| | | when (it.taskTypeId) { |
| | | "1" -> { // 车辆检测 |
| | |
| | | bundleOf("carId" to (it.vehicleId ?: 0L), "taskId" to (it.id ?: 0L)) |
| | | ) |
| | | } |
| | | |
| | | "2" -> { // 开始充电 |
| | | startActivity( |
| | | ChargeCarActivity::class.java, |
| | | bundleOf("carId" to (it.vehicleId ?: 0L), "taskId" to (it.id ?: 0L)) |
| | | ) |
| | | } |
| | | |
| | | "3" -> { // 开始整备 |
| | | startActivity( |
| | | MaintainCarActivity::class.java, |
| | | bundleOf("carId" to (it.vehicleId ?: 0L), "taskId" to (it.id ?: 0L)) |
| | | ) |
| | | } |
| | | |
| | | "4" -> { // 完成洗车任务 |
| | | cleanCar() |
| | | } |
| | | |
| | | "5" -> { // 去送修/取回 |
| | | startActivity( |
| | | RepairCarActivity::class.java, |
| | | bundleOf("carId" to (it.vehicleId ?: 0L), "taskId" to (it.id ?: 0L)) |
| | | ) |
| | | } |
| | | "6","7","8","9" -> { // 完成保养 完成续保 完成年检 车辆运营资质到期 |
| | | |
| | | "6", "7", "8", "9" -> { // 完成保养 完成续保 完成年检 车辆运营资质到期 |
| | | saveBy() |
| | | } |
| | | } |
| | |
| | | } |
| | | |
| | | /*完成保养/保险/年检*/ |
| | | private fun saveBy(){ |
| | | private fun saveBy() { |
| | | if (taskDescription.value.isNullOrEmpty()) { |
| | | ToastUtilCommon.showError("请录入完成任务情况说明") |
| | | return |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | //显示改派弹窗 |
| | | fun showApplyForReassignDialog(context: Context) { |
| | | ApplyForReassignReasonDialog.show( |
| | | context, |
| | | Constants.reasons, |
| | | ) { position, input -> |
| | | |
| | | } |
| | | } |
| | | } |