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 9b827fa0e5..21fd6df0d2 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 @@ -11,7 +11,7 @@ object LineManager : CallerBase() { @JvmStatic fun setLineId(value: Int) { lineId = if (value < 0) { - clearGlobalTrajectory() + clearGlobalTrajectory(true) -1 } else { value @@ -20,7 +20,7 @@ object LineManager : CallerBase() { @JvmStatic fun setLineId(value: Long) { lineId = if (value < 0) { - clearGlobalTrajectory() + clearGlobalTrajectory(true) -1 } else { value.toInt() @@ -45,8 +45,8 @@ object LineManager : CallerBase() { return CallerMapGlobalTrajectoryDrawManager.hasDrawnGlobalTrajectory() } - fun clearGlobalTrajectory() { - CallerMapGlobalTrajectoryDrawManager.clearGlobalTrajectory() + fun clearGlobalTrajectory(isClearData: Boolean) { + CallerMapGlobalTrajectoryDrawManager.clearGlobalTrajectory(isClearData) if (!hasDrawnGlobalTrajectory()){ M_LISTENERS.forEach { it.value.clearLineSuccess() diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/map/drawline/LineView.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/map/drawline/LineView.kt index 175d39eaf2..d7f9262861 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/map/drawline/LineView.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/map/drawline/LineView.kt @@ -36,7 +36,7 @@ class LineView : AppCompatImageView, LineViewModel.ILineViewCallback { onClick { if (LineManager.hasDrawnGlobalTrajectory()) { - LineManager.clearGlobalTrajectory() + LineManager.clearGlobalTrajectory(false) } else { val drawGlobalTrajectory = LineManager.drawGlobalTrajectory() if (!drawGlobalTrajectory.first) { diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/TaxiRoutingFragmentViewModel.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/TaxiRoutingFragmentViewModel.kt index 035e97d033..a8dac1afa1 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/TaxiRoutingFragmentViewModel.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/TaxiRoutingFragmentViewModel.kt @@ -8,6 +8,7 @@ import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02Lis import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.core.utilcode.util.ActivityUtils import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.mogo.och.common.module.manager.autopilot.line.LineManager import com.mogo.och.common.module.map.AmapNaviToDestinationModel import com.mogo.och.unmanned.taxi.base.BaseViewModel import com.mogo.och.unmanned.taxi.base.IUiIntent @@ -54,6 +55,9 @@ class TaxiRoutingFragmentViewModel : BaseViewModel(), // 设置task执行相关状态,切换模式时判断使用 if (result == null || result.taskType == TaskTypeEnum.None.code) { MogoStatusManager.getInstance().setTaxiUnmanedDriverPerformTask(TAG, false) + LineManager.setLineId(-1) } else { MogoStatusManager.getInstance().setTaxiUnmanedDriverPerformTask(TAG, true) } @@ -338,6 +339,7 @@ class TaxiCurrentTaskViewModel : BaseViewModel(), TaxiTaskModel.cancelAutopilot() // 设置task执行相关状态,切换模式时判断使用 MogoStatusManager.getInstance().setTaxiUnmanedDriverPerformTask(TAG, false) + LineManager.setLineId(-1) } override fun onOrderArriveAtEnd(orderNo: String) { @@ -361,6 +363,7 @@ class TaxiCurrentTaskViewModel : BaseViewModel(), } // 设置task执行相关状态,切换模式时判断使用 MogoStatusManager.getInstance().setTaxiUnmanedDriverPerformTask(TAG, false) + LineManager.setLineId(-1) } override fun onStartAutopilot(postDelayTime: Long) { 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 6d2673330a..f264c0fbd0 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 @@ -1478,6 +1478,7 @@ object TaxiTaskModel { mCurrentTaskWithOrder = null mDriveToNearestStationTask = null DebugView.printInfoMsg("[登出] 退出登陆") + LineManager.setLineId(-1) MogoStatusManager.getInstance().setTaxiUnmanedDriverPerformTask(TAG, false) MogoStatusManager.getInstance().setTaxiUnmanedDriverTakingOrders(TAG, false) MogoStatusManager.getInstance().setTaxiUnmanedDriverLineRoutingPerformTask(TAG, false) diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/trajectoryoverlay/MogoTrajectoryOverlayManager.java b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/trajectoryoverlay/MogoTrajectoryOverlayManager.java index e247f6cf9e..2ecfd9468c 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/trajectoryoverlay/MogoTrajectoryOverlayManager.java +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/trajectoryoverlay/MogoTrajectoryOverlayManager.java @@ -82,10 +82,13 @@ public class MogoTrajectoryOverlayManager implements IMoGoPlanningRottingListene } } - public void clearTrajectoryOverlay() { + public void clearTrajectoryOverlay(boolean isClearData) { CallerLogger.i(TAG, "clearTrajectoryOverlay"); trackEvent("clearTrajectoryOverlay", "开始执行"); TrajectoryOverlayDrawer.getInstance().clearMogoTrajectoryOverlay(); + if (isClearData) { + queue.clear(); + } trackEvent("clearTrajectoryOverlay", "success"); } diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/trajectoryoverlay/MogoTrajectoryOverlayProvider.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/trajectoryoverlay/MogoTrajectoryOverlayProvider.kt index f89111622c..c2ea315c0c 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/trajectoryoverlay/MogoTrajectoryOverlayProvider.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/trajectoryoverlay/MogoTrajectoryOverlayProvider.kt @@ -35,8 +35,8 @@ class MogoTrajectoryOverlayProvider : IMoGoGlobalTrajectoryDrawListener { return Pair(result.first, result.second) } - override fun clearGlobalTrajectory() { - MogoTrajectoryOverlayManager.getInstance().clearTrajectoryOverlay() + override fun clearGlobalTrajectory(isClearData: Boolean) { + MogoTrajectoryOverlayManager.getInstance().clearTrajectoryOverlay(isClearData) hasDrawn.set(false) CallerLogger.i(TAG, "clearGlobalTrajectory --> hasDrawn=$hasDrawn") } diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/map/trajectory/IMoGoGlobalTrajectoryDrawListener.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/map/trajectory/IMoGoGlobalTrajectoryDrawListener.kt index 6f86e76437..10d8610c40 100644 --- a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/map/trajectory/IMoGoGlobalTrajectoryDrawListener.kt +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/map/trajectory/IMoGoGlobalTrajectoryDrawListener.kt @@ -18,5 +18,5 @@ interface IMoGoGlobalTrajectoryDrawListener : IProvider { /** * 清除高精地图中的全局轨迹 */ - fun clearGlobalTrajectory() + fun clearGlobalTrajectory(isClearData: Boolean) } \ No newline at end of file diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/map/CallerMapGlobalTrajectoryDrawManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/map/CallerMapGlobalTrajectoryDrawManager.kt index 523dea5f66..682d018d8d 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/map/CallerMapGlobalTrajectoryDrawManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/map/CallerMapGlobalTrajectoryDrawManager.kt @@ -37,8 +37,8 @@ object CallerMapGlobalTrajectoryDrawManager { /** * 清除高精地图中的全局轨迹 */ - fun clearGlobalTrajectory() { - provider?.clearGlobalTrajectory() + fun clearGlobalTrajectory(isClearData: Boolean) { + provider?.clearGlobalTrajectory(isClearData) } } \ No newline at end of file