From 6cfe6e6a7799e8763a171775ef83b7fc31b737f4 Mon Sep 17 00:00:00 2001 From: yangyakun Date: Thu, 28 Nov 2024 19:01:38 +0800 Subject: [PATCH] =?UTF-8?q?[6.8.0]=20[fea]=20[=E5=90=AF=E5=8A=A8=E8=87=AA?= =?UTF-8?q?=E9=A9=BE=E6=88=90=E5=8A=9F=E6=B7=BB=E5=8A=A0=E7=AC=AC=E4=B8=89?= =?UTF-8?q?=E7=A7=8D=E5=88=A4=E6=96=AD=E6=96=B9=E5=BC=8F=E3=80=81=E5=B8=A6?= =?UTF-8?q?=E4=B8=8A=E6=88=90=E5=8A=9F=E6=9D=A5=E6=BA=90]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mogo/och/charter/model/DriverM1Model.kt | 9 ++++- .../charter/presenter/DriverM1Presenter.kt | 13 +------ .../callback/OchAdasStartFailureCallback.kt | 1 + .../autopilot/OCHAdasAbilityManager.java | 38 +++++++++++-------- .../OchAutoPilotStatusListenerManager.kt | 4 +- .../autopilot/OchAutopilotAnalytics.kt | 3 ++ .../manager/autopilot/line/LineManager.kt | 5 ++- .../mogo/och/offline/model/OrderModel.java | 12 ++++-- .../och/offline/presenter/BusPresenter.java | 4 +- .../model/SweeperOperateTaskModel.java | 5 +++ .../unmanned/taxi/ui/task/TaxiTaskModel.kt | 28 +++----------- .../passenger/model/AutopilotManager.kt | 3 ++ .../passenger/model/TaxiPassengerModel.kt | 3 -- .../presenter/BaseTaxiPassengerPresenter.kt | 36 ++++++++++++++++-- 14 files changed, 97 insertions(+), 67 deletions(-) diff --git a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/model/DriverM1Model.kt b/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/model/DriverM1Model.kt index f8d99fa325..ce819239d4 100644 --- a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/model/DriverM1Model.kt +++ b/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/model/DriverM1Model.kt @@ -314,6 +314,10 @@ class DriverM1Model { mControllerStatusCallback?.onStartAdasFailure() } } + + override fun onStartAutopilotSuccess(type:String) { + DriverM1Model.get().triggerStartServiceEvent(false, true,2,type) + } } //监听网络变化,避免启动机器时无网导致无法更新订单信息 @@ -483,7 +487,7 @@ class DriverM1Model { return; } - triggerStartServiceEvent(false, false,0) + triggerStartServiceEvent(false, false,0,"") val parameters = initAutopilotControlParameters() if (null == parameters) { @@ -521,7 +525,7 @@ class DriverM1Model { LoginStatusManager.loginOut() } - fun triggerStartServiceEvent(isRestart: Boolean, send: Boolean,source:Int) { + fun triggerStartServiceEvent(isRestart: Boolean, send: Boolean,source:Int,type:String) { if (mCurrentOrder == null) { return } @@ -534,6 +538,7 @@ class DriverM1Model { OchAutopilotAnalytics.triggerStartAutopilotEvent( isRestart, send, startSiteName, endSiteName, it, orderNo?:"", System.currentTimeMillis(), + type, source ) } diff --git a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/presenter/DriverM1Presenter.kt b/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/presenter/DriverM1Presenter.kt index 452ef9cde3..e00d218480 100644 --- a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/presenter/DriverM1Presenter.kt +++ b/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/presenter/DriverM1Presenter.kt @@ -135,18 +135,9 @@ class DriverM1Presenter(view: DriverM1Fragment?) : override fun onAutopilotStatusResponse(state: Int) { when(state){ -// IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE -> { // -// -// } IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING ->{ - DriverM1Model.get().triggerStartServiceEvent(false,true,0) + DriverM1Model.get().triggerStartServiceEvent(false,true,0,"") } -// IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE ->{ -// -// } -// IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING ->{ -// -// } } } @@ -154,7 +145,7 @@ class DriverM1Presenter(view: DriverM1Fragment?) : super.onAutopilotStatusResponseFromCan(state) when(state) { IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING -> { - DriverM1Model.get().triggerStartServiceEvent(false, true,1) + DriverM1Model.get().triggerStartServiceEvent(false, true,1,"") } } } diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/callback/OchAdasStartFailureCallback.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/callback/OchAdasStartFailureCallback.kt index 4f70346da6..1072178521 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/callback/OchAdasStartFailureCallback.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/callback/OchAdasStartFailureCallback.kt @@ -7,4 +7,5 @@ package com.mogo.och.common.module.callback interface OchAdasStartFailureCallback { fun onStartAutopilotFailure(startFailedCode : String, startFailedMessage : String) + fun onStartAutopilotSuccess(type:String) } \ No newline at end of file diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilot/OCHAdasAbilityManager.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilot/OCHAdasAbilityManager.java index 3f403f797c..10135d784e 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilot/OCHAdasAbilityManager.java +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilot/OCHAdasAbilityManager.java @@ -137,25 +137,31 @@ public class OCHAdasAbilityManager implements IMoGoAutopilotActionsListener, IMo public void onAutopilotStatistics(@Nullable AutopilotStatistics statistics) { if (statistics == null) return; Logger.d(TAG, "AutopilotStatistics= " + statistics.status); - if (failureCallback != null && 1 == statistics.status) { - if (statistics.fsmState != null) { - startFailedCode = ""; - if (statistics.fsmState.hasSession()) { - Fsm2024.Session session = statistics.fsmState.getSession(); - if (session.hasSessionFailReason()) { - startFailedMessage = session.getSessionFailReason(); + if (failureCallback != null) { + if(statistics.status==1) { + if (statistics.fsmState != null) { + startFailedCode = ""; + if (statistics.fsmState.hasSession()) { + Fsm2024.Session session = statistics.fsmState.getSession(); + if (session.hasSessionFailReason()) { + startFailedMessage = session.getSessionFailReason(); + } } + } else if (statistics.failedMessage != null) { + startFailedCode = statistics.failedMessage.getCode(); + startFailedMessage = statistics.failedMessage.getMsg(); } - } else if (statistics.failedMessage != null) { - startFailedCode = statistics.failedMessage.getCode(); - startFailedMessage = statistics.failedMessage.getMsg(); + failureCallback.onStartAutopilotFailure(startFailedCode, startFailedMessage); + if (!AppIdentityModeUtils.isSweeper(FunctionBuildConfig.appIdentityMode)) { + LineManager.invokeStartAutopilotFailure(startFailedCode, startFailedMessage); + } + Logger.d(TAG, String.format("statistics-startFailedCode = s%; startFailedMessage = s%", + startFailedCode, startFailedMessage)); + }else if(statistics.status==0) { + //启动自驾成功 + failureCallback.onStartAutopilotSuccess(statistics.source.toString()); + LineManager.INSTANCE.triggerStartServiceEvent(true, 2,statistics.source.toString()); } - failureCallback.onStartAutopilotFailure(startFailedCode, startFailedMessage); - if (!AppIdentityModeUtils.isSweeper(FunctionBuildConfig.appIdentityMode)) { - LineManager.invokeStartAutopilotFailure(startFailedCode, startFailedMessage); - } - Logger.d(TAG, String.format("statistics-startFailedCode = s%; startFailedMessage = s%", - startFailedCode, startFailedMessage)); } } diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilot/autopilot/OchAutoPilotStatusListenerManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilot/autopilot/OchAutoPilotStatusListenerManager.kt index 4942cccbf8..0c273facca 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilot/autopilot/OchAutoPilotStatusListenerManager.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilot/autopilot/OchAutoPilotStatusListenerManager.kt @@ -72,7 +72,7 @@ object OchAutoPilotStatusListenerManager : CallerBase { - LineManager.triggerStartServiceEvent(true,1) + LineManager.triggerStartServiceEvent(true,1,"") } } } diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilot/autopilot/OchAutopilotAnalytics.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilot/autopilot/OchAutopilotAnalytics.kt index 6a0d2ba0cc..9a3182216a 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilot/autopilot/OchAutopilotAnalytics.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilot/autopilot/OchAutopilotAnalytics.kt @@ -29,6 +29,7 @@ object OchAutopilotAnalytics { private const val EVENT_PARAM_END_NAME = "end_name" private const val EVENT_PARAM_LINE_ID = "line_id" private const val EVENT_PARAM_ORDER_NUMBER = "order_num" + private const val EVENT_PARAM_AUTOPILOT_FROM = "AUTOPILOT_FROM" private const val EVENT_PARAM_UNABLE_START_REASON = "unable_start_reason" private const val EVENT_PARAM_MAP_ORIGINAL_DATA = "map_original_data" // 域控原始状态信息 private const val EVENT_PARAM_AUTOPILOT_STATE = "autopilot_state" //原始的自动驾驶状态 @@ -173,6 +174,7 @@ object OchAutopilotAnalytics { lineId: Int, orderId:String?, triggerDate: Long, + type:String? = "", source:Int = 0 ) { OchChainLogManager.writeChainLogAutopilot("自驾流程","send:${send}_${restart}_${startName}_${endName}_${lineId}_${orderId}_${source}_${triggerDate}") @@ -192,6 +194,7 @@ object OchAutopilotAnalytics { mStartAutopilotParams[EVENT_PARAM_START_FAILURE_CODE] = "" mStartAutopilotParams[EVENT_PARAM_START_FAILURE_MSG] = "" mStartAutopilotParams[EVENT_PARAM_START_RESULT] = true + mStartAutopilotParams[EVENT_PARAM_AUTOPILOT_FROM] = type?:"" mStartAutopilotParams[EVENT_PARAM_START_RESULT_SOURCE] = source // 自动驾驶状态变更时间 mStartAutopilotParams[EVENT_PARAM_START_SUCCESS_TIME] = DateTimeUtils.getTimeText(triggerDate,DateTimeUtils.yyyy_MM_dd_HH_mm_ss_SSS) diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilot/line/LineManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilot/line/LineManager.kt index 7fe18b8e84..721d21dc72 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilot/line/LineManager.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/autopilot/line/LineManager.kt @@ -482,7 +482,7 @@ object LineManager : CallerBase() { return } - triggerStartServiceEvent(false,0) + triggerStartServiceEvent(false,0,"") val parameters = initAutopilotControlParameters() if (null == parameters) { @@ -514,7 +514,7 @@ object LineManager : CallerBase() { } } - fun triggerStartServiceEvent(send: Boolean,source:Int) { + fun triggerStartServiceEvent(send: Boolean,source:Int,type:String) { getStationsWithLine { start, end, lineInfo -> OchAutopilotAnalytics.triggerStartAutopilotEvent( isFirstStartAutopilot, @@ -524,6 +524,7 @@ object LineManager : CallerBase() { lineInfo.lineId.toInt(), "", System.currentTimeMillis(), + type, source ) } diff --git a/OCH/offline/driver/src/main/java/com/mogo/och/offline/model/OrderModel.java b/OCH/offline/driver/src/main/java/com/mogo/och/offline/model/OrderModel.java index ca3026abb2..ebe601a4d4 100644 --- a/OCH/offline/driver/src/main/java/com/mogo/och/offline/model/OrderModel.java +++ b/OCH/offline/driver/src/main/java/com/mogo/och/offline/model/OrderModel.java @@ -244,6 +244,12 @@ public class OrderModel { private final OchAdasStartFailureCallback mAdasStartFailureListener = new OchAdasStartFailureCallback() { + @Override + public void onStartAutopilotSuccess(String type) { + OrderModel.getInstance().triggerStartServiceEvent( + OrderModel.getInstance().isRestartAutopilot(), true,2,type); + } + @Override public void onStartAutopilotFailure(@NotNull String startFailedCode, @NonNull String startFailedMessage) { if (mADASStatusCallback != null && !FunctionBuildConfig.isDemoMode) { @@ -557,7 +563,7 @@ public class OrderModel { firstStartAutopilot++; - triggerStartServiceEvent(isRestart, false,0); + triggerStartServiceEvent(isRestart, false,0,""); AutopilotControlParameters parameters = initAutopilotControlParameters(leaveIndex); if (null == parameters) { @@ -990,14 +996,14 @@ public class OrderModel { LoginStatusManager.loginOut(); } - public void triggerStartServiceEvent(boolean isRestart, boolean send,int source) { + public void triggerStartServiceEvent(boolean isRestart, boolean send,int source,String type) { if (stationList == null || backgroundCurrentStationIndex >= stationList.size() - 1) { return; } BusStationBean currentStation = stationList.get(backgroundCurrentStationIndex); BusStationBean nextStation = stationList.get(backgroundCurrentStationIndex + 1); OchAutopilotAnalytics.INSTANCE.triggerStartAutopilotEvent(isRestart, send, - currentStation.getName(), nextStation.getName(), busRoutesResult.getLineId(), "", System.currentTimeMillis(),source); + currentStation.getName(), nextStation.getName(), busRoutesResult.getLineId(), "", System.currentTimeMillis(),type,source); } public void triggerUpdateStartAutoPilotSessionId(long sessionId) { diff --git a/OCH/offline/driver/src/main/java/com/mogo/och/offline/presenter/BusPresenter.java b/OCH/offline/driver/src/main/java/com/mogo/och/offline/presenter/BusPresenter.java index fcd6644a24..a7b1a0118f 100644 --- a/OCH/offline/driver/src/main/java/com/mogo/och/offline/presenter/BusPresenter.java +++ b/OCH/offline/driver/src/main/java/com/mogo/och/offline/presenter/BusPresenter.java @@ -208,7 +208,7 @@ public class BusPresenter extends Presenter break; case IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING: OrderModel.getInstance().triggerStartServiceEvent( - OrderModel.getInstance().isRestartAutopilot(), true,0); + OrderModel.getInstance().isRestartAutopilot(), true,0,""); // 改变UI自动驾驶状态 UiThreadHandler.post(new Runnable() { @Override @@ -236,7 +236,7 @@ public class BusPresenter extends Presenter public void onAutopilotStatusResponseFromCan(int state) { if (state == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING) { OrderModel.getInstance().triggerStartServiceEvent( - OrderModel.getInstance().isRestartAutopilot(), true,1); + OrderModel.getInstance().isRestartAutopilot(), true,1,""); } } diff --git a/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/operate/model/SweeperOperateTaskModel.java b/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/operate/model/SweeperOperateTaskModel.java index 34dd94048c..f41bc96647 100644 --- a/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/operate/model/SweeperOperateTaskModel.java +++ b/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/operate/model/SweeperOperateTaskModel.java @@ -297,6 +297,11 @@ public class SweeperOperateTaskModel { private final OchAdasStartFailureCallback mAdasStartFailureListener = new OchAdasStartFailureCallback() { + @Override + public void onStartAutopilotSuccess(String type) { + + } + @Override public void onStartAutopilotFailure(@NotNull String startFailedCode, @NonNull String startFailedMessage) { DebugView.Companion.printInfoMsg("[启自驾] 执行失败,code=" + startFailedCode + ", msg=" + startFailedMessage); diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/TaxiTaskModel.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/TaxiTaskModel.kt index 029cc4b8df..50685bb83d 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/TaxiTaskModel.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/TaxiTaskModel.kt @@ -287,20 +287,7 @@ object TaxiTaskModel { } override fun onAutopilotStatusResponseFromCan(state: Int) { - super.onAutopilotStatusResponseFromCan(state) - if (state == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING) { - if ((QueryCurrentTaskRespBean.isTaskStartTaskType(mCurrentTaskWithOrder))) { - OchAutopilotAnalytics.triggerStartAutopilotEvent( - isRestartAutopilot, - true, - mCurrentTaskWithOrder!!.order!!.orderStartSite!!.siteName, - mCurrentTaskWithOrder!!.order!!.orderEndSite!!.siteName, - mCurrentTaskWithOrder!!.lineId.toInt(), - mCurrentTaskWithOrder!!.order!!.orderNo, - System.currentTimeMillis(),1 - ) - } - } + } override fun onAutopilotStatusResponse(state: Int) { @@ -308,15 +295,6 @@ object TaxiTaskModel { if (state == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING) { DebugView.printInfoMsg("[自驾状态变化] afterValue=STATUS_AUTOPILOT_RUNNING,meaning=自动驾驶中") if ((QueryCurrentTaskRespBean.isTaskStartTaskType(mCurrentTaskWithOrder))) { - OchAutopilotAnalytics.triggerStartAutopilotEvent( - isRestartAutopilot, - true, - mCurrentTaskWithOrder!!.order!!.orderStartSite!!.siteName, - mCurrentTaskWithOrder!!.order!!.orderEndSite!!.siteName, - mCurrentTaskWithOrder!!.lineId.toInt(), - mCurrentTaskWithOrder!!.order!!.orderNo, - System.currentTimeMillis(),0 - ) setBeautificationMode(true) } } else if (state == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE) { @@ -480,6 +458,10 @@ object TaxiTaskModel { ) } } + + override fun onStartAutopilotSuccess(type:String) { + + } } //监听网络变化,避免启动机器时无网导致无法更新订单信息 diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/unmanned/passenger/model/AutopilotManager.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/unmanned/passenger/model/AutopilotManager.kt index 9e1ba3b797..9ebc7395fa 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/unmanned/passenger/model/AutopilotManager.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/unmanned/passenger/model/AutopilotManager.kt @@ -124,6 +124,7 @@ object AutopilotManager : IOchAutopilotStatusListener { lineId.toInt(), TaxiPassengerModel.currentOCHOrder!!.orderNo, System.currentTimeMillis(), + "", 0 ) OchAutopilotAnalytics.triggerUpdateStartAutoPilotSessionId(sessionId) @@ -222,6 +223,7 @@ object AutopilotManager : IOchAutopilotStatusListener { TaxiPassengerModel.currentOCHOrder!!.orderNo.toInt(), TaxiPassengerModel.currentLineId.toString(), System.currentTimeMillis(), + "", 1 ) } @@ -242,6 +244,7 @@ object AutopilotManager : IOchAutopilotStatusListener { TaxiPassengerModel.currentOCHOrder!!.orderNo.toInt(), TaxiPassengerModel.currentLineId.toString(), System.currentTimeMillis(), + "", 0 ) if(needSpeakByStartAutopilot) { diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/unmanned/passenger/model/TaxiPassengerModel.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/unmanned/passenger/model/TaxiPassengerModel.kt index 71752cb1dc..93e504bb04 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/unmanned/passenger/model/TaxiPassengerModel.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/unmanned/passenger/model/TaxiPassengerModel.kt @@ -19,9 +19,7 @@ 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.network.OchCommonServiceCallback -import com.mogo.och.common.module.callback.OchAdasStartFailureCallback import com.mogo.och.common.module.manager.socket.cloud.AbnormalFactorsLoopManager -import com.mogo.och.common.module.manager.autopilot.OCHAdasAbilityManager import com.mogo.och.common.module.manager.distance.IDistanceListener import com.mogo.och.common.module.manager.distance.TrajectoryAndDistanceManager import com.mogo.och.common.module.manager.loop.BizLoopManager @@ -32,7 +30,6 @@ import com.mogo.och.common.module.voice.VoiceNotice import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum.Companion.valueOf import com.mogo.och.common.module.biz.order.OrderModel -import com.mogo.och.common.module.manager.autopilot.autopilot.OchAutopilotAnalytics import com.mogo.och.data.taxi.QueryCarOrderByNoRespBean import com.mogo.och.unmanned.passenger.bean.TaxiPassengerBaseRespBean import com.mogo.och.unmanned.passenger.bean.TaxiPassengerGetTrajectoryByLineIdRespBean diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/unmanned/passenger/presenter/BaseTaxiPassengerPresenter.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/unmanned/passenger/presenter/BaseTaxiPassengerPresenter.kt index 65818e32b6..f3d7a215c8 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/unmanned/passenger/presenter/BaseTaxiPassengerPresenter.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/unmanned/passenger/presenter/BaseTaxiPassengerPresenter.kt @@ -13,6 +13,8 @@ import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum import com.mogo.och.data.taxi.BaseOrderBean import com.mogo.och.common.module.biz.order.OrderListener import com.mogo.och.common.module.biz.order.OrderModel +import com.mogo.och.common.module.callback.OchAdasStartFailureCallback +import com.mogo.och.common.module.manager.autopilot.autopilot.OchAutopilotAnalytics import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager import com.mogo.och.unmanned.passenger.callback.IOCHTaxiPassengerOrderStatusCallback import com.mogo.och.unmanned.passenger.model.TaxiPassengerModel @@ -27,14 +29,41 @@ class BaseTaxiPassengerPresenter(view: TaxiPassengerBaseFragment?) : OrderListener { init { - TaxiPassengerModel.init(AbsMogoApplication.getApp()) - OCHAdasAbilityManager.getInstance().init(AbsMogoApplication.getApp()) - initListeners() } + private val mAdasStartAutopilotFailureListener: OchAdasStartFailureCallback = + object : OchAdasStartFailureCallback { + override fun onStartAutopilotFailure( + startFailedCode: String, + startFailedMessage: String + ) { + + } + + override fun onStartAutopilotSuccess(type:String) { + if (TaxiPassengerModel.currentOCHOrder != null && TaxiPassengerModel.curOrderStatus === TaxiOrderStatusEnum.UserArriveAtStart) { + OchAutopilotAnalytics.triggerStartAutopilotEvent( + false, + true, + TaxiPassengerModel.currentOCHOrder!!.orderStartSite.siteName, + TaxiPassengerModel.currentOCHOrder!!.orderEndSite.siteName, + TaxiPassengerModel.currentOCHOrder!!.orderNo.toInt(), + TaxiPassengerModel.currentLineId.toString(), + System.currentTimeMillis(), + type, + 3 + ) + } + } + } + override fun onCreate(owner: LifecycleOwner) { super.onCreate(owner) d(SceneConstant.M_TAXI_P + TAG, "网约车-出租车拿到订单") + TaxiPassengerModel.init(AbsMogoApplication.getApp()) + OCHAdasAbilityManager.getInstance().init(AbsMogoApplication.getApp()) + OCHAdasAbilityManager.getInstance().setAdasStartFailureCallback(mAdasStartAutopilotFailureListener) + initListeners() } override fun onDestroy(owner: LifecycleOwner) { @@ -42,6 +71,7 @@ class BaseTaxiPassengerPresenter(view: TaxiPassengerBaseFragment?) : releaseListeners() TaxiPassengerModel.release() OCHAdasAbilityManager.getInstance().release() + OCHAdasAbilityManager.getInstance().setAdasStartFailureCallback(null) } private fun initListeners() {