diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/bean/TaxiDriverTaskWithOrderBean.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/bean/TaxiDriverTaskWithOrderBean.kt index e18de9420a..a7fbcc2e5a 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/bean/TaxiDriverTaskWithOrderBean.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/bean/TaxiDriverTaskWithOrderBean.kt @@ -142,6 +142,16 @@ data class QueryCurrentTaskRespBean(var data: Result?) : BaseData() { return data.order!!.orderStatus == TaxiOrderStatusEnum.ArriveAtStart.code } + fun isUserArriveAtStart(data: QueryCurrentTaskRespBean.Result?): Boolean { + if (data == null) { + return false + } + if (data.order == null) { + return false + } + return data.order!!.orderStatus == TaxiOrderStatusEnum.UserArriveAtStart.code + } + /** * with task.currentStatus == StartTask */ diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/task/TaxiTaskModel.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/task/TaxiTaskModel.kt index 6b9cad59c4..09edff6b75 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/task/TaxiTaskModel.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/task/TaxiTaskModel.kt @@ -685,12 +685,16 @@ object TaxiTaskModel { return } - //当前任务完成且订单状态到达乘客上车点, 则立马去拉取任务 不再等30s,否则送驾任务要等30s后才能去执行 - if (result?.currentStatus == TaskStatusEnum.CompleteTask.code) { + //当前任务完成且订单状态到达乘客上车点, 则立马去拉取任务 不再等120s,否则送驾任务要等120s后才能去执行(8.29废) + //8.29更新: 当前任务完成且订单状态为乘客已上车, 则立马去拉取任务 不再等120s,否则送驾任务要等120s后才能去执行 + // 主要是解决A-B演练任务同时接到A-B订单状态流转的问题 + //注意: 需要去除到达乘客上车点的节点, 这个节点不拉取任务 + if (result?.currentStatus == TaskStatusEnum.CompleteTask.code + && !QueryCurrentTaskRespBean.isOrderArriveAtStart(result)) { mTaxiTaskWithOrderCallbackMap.forEach { val listener = it.value listener.onTaskCompleted( - QueryCurrentTaskRespBean.isOrderArriveAtStart( + QueryCurrentTaskRespBean.isUserArriveAtStart( result ), result.endSite!!.siteId