diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/net/BusPassengerServiceManager.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/net/BusPassengerServiceManager.kt index ace0ad5d86..624775a776 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/net/BusPassengerServiceManager.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/net/BusPassengerServiceManager.kt @@ -12,7 +12,6 @@ import com.mogo.och.common.module.biz.constant.OchCommonConst import com.mogo.och.common.module.biz.network.OchCommonServiceCallback import com.mogo.och.common.module.biz.network.OchCommonSubscribeImpl import com.mogo.och.common.module.biz.network.interceptor.transformTry -import retrofit2.http.Body /** * Created on 2022/3/31 diff --git a/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/bean/UnmannedTaskBean.kt b/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/bean/UnmannedTaskBean.kt index d7faf46d5f..25c18513e2 100644 --- a/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/bean/UnmannedTaskBean.kt +++ b/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/bean/UnmannedTaskBean.kt @@ -7,14 +7,15 @@ import com.mogo.eagle.core.data.BaseData * @date: 2023/8/4 */ -data class OrderDetail(var orderNo: String, - var orderStatus: Int, - var orderStartSite: Site?, - var orderEndSite: Site?, - var planningLines: Array, - var phone: String, - var passengerNum: Int - ) { +data class OrderDetail( + var orderNo: String, + var orderStatus: Int, + var orderStartSite: Site?, + var orderEndSite: Site?, + var planningLines: Array, + var phone: String, + var passengerNum: Int +) { override fun equals(other: Any?): Boolean { if (this === other) return true if (javaClass != other?.javaClass) return false @@ -40,7 +41,7 @@ data class OrderDetail(var orderNo: String, } } -data class Site(var siteId: Int,var siteName: String,var gcjLat: Double, var gcjLon: Double) { +data class Site(var siteId: Int, var siteName: String, var gcjLat: Double, var gcjLon: Double) { override fun equals(other: Any?): Boolean { if (this === other) return true if (javaClass != other?.javaClass) return false @@ -55,52 +56,62 @@ data class Site(var siteId: Int,var siteName: String,var gcjLat: Double, var gcj } } -data class QueryCurrentTaskRespBean(var data: Result?) - :BaseData(){ - data class Result(var sn: String, var lineId: Int, var servingStatus: Int, - var currentStatus: Int, var taskType: Int, - var startSite: Site?, var endSite: Site?, - var order: OrderDetail?){ - // servingStatus = 0 //暂停接单 = 1 //开始接单 - //taskType = 1 //虚拟任务 = 2 //接驾任务 = 3 //送驾任务 - //currentStatus 0:空闲 1:获取任务 2:开始任务 3:到达目的地 - override fun equals(other: Any?): Boolean { - if (this === other) return true - if (javaClass != other?.javaClass) return false +data class QueryCurrentTaskRespBean(var data: Result?) : BaseData() { + data class Result( + var sn: String, var lineId: Int, var servingStatus: Int, + var currentStatus: Int, var taskType: Int, + var startSite: Site?, var endSite: Site?, + var order: OrderDetail? + ) { + // servingStatus = 0 //暂停接单 = 1 //开始接单 + //taskType = 1 //虚拟任务 = 2 //接驾任务 = 3 //送驾任务 + //currentStatus 0:空闲 1:获取任务 2:开始任务 3:到达目的地 + override fun equals(other: Any?): Boolean { + if (this === other) return true + if (javaClass != other?.javaClass) return false - other as Result + other as Result - if (lineId != other.lineId) return false - if (servingStatus != other.servingStatus) return false - if (currentStatus != other.currentStatus) return false - if (taskType != other.taskType) return false - if (startSite != other.startSite) return false - if (endSite != other.endSite) return false - if (order != other.order) return false + if (lineId != other.lineId) return false + if (servingStatus != other.servingStatus) return false + if (currentStatus != other.currentStatus) return false + if (taskType != other.taskType) return false + if (startSite != other.startSite) return false + if (endSite != other.endSite) return false + if (order != other.order) return false - return true - } - } + return true + } + } } -data class StartTaskReqBean(var sn: String,var lineId: Int) +data class StartTaskReqBean(var sn: String, var lineId: Int) -data class ArriveSiteReqBean(var sn: String,var siteId: Int) -data class PrepareTaskReqBean(var sn: String,var siteId: Int) -data class PrepareTaskRespBean(var lineId: Int,var cityCode: Int,var taskType: Int, - var startSite: Site, var endSite: Site) //taskType 1:虚拟任务 2:接驾任务3:送驾任务 - :BaseData() +data class ArriveSiteReqBean(var sn: String, var siteId: Int) +data class PrepareTaskReqBean(var sn: String, var siteId: Int) +data class PrepareTaskRespBean( + var lineId: Int, var cityCode: Int, var taskType: Int, + var startSite: Site, var endSite: Site +) //taskType 1:虚拟任务 2:接驾任务3:送驾任务 + : BaseData() -data class JumpPassengerCheckReqBean(var sn: String,var orderNo: String) -data class CancelOrderReqBean(var sn: String,var orderNo: String) -data class OrderCompletedReqBean(var sn: String,var orderNo: String) -data class ContrailListReqBean(var sn: MutableList) +data class JumpPassengerCheckReqBean(var sn: String, var orderNo: String) +data class CancelOrderReqBean(var sn: String, var orderNo: String) +data class OrderCompletedReqBean(var sn: String, var orderNo: String) +data class ContrailListReqBean(var lineIds: MutableList) +data class QueryCarOrderByNoReqBean(var sn: String, var orderNo: String) +data class QueryCarOrderByNoRespBean( + var sn: String, var orderNo: String, var orderStatus: Int, + var bookingUserPhone: String, var businessType: String +): BaseData() data class ContrailListRespBean(var data: MutableList) //轨迹路线集合 - :BaseData(){ - data class Result(var lineId: Int, var csvFileUrl: String, var csvFileMd5: String, - var txtFileUrl: String, var txtFileMd5: String, var contrailSaveTime: Long, - var csvFileUrlDPQP: String, var csvFileMd5DPQP: String, var txtFileUrlDPQP: String, - var txtFileMd5DPQP: String, var contrailSaveTimeDPQP: Long) + : BaseData() { + data class Result( + var lineId: Int, var csvFileUrl: String, var csvFileMd5: String, + var txtFileUrl: String, var txtFileMd5: String, var contrailSaveTime: Long, + var csvFileUrlDPQP: String, var csvFileMd5DPQP: String, var txtFileUrlDPQP: String, + var txtFileMd5DPQP: String, var contrailSaveTimeDPQP: Long + ) } diff --git a/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/model/TaxiUnmannedViewModel.kt b/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/model/TaxiUnmannedViewModel.kt index d013f102bd..6db2d3109e 100644 --- a/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/model/TaxiUnmannedViewModel.kt +++ b/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/model/TaxiUnmannedViewModel.kt @@ -17,11 +17,14 @@ import com.mogo.och.taxi.R import com.mogo.och.taxi.base.BaseViewModel import com.mogo.och.taxi.base.IUiIntent import com.mogo.och.taxi.bean.PrepareTaskRespBean +import com.mogo.och.taxi.bean.QueryCarOrderByNoRespBean import com.mogo.och.taxi.bean.QueryCurrentTaskRespBean import com.mogo.och.taxi.bean.StartServiceRespBean +import com.mogo.och.taxi.constant.TaxiOrderStatusEnum import com.mogo.och.taxi.constant.TaxiUnmannedConst import com.mogo.och.taxi.constant.TaxtServingStatusManager import com.mogo.och.taxi.network.CarServiceManager +import com.mogo.och.taxi.network.CarServiceManager.queryCarOrderByOrderNo import com.mogo.och.taxi.ui.unmanned.TaskAndOrderUiState import com.mogo.och.taxi.ui.unmanned.UnmannedIntent import com.mogo.och.taxi.ui.unmanned.UnmannedState @@ -58,26 +61,10 @@ class TaxiUnmannedViewModel : BaseViewModel(){ updateCarStatus() } - is UnmannedIntent.GetNextTask -> { - getNextTask() - } - - is UnmannedIntent.StartTask -> { // - startTask() - } - - is UnmannedIntent.ArrivedOrderStartStation -> {//围栏触发 - arrivedSite() - } - is UnmannedIntent.JumpPassengerCheckDone -> { //手动点击跳过乘客验证 jumpPassengerCheckDone() } - is UnmannedIntent.ArrivedOrderEndStation -> {// 自动驾驶触发 - arrivedSite() - } - is UnmannedIntent.JourneyCompleted -> { //点击服务完成 journeyCompleted() } @@ -147,65 +134,16 @@ class TaxiUnmannedViewModel : BaseViewModel(){ } } - private fun getNextTask() { - if (mCurrentTaskAndOrder != null && mCurrentTaskAndOrder!!.endSite != null){ - CarServiceManager.prepareTask(AbsMogoApplication.getApp().applicationContext, - mCurrentTaskAndOrder!!.endSite!!.siteId, object : OchCommonServiceCallback{ - override fun onSuccess(data: PrepareTaskRespBean?) { - TODO("Not yet implemented") - } - - override fun onFail(code: Int, msg: String?) { - TODO("Not yet implemented") - } - - }) - } - } - - private fun arrivedSite() { - if (mCurrentTaskAndOrder != null && mCurrentTaskAndOrder!!.endSite != null){ - CarServiceManager.arriveSite(AbsMogoApplication.getApp().applicationContext, - mCurrentTaskAndOrder!!.endSite!!.siteId, - object : OchCommonServiceCallback{ - override fun onSuccess(data: BaseData?) { - TODO("Not yet implemented") - } - - override fun onFail(code: Int, msg: String?) { - TODO("Not yet implemented") - } - - }) - } - } - - private fun startTask() { - if (mCurrentTaskAndOrder != null && mCurrentTaskAndOrder!!.endSite != null){ - CarServiceManager.startTask(AbsMogoApplication.getApp().applicationContext, - mCurrentTaskAndOrder!!.lineId, object : OchCommonServiceCallback{ - override fun onSuccess(data: BaseData?) { - TODO("Not yet implemented") - } - - override fun onFail(code: Int, msg: String?) { - TODO("Not yet implemented") - } - - }) - } - } - private fun journeyCompleted() { if (mCurrentTaskAndOrder != null && mCurrentTaskAndOrder!!.order != null){ CarServiceManager.orderCompleted(AbsMogoApplication.getApp().applicationContext, mCurrentTaskAndOrder!!.order!!.orderNo,object : OchCommonServiceCallback{ override fun onSuccess(data: BaseData?) { - TODO("Not yet implemented") +// TODO("Not yet implemented") } override fun onFail(code: Int, msg: String?) { - TODO("Not yet implemented") +// TODO("Not yet implemented") } }) } @@ -216,11 +154,11 @@ class TaxiUnmannedViewModel : BaseViewModel(){ CarServiceManager.jumpPassengerCheck(AbsMogoApplication.getApp().applicationContext, mCurrentTaskAndOrder!!.order!!.orderNo,object : OchCommonServiceCallback{ override fun onSuccess(data: BaseData?) { - TODO("Not yet implemented") +// TODO("Not yet implemented") } override fun onFail(code: Int, msg: String?) { - TODO("Not yet implemented") +// TODO("Not yet implemented") } }) } @@ -254,6 +192,15 @@ class TaxiUnmannedViewModel : BaseViewModel(){ } } + private fun updateNoTaskAndOrderCancelUi() { + + sendUiState { + copy( + taskAndOrderUiState = TaskAndOrderUiState.ORDERCANCEL(true) + ) + } + } + private fun startOrStopOrderLoop(start: Boolean) { CallerLogger.d(SceneConstant.M_TAXI + TAG, "startOrStopOrderLoop() $start") if (start) { @@ -286,7 +233,7 @@ class TaxiUnmannedViewModel : BaseViewModel(){ result!!.order!!.orderNo) ) { //本地根据订单 orderNo 去查询下(乘客取消订单) - queryCurrentOrderStatusById(mCurrentTaskAndOrder!!.order!!.orderNo) + queryCurrentOrderStatusByNo(mCurrentTaskAndOrder!!.order!!.orderNo) return } @@ -306,8 +253,21 @@ class TaxiUnmannedViewModel : BaseViewModel(){ }) } - private fun queryCurrentOrderStatusById(orderNo: String) { - TODO("Not yet implemented") + private fun queryCurrentOrderStatusByNo(orderNo: String) { + queryCarOrderByOrderNo(mContext,orderNo, + object : OchCommonServiceCallback{ + override fun onSuccess(data: QueryCarOrderByNoRespBean?) { + if (data != null && data.code != 0) return + if (data!!.orderStatus == TaxiOrderStatusEnum.Cancel.code){ + updateNoTaskAndOrderCancelUi() + } + } + + override fun onFail(code: Int, msg: String?) { +// TODO("Not yet implemented") + } + + }) } diff --git a/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/network/CarServiceManager.kt b/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/network/CarServiceManager.kt index 4720e5f310..dbb08b63f9 100644 --- a/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/network/CarServiceManager.kt +++ b/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/network/CarServiceManager.kt @@ -25,11 +25,11 @@ object CarServiceManager { */ @JvmStatic fun startService( - context: Context,gcjLat: Double,gcjLon: Double, + context: Context, gcjLat: Double, gcjLon: Double, callback: OchCommonServiceCallback? - ){ + ) { mOCHTaxiServiceApi.startService( - data = StartServiceReqBean(MoGoAiCloudClientConfig.getInstance().sn,gcjLat, gcjLon) + data = StartServiceReqBean(MoGoAiCloudClientConfig.getInstance().sn, gcjLat, gcjLon) ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "startService")) } @@ -38,9 +38,10 @@ object CarServiceManager { * 暂停接单 */ @JvmStatic - fun endService(context: Context,callback: OchCommonServiceCallback?){ + fun endService(context: Context, callback: OchCommonServiceCallback?) { mOCHTaxiServiceApi.endService( - sn = MoGoAiCloudClientConfig.getInstance().sn) + sn = MoGoAiCloudClientConfig.getInstance().sn + ) .transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "endService")) } @@ -49,9 +50,13 @@ object CarServiceManager { * 查询当前任务或者订单 */ @JvmStatic - fun queryCurrentTask(context: Context,callback: OchCommonServiceCallback?){ + fun queryCurrentTask( + context: Context, + callback: OchCommonServiceCallback? + ) { mOCHTaxiServiceApi.queryCurrentTask( - sn = MoGoAiCloudClientConfig.getInstance().sn) + sn = MoGoAiCloudClientConfig.getInstance().sn + ) .transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryCurrentTask")) } @@ -61,11 +66,11 @@ object CarServiceManager { */ @JvmStatic fun startTask( - context: Context,lineId: Int, + context: Context, lineId: Int, callback: OchCommonServiceCallback? - ){ + ) { mOCHTaxiServiceApi.startTask( - data = StartTaskReqBean(MoGoAiCloudClientConfig.getInstance().sn,lineId) + data = StartTaskReqBean(MoGoAiCloudClientConfig.getInstance().sn, lineId) ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "startTask")) } @@ -75,11 +80,11 @@ object CarServiceManager { */ @JvmStatic fun arriveSite( - context: Context,siteId: Int, + context: Context, siteId: Int, callback: OchCommonServiceCallback? - ){ + ) { mOCHTaxiServiceApi.arriveSite( - data = ArriveSiteReqBean(MoGoAiCloudClientConfig.getInstance().sn,siteId) + data = ArriveSiteReqBean(MoGoAiCloudClientConfig.getInstance().sn, siteId) ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "arriveSite")) } @@ -89,11 +94,11 @@ object CarServiceManager { */ @JvmStatic fun prepareTask( - context: Context,siteId: Int, + context: Context, siteId: Int, callback: OchCommonServiceCallback? - ){ + ) { mOCHTaxiServiceApi.prepareTask( - data = PrepareTaskReqBean(MoGoAiCloudClientConfig.getInstance().sn,siteId) + data = PrepareTaskReqBean(MoGoAiCloudClientConfig.getInstance().sn, siteId) ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "prepareTask")) } @@ -103,11 +108,25 @@ object CarServiceManager { */ @JvmStatic fun jumpPassengerCheck( - context: Context,orderNo: String, + context: Context, orderNo: String, callback: OchCommonServiceCallback? - ){ + ) { mOCHTaxiServiceApi.jumpPassengerCheck( - data = JumpPassengerCheckReqBean(MoGoAiCloudClientConfig.getInstance().sn,orderNo) + data = JumpPassengerCheckReqBean(MoGoAiCloudClientConfig.getInstance().sn, orderNo) + ).transformTry() + .subscribe(OchCommonSubscribeImpl(context, callback, "jumpPassengerCheck")) + } + + /** + * 根据订单号查询订单, 主要是拿完成或者被乘客取消的订单状态 + */ + @JvmStatic + fun queryCarOrderByOrderNo( + context: Context, orderNo: String, + callback: OchCommonServiceCallback? + ) { + mOCHTaxiServiceApi.queryCarOrderByOrderNo( + data = QueryCarOrderByNoReqBean(MoGoAiCloudClientConfig.getInstance().sn, orderNo) ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "jumpPassengerCheck")) } @@ -117,11 +136,11 @@ object CarServiceManager { */ @JvmStatic fun orderCompleted( - context: Context,orderNo: String, + context: Context, orderNo: String, callback: OchCommonServiceCallback? - ){ + ) { mOCHTaxiServiceApi.orderCompleted( - data = OrderCompletedReqBean(MoGoAiCloudClientConfig.getInstance().sn,orderNo) + data = OrderCompletedReqBean(MoGoAiCloudClientConfig.getInstance().sn, orderNo) ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "orderCompleted")) } @@ -131,23 +150,23 @@ object CarServiceManager { */ @JvmStatic fun cancelOrder( - context: Context,orderNo: String, + context: Context, orderNo: String, callback: OchCommonServiceCallback? - ){ + ) { mOCHTaxiServiceApi.cancelOrder( - data = CancelOrderReqBean(MoGoAiCloudClientConfig.getInstance().sn,orderNo) + data = CancelOrderReqBean(MoGoAiCloudClientConfig.getInstance().sn, orderNo) ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "cancelOrder")) } /** - * 取消订单 + * 批量获取轨迹信息 */ @JvmStatic fun contrailList( - context: Context,linIds: MutableList, + context: Context, linIds: MutableList, callback: OchCommonServiceCallback? - ){ + ) { mOCHTaxiServiceApi.contrailList( data = ContrailListReqBean(linIds) ).transformTry() diff --git a/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/network/UnmannedTaskServiceApi.kt b/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/network/UnmannedTaskServiceApi.kt index e80a72d0c9..65f6620305 100644 --- a/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/network/UnmannedTaskServiceApi.kt +++ b/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/network/UnmannedTaskServiceApi.kt @@ -10,6 +10,8 @@ import com.mogo.och.taxi.bean.JumpPassengerCheckReqBean import com.mogo.och.taxi.bean.OrderCompletedReqBean import com.mogo.och.taxi.bean.PrepareTaskReqBean import com.mogo.och.taxi.bean.PrepareTaskRespBean +import com.mogo.och.taxi.bean.QueryCarOrderByNoReqBean +import com.mogo.och.taxi.bean.QueryCarOrderByNoRespBean import com.mogo.och.taxi.bean.QueryCurrentTaskRespBean import com.mogo.och.taxi.bean.StartServiceReqBean import com.mogo.och.taxi.bean.StartServiceRespBean @@ -139,4 +141,12 @@ interface UnmannedTaskServiceApi { @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, @Body data: JumpPassengerCheckReqBean? ): Observable + + @Headers("Content-type:application/json;charset=UTF-8") + @POST("/och-taxi-cabin/api/business/v1/queryCarOrder") + fun queryCarOrderByOrderNo( + @Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId, + @Header("ticket") ticket: String = MoGoAiCloudClientConfig.getInstance().token, + @Body data: QueryCarOrderByNoReqBean? + ): Observable } \ No newline at end of file diff --git a/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/ui/TaxiBeingTaskFragment.kt b/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/ui/TaxiBeingTaskFragment.kt index 844644ea66..98a586e0c9 100644 --- a/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/ui/TaxiBeingTaskFragment.kt +++ b/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/ui/TaxiBeingTaskFragment.kt @@ -130,6 +130,10 @@ class TaxiBeingTaskFragment : BaseFragment(), isHaveBeingOrder(true) updateUntruthTask(state.untruthTask) } + + is TaskAndOrderUiState.ORDERCANCEL -> { + // TODO 任务要跑完, 更新btn: 乘客已取消 + } } } } @@ -812,10 +816,6 @@ class TaxiBeingTaskFragment : BaseFragment(), } } - fun updateOrderBottomBtnUI() { - mViewModel.sendUiIntent(UnmannedIntent.StartTask) - } - private fun updateOrderBottomBtn(txt: String?, txtColorId: Int, bgColorId: Int, isClickable: Boolean) { taskClickBtn.text = txt taskClickBtn.setTextColor(txtColorId) diff --git a/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/ui/unmanned/UnmannedState.kt b/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/ui/unmanned/UnmannedState.kt index 20085cdffb..17551fa41b 100644 --- a/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/ui/unmanned/UnmannedState.kt +++ b/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/ui/unmanned/UnmannedState.kt @@ -21,6 +21,7 @@ sealed class TaskAndOrderUiState { data class TASKANDORDER(val model: QueryCurrentTaskRespBean.Result?) : TaskAndOrderUiState()//演练、接驾、送驾任务 data class UNTRUTHTASK(val untruthTask: StartServiceRespBean.Result?) : TaskAndOrderUiState()//伪任务 + data class ORDERCANCEL(var isCancel: Boolean) : TaskAndOrderUiState()//伪任务 } data class UnmannedState(val taskAndOrderUiState: TaskAndOrderUiState) : IUiState