From 172c5a6503a1e541ead2c6208c942a9509f94fbc Mon Sep 17 00:00:00 2001 From: aibingbing Date: Fri, 28 Jun 2024 17:10:17 +0800 Subject: [PATCH] =?UTF-8?q?[646]=20fix:=20=E8=AE=A2=E5=8D=95=E7=BB=93?= =?UTF-8?q?=E6=9D=9F=E5=90=8E=20=E6=B2=A1=E6=B8=85=E9=99=A4=E5=85=A8?= =?UTF-8?q?=E5=B1=80=E8=BD=A8=E8=BF=B9=20=E9=97=AE=E9=A2=98=EF=BC=9B=20fix?= =?UTF-8?q?:=20=E8=AE=A2=E5=8D=95=E7=BB=93=E6=9D=9F=E5=90=8E=E6=B8=85?= =?UTF-8?q?=E9=99=A4=E5=85=A8=E5=B1=80=E8=BD=A8=E8=BF=B9=E6=97=B6=20?= =?UTF-8?q?=E5=90=8C=E6=97=B6=E6=B8=85=E9=99=A4=20=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=EF=BC=8C=E7=AD=89=E5=BE=85=E4=B8=8B=E4=B8=80=E4=B8=AA=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E5=86=8D=E6=AC=A1=E8=BF=94=E5=9B=9E=E5=85=A8=E5=B1=80?= =?UTF-8?q?=E8=BD=A8=E8=BF=B9=E8=A7=84=E5=88=92=E6=95=B0=E6=8D=AE=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/module/manager/autopilot/line/LineManager.kt | 8 ++++---- .../och/common/module/wigets/map/drawline/LineView.kt | 2 +- .../taxi/ui/routing/TaxiRoutingFragmentViewModel.kt | 5 +++++ .../och/unmanned/taxi/ui/task/TaxiCurrentTaskViewModel.kt | 3 +++ .../com/mogo/och/unmanned/taxi/ui/task/TaxiTaskModel.kt | 1 + .../trajectoryoverlay/MogoTrajectoryOverlayManager.java | 5 ++++- .../trajectoryoverlay/MogoTrajectoryOverlayProvider.kt | 4 ++-- .../map/trajectory/IMoGoGlobalTrajectoryDrawListener.kt | 2 +- .../call/map/CallerMapGlobalTrajectoryDrawManager.kt | 4 ++-- 9 files changed, 23 insertions(+), 11 deletions(-) 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