[Taxi无人化]fix: 当从 接送/送驾 任务 -> 演练任务 时 页面没刷新的问题;
This commit is contained in:
@@ -15,6 +15,7 @@ import com.mogo.eagle.core.function.call.order.CallerOrderListenerManager
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.e
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_TAXI_P
|
||||
import com.mogo.eagle.core.utilcode.util.GsonUtils
|
||||
import com.mogo.eagle.core.utilcode.util.NetworkUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.mogo.och.common.module.biz.network.OchCommonServiceCallback
|
||||
@@ -155,13 +156,18 @@ object TaxiPassengerModel {
|
||||
override fun onSuccess(data: TaxiPassengerOrdersInServiceQueryRespBean) {
|
||||
if (data.data == null) {
|
||||
if (currentOCHOrder != null) {
|
||||
d(M_TAXI_P + TAG, "queryInAndWaitOrders queryCurrentOrderStatus()")
|
||||
queryCurrentOrderStatus()
|
||||
}
|
||||
return
|
||||
}
|
||||
d(M_TAXI_P + TAG, "queryInAndWaitOrders data.data=${GsonUtils.toJson(data.data)}")
|
||||
//目前后端将一个订单拆分成了多个任务,乘客屏只关心 送驾 类型的任务,这里过滤其他任务避免干扰
|
||||
if (data.data.taskType != TaskType_DRIVE_TO_END) {
|
||||
d(M_TAXI_P + TAG, "queryInAndWaitOrders data.taskType=${data.data.taskType}, discard data")
|
||||
// 如果上一个是 接驾或送驾任务 下一个是演练任务,需要reset页面状态
|
||||
currentOCHOrder = null
|
||||
orderStatusChange()
|
||||
return
|
||||
}
|
||||
//1. 处理进行中订单
|
||||
@@ -186,11 +192,11 @@ object TaxiPassengerModel {
|
||||
}
|
||||
|
||||
override fun onError() {
|
||||
e(M_TAXI_P + TAG, "queryInAndWaitOrders onError")
|
||||
e(M_TAXI_P + TAG, "queryInAndWaitOrders: onError")
|
||||
}
|
||||
|
||||
override fun onFail(code: Int, msg: String) {
|
||||
e(M_TAXI_P + TAG, "queryInAndWaitOrders$code$msg")
|
||||
e(M_TAXI_P + TAG, "queryInAndWaitOrders: code=$code, msg=$msg")
|
||||
}
|
||||
})
|
||||
}
|
||||
@@ -199,12 +205,14 @@ object TaxiPassengerModel {
|
||||
* 仅用于轮询时查到本地有mCurrentOCHOrder但请求结果无进行中单or orderId不一致是复查本地currentOrder
|
||||
*/
|
||||
private fun queryCurrentOrderStatus() {
|
||||
d(M_TAXI_P + TAG, "queryCurrentOrderStatus: currentOCHOrder.orderNo=${currentOCHOrder?.orderNo}")
|
||||
currentOCHOrder?.orderNo?.let {
|
||||
TaxiPassengerServiceManager.queryOrderById(
|
||||
mContext!!,
|
||||
it,
|
||||
object : OchCommonServiceCallback<TaxiPassengerOrderQueryRespBean> {
|
||||
override fun onSuccess(data: TaxiPassengerOrderQueryRespBean) {
|
||||
d(M_TAXI_P + TAG, "queryCurrentOrderStatus: onSuccess data=${GsonUtils.toJson(data)}")
|
||||
if (data.data != null
|
||||
&& currentOCHOrder != null
|
||||
&& currentOCHOrder!!.orderNo == data.data.orderNo
|
||||
@@ -326,7 +334,7 @@ object TaxiPassengerModel {
|
||||
fun orderStatusChange() {
|
||||
orderStatusChangeInner()
|
||||
if (mOrderStatusCallbackMap.isNotEmpty()) {
|
||||
d(M_TAXI_P + TAG, "最新的状态${curOrderStatus}")
|
||||
d(M_TAXI_P + TAG, "最新的状态-->${curOrderStatus}")
|
||||
for (callback in mOrderStatusCallbackMap.values) {
|
||||
callback.onCurrentOrderStatusChanged(currentOCHOrder)
|
||||
}
|
||||
|
||||
@@ -73,6 +73,7 @@ object TaxiPassengerServiceManager {
|
||||
if (ordersInServiceQueryResp.data == null
|
||||
|| ordersInServiceQueryResp.data.lineId == -1L
|
||||
) {
|
||||
ordersInServiceQueryResp.data.trajectoryInfoByQuery = null
|
||||
return@flatMap Observable.just(ordersInServiceQueryResp)
|
||||
}
|
||||
val lineId = ordersInServiceQueryResp.data.lineId
|
||||
|
||||
@@ -109,6 +109,13 @@ class BaseTaxiPassengerPresenter(view: TaxiPassengerBaseFragment?) :
|
||||
mView?.showOrHideArrivedEndLayout(isShow = false)
|
||||
overMapViewClear()
|
||||
}
|
||||
TaxiPassengerOrderStatusEnum.None -> {
|
||||
// 00 默认状态,在不同任务之间切换时使用
|
||||
mView?.showOrHideStartAutopilotView(isShow = false)
|
||||
mView?.showOrHidePressengerCheckPager(isShow = false)
|
||||
mView?.showOrHideArrivedEndLayout(isShow = false)
|
||||
overMapViewClear()
|
||||
}
|
||||
else -> {}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user