From 0374bb130f4f28c41a06d7d236e9c052b70fc1a5 Mon Sep 17 00:00:00 2001 From: chenfufeng Date: Fri, 7 Apr 2023 15:19:55 +0800 Subject: [PATCH] =?UTF-8?q?[2.15.0][opt]=E5=85=BC=E5=AE=B9V2N=E6=96=B0?= =?UTF-8?q?=E6=97=A7=E9=93=BE=E8=B7=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../eagle/function/biz/FuncBizProvider.kt | 8 ++- .../biz/v2x/overview/OverViewDataManager.kt | 7 ++- .../function/hmi/ui/setting/SOPSettingView.kt | 5 ++ .../src/main/res/layout/view_sop_setting.xml | 16 +++++- .../eagle/core/function/view/OverMapView.kt | 52 +++++++++++++------ .../core/data/config/FunctionBuildConfig.kt | 7 +++ .../autopilot/CallerV2XListenerManager.kt | 10 +++- 7 files changed, 82 insertions(+), 23 deletions(-) diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/FuncBizProvider.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/FuncBizProvider.kt index 58f583c45e..f1c6dfd74e 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/FuncBizProvider.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/FuncBizProvider.kt @@ -19,6 +19,7 @@ import com.mogo.eagle.function.biz.v2x.overview.db.OverviewDb import com.mogo.eagle.function.biz.v2x.road.LineUploadManager import com.mogo.eagle.function.biz.v2x.trafficlight.core.MogoTrafficLightManager import com.mogo.eagle.function.biz.v2x.v2n.V2XEventManager +import com.mogo.eagle.function.biz.v2x.v2n.V2XPoiLoader.Companion.v2xPoiLoader import com.mogo.eagle.function.biz.v2x.v2n.pnc.* import com.mogo.eagle.function.biz.v2x.vip.VipCarManager @@ -91,11 +92,14 @@ class FuncBizProvider : IMoGoFuncBizProvider { } override fun getAllV2XEvents() { -// OverViewDataManager.getAllV2XEventsByLineId(MoGoAiCloudClientConfig.getInstance().sn) + OverViewDataManager.getAllV2XEventsByLineId(MoGoAiCloudClientConfig.getInstance().sn) } override fun queryV2XEvents() { -// v2xPoiLoader.queryWholeRoadEvents() + if ((AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode) && !FunctionBuildConfig.isNewV2NData) + || AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)) { + v2xPoiLoader.queryWholeRoadEvents() + } } override fun onDestroy() { diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/overview/OverViewDataManager.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/overview/OverViewDataManager.kt index e022c3d245..1f0f568a4d 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/overview/OverViewDataManager.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/overview/OverViewDataManager.kt @@ -3,10 +3,12 @@ package com.mogo.eagle.function.biz.v2x.overview import androidx.lifecycle.* import com.mogo.commons.AbsMogoApplication import com.mogo.commons.constants.HostConst +import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.map.Infrastructure import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager import com.mogo.eagle.core.function.call.biz.CallerFuncBizListenerManager import com.mogo.eagle.core.network.MoGoRetrofitFactory +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.function.biz.v2x.overview.db.OverviewDb @@ -105,7 +107,10 @@ object OverViewDataManager { .observeOn(AndroidSchedulers.mainThread()) .subscribe { it?.apply { - CallerFuncBizListenerManager.invokeV2XEvents(this) + if ((AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode) && !FunctionBuildConfig.isNewV2NData) + || AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)) { + CallerFuncBizListenerManager.invokeV2XEvents(this) + } } } } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/SOPSettingView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/SOPSettingView.kt index 2572fe8dfe..aa76988ecc 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/SOPSettingView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/SOPSettingView.kt @@ -207,6 +207,11 @@ internal class SOPSettingView @JvmOverloads constructor( FunctionBuildConfig.isReportWarning = isChecked } + tbNewV2NData.isChecked = FunctionBuildConfig.isNewV2NData + tbNewV2NData.setOnCheckedChangeListener { _, isChecked -> + FunctionBuildConfig.isNewV2NData = isChecked + } + //变道绕障的目标障碍物速度阈值 tvSpeed.text = "${FunctionBuildConfig.detouringSpeed} m/s" ivSpeedReduce.setOnClickListener { diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_sop_setting.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_sop_setting.xml index 61553163b8..fbd9d9277f 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_sop_setting.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_sop_setting.xml @@ -247,12 +247,26 @@ app:layout_constraintTop_toBottomOf="@id/tbGreenWaveSop" /> + + ?) { -// showV2XEventMarkers(v2XEventData) + showV2XEventMarkers(v2XEventData) } }) CallerV2XListenerManager.addListener(TAG, this) @@ -719,34 +721,50 @@ class OverMapView @JvmOverloads constructor( val list = ArrayList() constructList?.forEach { it.eventPos?.offsetLL?.positionLatLon?.let { latLon -> - list.add(V2XEventData( - 0, 0, "", Center(latLon.lat * 10.0.pow(-7.0), - latLon.lon * 10.0.pow(-7.0)), null, 0.0, "10006", 1 - )) + list.add( + V2XEventData( + 0, 0, "", Center( + latLon.lat * 10.0.pow(-7.0), + latLon.lon * 10.0.pow(-7.0) + ), null, 0.0, "10006", 1 + ) + ) } } triangleList?.forEach { it.eventPos?.offsetLL?.positionLatLon?.let { latLon -> - list.add(V2XEventData( - 0, 0, "", Center(latLon.lat * 10.0.pow(-7.0), - latLon.lon * 10.0.pow(-7.0)), null, 0.0, "10032", 1 - )) + list.add( + V2XEventData( + 0, 0, "", Center( + latLon.lat * 10.0.pow(-7.0), + latLon.lon * 10.0.pow(-7.0) + ), null, 0.0, "10032", 1 + ) + ) } } congestionList?.forEach { it.eventPos?.offsetLL?.positionLatLon?.let { latLon -> - list.add(V2XEventData( - 0, 0, "", Center(latLon.lat * 10.0.pow(-7.0), - latLon.lon * 10.0.pow(-7.0)), null, 0.0, "10007", 1 - )) + list.add( + V2XEventData( + 0, 0, "", Center( + latLon.lat * 10.0.pow(-7.0), + latLon.lon * 10.0.pow(-7.0) + ), null, 0.0, "10007", 1 + ) + ) } } parkingList?.forEach { it.pos?.offsetLL?.positionLatLon?.let { latLon -> - list.add(V2XEventData( - 0, 0, "", Center(latLon.lat * 10.0.pow(-7.0), - latLon.lon * 10.0.pow(-7.0)), null, 0.0, "10025", 1 - )) + list.add( + V2XEventData( + 0, 0, "", Center( + latLon.lat * 10.0.pow(-7.0), + latLon.lon * 10.0.pow(-7.0) + ), null, 0.0, "10025", 1 + ) + ) } } UiThreadHandler.post { diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/FunctionBuildConfig.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/FunctionBuildConfig.kt index a0a68b54c3..b09f151845 100644 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/FunctionBuildConfig.kt +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/FunctionBuildConfig.kt @@ -187,6 +187,13 @@ object FunctionBuildConfig { @JvmField var isReportWarning = true + /** + * 是否是V2N新链路(云->工控机->App) + */ + @Volatile + @JvmField + var isNewV2NData = false + /** * 是否开启PNC障碍物颜色提醒 */ diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerV2XListenerManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerV2XListenerManager.kt index 9164301af8..8269cd19a5 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerV2XListenerManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerV2XListenerManager.kt @@ -1,7 +1,9 @@ package com.mogo.eagle.core.function.call.autopilot +import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.function.api.autopilot.IMoGoV2XListener import com.mogo.eagle.core.function.call.base.CallerBase +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import mogo.v2x.MogoV2X /** @@ -17,7 +19,9 @@ object CallerV2XListenerManager : CallerBase() { override fun doSomeAfterAddListener(tag: String, listener: IMoGoV2XListener) { if (eventCountTmp >= 0) { - listener.onV2nGlobalPathEvents(eventCountTmp, constructTmp, triangleTmp, congestionTmp, parkingViolationTmp) + if (AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode) && FunctionBuildConfig.isNewV2NData) { + listener.onV2nGlobalPathEvents(eventCountTmp, constructTmp, triangleTmp, congestionTmp, parkingViolationTmp) + } } } @@ -32,7 +36,9 @@ object CallerV2XListenerManager : CallerBase() { parkingViolationTmp = parkingViolation M_LISTENERS.forEach { val listener = it.value - listener.onV2nGlobalPathEvents(eventCount, construct, triangle, congestion, parkingViolation) + if (AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode) && FunctionBuildConfig.isNewV2NData) { + listener.onV2nGlobalPathEvents(eventCount, construct, triangle, congestion, parkingViolation) + } } } } \ No newline at end of file