package com.xw.yunwei.model
|
|
import com.google.gson.annotations.SerializedName
|
|
val taskPlaceHolder = TaskModel()
|
|
/**
|
* 车辆任务实体类
|
*/
|
data class TaskModel(
|
|
/**
|
* 任务处理时限/结束时间
|
*/
|
@SerializedName("endTime")
|
val endTime: String? = null,
|
|
/**
|
* 任务ID
|
*/
|
@SerializedName("id")
|
val id: Long? = null,
|
|
/**
|
* 车牌号
|
*/
|
@SerializedName("plateNumber")
|
val plateNumber: String? = null,
|
|
/**
|
* 任务状态
|
* 0 = 待到达
|
* 1 = 待处理
|
* 2 = 已完成
|
* 3 = 已取消
|
* 4 = 改派中
|
*/
|
@SerializedName("status")
|
val status: Int? = null,
|
|
/**
|
* 任务类别
|
* 1 = 常规任务
|
* 2 = 事故任务
|
*/
|
@SerializedName("taskCategory")
|
val taskCategory: Int? = null,
|
|
/**
|
* 任务编号
|
*/
|
@SerializedName("taskCode")
|
val taskCode: String? = null,
|
|
/**
|
* 任务类型ID
|
* 任务类别为2时:对应数据字典,多个逗号分割
|
* 任务类别为1时:枚举值(见下方常量)
|
*/
|
@SerializedName("taskTypeId")
|
val taskTypeId: String? = null,
|
|
/**
|
* 任务类型名称
|
* 任务类别为2时返回
|
*/
|
@SerializedName("taskTypeName")
|
val taskTypeName: String? = null,
|
|
/**
|
* 任务紧急程度
|
* 0 = P0(最紧急)
|
* 1 = P1
|
* 2 = P2
|
* 3 = P3(最不紧急)
|
*/
|
@SerializedName("taskUrgencyLevel")
|
val taskUrgencyLevel: Int? = null,
|
|
/**
|
* 车辆ID
|
*/
|
@SerializedName("vehicleId")
|
val vehicleId: Long? = null,
|
|
/**
|
* 车辆纬度
|
*/
|
@SerializedName("vehicleLat")
|
val vehicleLat: Double? = null,
|
|
/**
|
* 车辆位置描述
|
*/
|
@SerializedName("vehicleLocation")
|
val vehicleLocation: String? = null,
|
|
/**
|
* 车辆经度
|
*/
|
@SerializedName("vehicleLon")
|
val vehicleLon: Double? = null,
|
|
/**
|
* 可以操作到达的配置范围,单位米
|
*/
|
@SerializedName("canArriveRange")
|
val canArriveRange: Int? = null,
|
//websocket 功能控制字段 是否震动
|
val vibration: Boolean = true,
|
//websocket 功能控制字段 是否语音
|
val voiceBroadcast: Boolean = true,
|
) {
|
companion object Companion {
|
// 常规任务类型枚举(taskCategory=1时使用)
|
/** 车辆检查 */
|
const val TYPE_VEHICLE_CHECK = "1"
|
|
/** 车辆充电 */
|
const val TYPE_VEHICLE_CHARGING = "2"
|
|
/** 车辆整备 */
|
const val TYPE_VEHICLE_PREPARATION = "3"
|
|
/** 整备洗车 */
|
const val TYPE_PREPARATION_WASH = "4"
|
|
/** 车辆维修 */
|
const val TYPE_VEHICLE_REPAIR = "5"
|
|
/** 车辆保养 */
|
const val TYPE_VEHICLE_MAINTENANCE = "6"
|
|
/** 车辆保险到期 */
|
const val TYPE_INSURANCE_EXPIRE = "7"
|
|
/** 车辆年检到期 */
|
const val TYPE_ANNUAL_INSPECTION_EXPIRE = "8"
|
|
/** 车辆运营资质到期 */
|
const val TYPE_OPERATING_LICENSE_EXPIRE = "9"
|
}
|
|
/**
|
* 判断是否为常规任务
|
*/
|
fun isRoutineTask(): Boolean = taskCategory == 1
|
|
/**
|
* 判断是否为事故任务
|
*/
|
fun isAccidentTask(): Boolean = taskCategory == 2
|
|
/**
|
* 根据任务类型ID获取中文名称
|
* @return 对应的中文名称,未找到返回 null
|
*/
|
fun getTaskType(): String? {
|
return when (taskTypeId) {
|
TYPE_VEHICLE_CHECK -> "日常检测"
|
TYPE_VEHICLE_CHARGING -> "车辆充电"
|
TYPE_VEHICLE_PREPARATION -> "车辆整备"
|
TYPE_PREPARATION_WASH -> "洗车"
|
TYPE_VEHICLE_REPAIR -> "车辆维修"
|
TYPE_VEHICLE_MAINTENANCE -> "车辆保养"
|
TYPE_INSURANCE_EXPIRE -> "车辆保险到期"
|
TYPE_ANNUAL_INSPECTION_EXPIRE -> "车辆年检到期"
|
TYPE_OPERATING_LICENSE_EXPIRE -> "车辆运营资质到期"
|
else -> null
|
}
|
}
|
}
|