diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/presenter/TaxiPresenter.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/presenter/TaxiPresenter.java index d43dddc681..72c76408eb 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/presenter/TaxiPresenter.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/presenter/TaxiPresenter.java @@ -13,6 +13,7 @@ import com.mogo.commons.AbsMogoApplication; import com.mogo.commons.mvp.Presenter; import com.mogo.eagle.core.data.map.MogoLocation; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; +import com.mogo.eagle.core.function.call.order.CallerOrderListenerManager; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean; @@ -243,7 +244,11 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS if (TaxiOrderStatusEnum.OnTheWayToEnd.getCode() == order.orderStatus){ TaxiModel.getInstance().startDynamicCalculateRouteInfo(); - runOnUIThread(() -> mView.updateCtvAutopilotStatusTag(true)); + runOnUIThread(() -> { + mView.updateCtvAutopilotStatusTag(true); + CallerOrderListenerManager.INSTANCE.invokeOrderStatus(true); + }); + } if (TaxiOrderStatusEnum.ArriveAtEnd.getCode() == order.orderStatus || @@ -251,6 +256,11 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS TaxiOrderStatusEnum.JourneyCompleted.getCode() == order.orderStatus){ TaxiModel.getInstance().startOrStopCalculateRouteInfo(false); TaxiModel.getInstance().setRouteLineMarker(null); + runOnUIThread(() -> { + if(TaxiOrderStatusEnum.ArriveAtEnd.getCode() == order.orderStatus){ + CallerOrderListenerManager.INSTANCE.invokeOrderStatus(false); + } + }); } runOnUIThread(() -> mView.updateCurrentOrderStatusChanged(order)); }