From 32ca3026d06a6a7bea02cf9ef268e831c814381d Mon Sep 17 00:00:00 2001 From: lixiaopeng Date: Mon, 5 Dec 2022 19:38:42 +0800 Subject: [PATCH 1/7] =?UTF-8?q?[2.13.0=20=E4=BC=98=E5=8C=96obu=E6=98=BE?= =?UTF-8?q?=E7=A4=BA]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../obu/mogo/MogoPrivateObuNewManager.kt | 171 ++++++------------ .../data/enums/EventTypeEnumTrafficLight.kt | 71 ++++++++ .../enums/EventTypeEnumWeaknessTraffic.kt | 4 +- .../icon_warning_v2x_motobike.png | Bin 0 -> 18424 bytes 4 files changed, 131 insertions(+), 115 deletions(-) create mode 100644 core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/EventTypeEnumTrafficLight.kt create mode 100644 core/mogo-core-res/src/main/function-hmi-res/drawable-xhdpi/icon_warning_v2x_motobike.png diff --git a/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MogoPrivateObuNewManager.kt b/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MogoPrivateObuNewManager.kt index 0a3be5cb96..058d3ec7ad 100644 --- a/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MogoPrivateObuNewManager.kt +++ b/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MogoPrivateObuNewManager.kt @@ -4,24 +4,19 @@ import android.content.Context import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.config.HmiBuildConfig import com.mogo.eagle.core.data.config.HmiBuildConfig.isShowObuLimitSpeedView -import com.mogo.eagle.core.data.enums.EventTypeEnumNew -import com.mogo.eagle.core.data.enums.EventTypeEnumWeaknessTraffic -import com.mogo.eagle.core.data.enums.V2iEventTypeEnum -import com.mogo.eagle.core.data.enums.WarningDirectionEnum +import com.mogo.eagle.core.data.enums.* import com.mogo.eagle.core.data.msgbox.MsgBoxBean import com.mogo.eagle.core.data.msgbox.MsgBoxType import com.mogo.eagle.core.data.msgbox.V2XMsg import com.mogo.eagle.core.function.api.hmi.warning.IMoGoWarningStatusListener import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager import com.mogo.eagle.core.function.call.hmi.CallerHmiManager -import com.mogo.eagle.core.function.call.hmi.CallerHmiManager.showLimitingVelocity import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager import com.mogo.eagle.core.function.call.map.CallerVisualAngleManager import com.mogo.eagle.core.function.call.map.CallerVisualAngleManager.Scene.Default import com.mogo.eagle.core.function.call.map.CallerVisualAngleManager.Scene.TooClose import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxManager import com.mogo.eagle.core.function.call.obu.CallerObuListenerManager -import com.mogo.eagle.core.function.call.v2x.CallLimitingVelocityListenerManager.invokeOnLimitingVelocityChange import com.mogo.eagle.core.function.obu.mogo.MogoObuConst.TAG_MOGO_OBU import com.mogo.eagle.core.function.obu.mogo.utils.TrafficDataConvertUtilsNew import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger @@ -577,7 +572,7 @@ class MogoPrivateObuNewManager private constructor() { } /** - * 地图匹配 是OBU算法输出地图匹配结果,主车匹配道路哪条路或者哪条车道 TODO + * 地图匹配 是OBU算法输出地图匹配结果,主车匹配道路哪条路或者哪条车道 */ override fun onMogoObuMapMath(data: MogoObuMapMathData?) { super.onMogoObuMapMath(data) @@ -615,7 +610,7 @@ class MogoPrivateObuNewManager private constructor() { * 获取消息的方位 车辆相关 */ private fun getMessageDirection(targetClassification: Int): WarningDirectionEnum { - // CallerLogger.d("$M_OBU${MogoObuConst.TAG_MOGO_OBU}", "预警红边:预警方向->$targetClassification") +// CallerLogger.d("$M_OBU${TAG_MOGO_OBU}", "预警红边:预警方向->$targetClassification") return when (targetClassification) { MogoObuConstants.VEH_TARGET_POSITION.AHEAD_IN_LANE, MogoObuConstants.VEH_TARGET_POSITION.ONCOMING_IN_LANE -> WarningDirectionEnum.ALERT_WARNING_TOP //正前方 @@ -844,75 +839,68 @@ class MogoPrivateObuNewManager private constructor() { //这里需要根据真实数据确定 index 取值方式 val currentLight = lights[0] CallerLogger.d( - "$M_OBU${MogoObuConst.TAG_MOGO_OBU}", + "$M_OBU${TAG_MOGO_OBU}", "currentLight = $currentLight ---currentLight.phase = ${currentLight.phaseId} ---appId = $appId" ) - // 闯红灯预警 + // 闯红灯预警,绿波通行和闯红灯是互斥的 when (appId) { 0x0 -> {//不可用 V2I_RLVW_VIOLATION_TYPE_UNAVAILABLE 无效 } 0x1 -> {//闯红灯 V2I_RLVW_VIOLATION_TYPE_RUNNING_RED_LIGHT TODO 需要约束一个红灯周期只显示一次 - // CallerHmiManager.disableWarningV2X(appId.toString()) -// CallerLogger.d("$M_OBU${MogoObuConst.TAG_MOGO_OBU}","changeTrafficLightStatus 闯红灯 --------> ") - // ttsContent = EventTypeEnumNew.getWarningTts(appId.toString()) - // alertContent = EventTypeEnumNew.getWarningContent(appId.toString()) - // CallerHmiManager.warningV2X( - // appId.toString(), alertContent, ttsContent,// 只有第一次才tts,防止更新的时候不断的提醒 - // appId.toString(), null, true, 5000L, MsgBoxType.OBU - // ) +// CallerHmiManager.disableWarningV2X(0x2.toString()) +// CallerLogger.d("$M_OBU${TAG_MOGO_OBU}","changeTrafficLightStatus 闯红灯 --------> ") +// ttsContent = EventTypeEnumTrafficLight.getWarningTts(appId.toString()) +// alertContent = EventTypeEnumTrafficLight.getWarningContent(appId.toString()) +// CallerHmiManager.warningV2X( +// appId.toString(), alertContent, ttsContent,// 只有第一次才tts,防止更新的时候不断的提醒 +// appId.toString(), null, true, 5000L) } - 0x2 -> {//绿波通行引导 V2I_RLVW_VIOLATION_TYPE_NO_VIOLATION TODO 需要约束一个绿灯周期只显示一次 - ttsContent = EventTypeEnumNew.getWarningTts(appId.toString()) - alertContent = EventTypeEnumNew.getWarningContent(appId.toString()) - CallerMsgBoxManager.saveMsgBox( - MsgBoxBean( - MsgBoxType.OBU, - V2XMsg( - appId.toString(), - alertContent, - ttsContent - ) - ) - ) - CallerHmiManager.warningV2X( - appId.toString(), alertContent, ttsContent,// 只有第一次才tts,防止更新的时候不断的提醒 - appId.toString(), null, true, 3000L - ) - - // 拼接建议速度 - // CallerLogger.d( - // "$M_OBU${MogoObuConst.TAG_MOGO_OBU}", - // "绿波通行引导 --------> speed_min = ${currentLight.suggestMinSpeed} --speed_max = ${currentLight.suggestMaxSpeed}" - // ) - // val adviceSpeed = - // "${currentLight.suggestMinSpeed*3.6} - ${currentLight.suggestMaxSpeed*3.6}" - // val adviceSpeedTts = - // "${currentLight.suggestMinSpeed*3.6}到${currentLight.suggestMaxSpeed*3.6}" - // ttsContent = - // String.format( - // EventTypeEnumNew.getWarningTts(EventTypeEnumNew.TYPE_USECASE_ID_IVP_GREEN.poiType), - // adviceSpeedTts - // ) - // alertContent = - // String.format( - // EventTypeEnumNew.getWarningContent(EventTypeEnumNew.TYPE_USECASE_ID_IVP_GREEN.poiType), - // adviceSpeed - // ) - // val maxSpeed = currentLight.suggestMaxSpeed*3.6 - // if (maxSpeed > 0) { - // CallerHmiManager.warningV2X( - // EventTypeEnumNew.TYPE_USECASE_ID_IVP_GREEN.poiType, - // alertContent, - // ttsContent,// 只有第一次才tts,防止更新的时候不断的提醒 - // appId.toString(), - // null, - // true, - // 5000L, - // MsgBoxType.OBU - // ) - // } + 0x2 -> { //绿波通行引导 V2I_RLVW_VIOLATION_TYPE_NO_VIOLATION TODO 需要约束一个绿灯周期只显示一次 +// CallerHmiManager.disableWarningV2X(0x1.toString()) +// CallerLogger.d( +// "$M_OBU${TAG_MOGO_OBU}", +// "speed_min = ${currentLight.suggestMinSpeed} --speed_max = ${currentLight.suggestMaxSpeed}" +// ) +// val adviceSpeed = +// "${currentLight.suggestMinSpeed} - ${currentLight.suggestMaxSpeed}" +// val adviceSpeedTts = +// "${currentLight.suggestMinSpeed}到${currentLight.suggestMaxSpeed}" +// ttsContent = +// String.format( +// EventTypeEnumTrafficLight.getWarningTts(appId.toString()), +// adviceSpeedTts +// ) +// alertContent = +// String.format( +// EventTypeEnumTrafficLight.getWarningContent(appId.toString()), +// adviceSpeed +// ) +// +// val maxSpeed = currentLight.suggestMaxSpeed +// if (maxSpeed > 0) { +// CallerMsgBoxManager.saveMsgBox( +// MsgBoxBean( +// MsgBoxType.OBU, +// V2XMsg( +// EventTypeEnumNew.TYPE_USECASE_ID_IVP_GREEN.poiType, +// alertContent, +// ttsContent +// ) +// ) +// ) +// +// CallerHmiManager.warningV2X( +// EventTypeEnumNew.TYPE_USECASE_ID_IVP_GREEN.poiType, +// alertContent, +// ttsContent,// 只有第一次才tts,防止更新的时候不断的提醒 +// appId.toString(), +// null, +// true, +// 5000L +// ) +// } } } @@ -933,6 +921,7 @@ class MogoPrivateObuNewManager private constructor() { val red = currentLight.countDown.toInt() CallerHmiManager.changeCountdownRed(red) } + // 绿灯 4, 5, 6 -> { if (!isGreenLight) { @@ -943,52 +932,8 @@ class MogoPrivateObuNewManager private constructor() { CallerHmiManager.showWarningTrafficLight(3, 2) val green = currentLight.countDown.toInt() CallerHmiManager.changeCountdownGreen(green) - //防止数据出现问题的容错 - CallerHmiManager.changeCountdownRed(0) - CallerHmiManager.changeCountdownYellow(0) - // 拼接建议速度 - CallerLogger.d( - "$M_OBU${MogoObuConst.TAG_MOGO_OBU}", - "speed_min = ${currentLight.suggestMinSpeed} --speed_max = ${currentLight.suggestMaxSpeed}" - ) - val adviceSpeed = - "${currentLight.suggestMinSpeed} - ${currentLight.suggestMaxSpeed}" - val adviceSpeedTts = - "${currentLight.suggestMinSpeed}到${currentLight.suggestMaxSpeed}" - ttsContent = - String.format( - EventTypeEnumNew.getWarningTts(EventTypeEnumNew.TYPE_USECASE_ID_IVP_GREEN.poiType), - adviceSpeedTts - ) - alertContent = - String.format( - EventTypeEnumNew.getWarningContent(EventTypeEnumNew.TYPE_USECASE_ID_IVP_GREEN.poiType), - adviceSpeed - ) - - val maxSpeed = currentLight.suggestMaxSpeed - if (maxSpeed > 0) { - CallerMsgBoxManager.saveMsgBox( - MsgBoxBean( - MsgBoxType.OBU, - V2XMsg( - EventTypeEnumNew.TYPE_USECASE_ID_IVP_GREEN.poiType, - alertContent, - ttsContent - ) - ) - ) - CallerHmiManager.warningV2X( - EventTypeEnumNew.TYPE_USECASE_ID_IVP_GREEN.poiType, - alertContent, - ttsContent,// 只有第一次才tts,防止更新的时候不断的提醒 - appId.toString(), - null, - true, - 3000L - ) - } } + // 黄灯 7, 8 -> { CallerHmiManager.disableWarningV2X(appId.toString()) diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/EventTypeEnumTrafficLight.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/EventTypeEnumTrafficLight.kt new file mode 100644 index 0000000000..4b3af24b5d --- /dev/null +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/EventTypeEnumTrafficLight.kt @@ -0,0 +1,71 @@ +package com.mogo.eagle.core.data.enums + +import com.mogo.eagle.core.data.R + + +/** + * 交通信号灯 + */ +enum class EventTypeEnumTrafficLight( + val poiType: String, val poiTypeStr: String = "", + val poiTypeStrVr: String = "", + val poiTypeSrcVr: Int = R.drawable.v2x_icon_live_logo, + val content: String = "", val tts: String = "" +) { + + TYPE_USECASE_ID_IVP_RED( + 0x1.toString(), + "闯红灯预警", + poiTypeSrcVr = R.drawable.icon_warning_v2x_traffic_lights_red, + content = "路口红灯,禁止通行", + tts = "路口红灯,禁止通行" + ), + TYPE_USECASE_ID_IVP_GREEN( + 0x2.toString(), + "绿波通行", + poiTypeSrcVr = R.drawable.icon_warning_v2x_traffic_lights_green, + content = "建议车速 %s KM/H", + tts = "建议车速 %s KM/H" + ), + + TYPE_ERROR( + 0.toString(), + "未知/错误/异常", + poiTypeSrcVr = R.drawable.icon_warning_v2x_abnormal_vehicle, + content = "", + tts = "" + ); + + + companion object { + @JvmStatic + fun getWarningIcon(poiType: String?): Int { + return when (poiType) { + TYPE_USECASE_ID_IVP_RED.poiType -> TYPE_USECASE_ID_IVP_RED.poiTypeSrcVr + TYPE_USECASE_ID_IVP_GREEN.poiType -> TYPE_USECASE_ID_IVP_GREEN.poiTypeSrcVr + + else -> TYPE_ERROR.poiTypeSrcVr + } + } + + @JvmStatic + fun getWarningContent(poiType: String?): String { + return when (poiType) { + TYPE_USECASE_ID_IVP_RED.poiType -> TYPE_USECASE_ID_IVP_RED.content + TYPE_USECASE_ID_IVP_GREEN.poiType -> TYPE_USECASE_ID_IVP_GREEN.content + + else -> TYPE_ERROR.content + } + } + + @JvmStatic + fun getWarningTts(poiType: String?): String { + return when (poiType) { + TYPE_USECASE_ID_IVP_RED.poiType -> TYPE_USECASE_ID_IVP_RED.tts + TYPE_USECASE_ID_IVP_GREEN.poiType -> TYPE_USECASE_ID_IVP_GREEN.tts + else -> TYPE_ERROR.tts + } + } + } + +} \ No newline at end of file diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/EventTypeEnumWeaknessTraffic.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/EventTypeEnumWeaknessTraffic.kt index 177160dbb9..8ca4806dc1 100644 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/EventTypeEnumWeaknessTraffic.kt +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/EventTypeEnumWeaknessTraffic.kt @@ -20,10 +20,10 @@ enum class EventTypeEnumWeaknessTraffic( content = "注意机动车", tts = "注意机动车" ), - TYPE_USECASE_ID_VRUCW_NOT_MOTOR_VEHICLES( //TODO 图标需要换 + TYPE_USECASE_ID_VRUCW_NOT_MOTOR_VEHICLES( 2.toString(), "弱势交通参与者碰撞预警", - poiTypeSrcVr = R.drawable.icon_warning_v2x_motorcycle_collision, + poiTypeSrcVr = R.drawable.icon_warning_v2x_motobike, content = "注意非机动车", tts = "注意非机动车" ), diff --git a/core/mogo-core-res/src/main/function-hmi-res/drawable-xhdpi/icon_warning_v2x_motobike.png b/core/mogo-core-res/src/main/function-hmi-res/drawable-xhdpi/icon_warning_v2x_motobike.png new file mode 100644 index 0000000000000000000000000000000000000000..1ae7992c08dc741fc07bcf3f9114fb31f5ffbc51 GIT binary patch literal 18424 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 literal 0 HcmV?d00001 From 816f73b1956d894abbc1895a288db7db67931764 Mon Sep 17 00:00:00 2001 From: chenfufeng Date: Tue, 6 Dec 2022 11:54:06 +0800 Subject: [PATCH 2/7] =?UTF-8?q?[2.13.0][Fix]=E8=A7=A3=E5=86=B3=E7=88=B6Win?= =?UTF-8?q?dow=E7=9A=84Token=E6=97=A0=E6=95=88=E5=AF=BC=E8=87=B4=E7=9A=84?= =?UTF-8?q?=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 6 +++--- .../function/hmi/notification/WarningFloatWindowHelper.kt | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 6ee4ce5f6d..9ce3326429 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -288,9 +288,9 @@ dependencies { androidTestImplementation rootProject.ext.dependencies.localbroadcastmanager androidTestImplementation rootProject.ext.dependencies.mogo_v2x - if (isAndroidTestBuild()) { - implementation "com.mogo.thread.opt:lib:${THREAD_OPT_VERSION}" - } +// if (isAndroidTestBuild()) { +// implementation "com.mogo.thread.opt:lib:${THREAD_OPT_VERSION}" +// } } if (!isAndroidTestBuild()) { diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/notification/WarningFloatWindowHelper.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/notification/WarningFloatWindowHelper.kt index b099c4422b..3ef7faaee2 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/notification/WarningFloatWindowHelper.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/notification/WarningFloatWindowHelper.kt @@ -40,7 +40,7 @@ internal class WarningFloatWindowHelper( } fun createWindow(): Boolean { - return if (context is Activity) { + return if (context is Activity && !context.isFinishing && !context.isDestroyed) { initParams() addView() config.isShow = true From 53fae7f714b8a79b16baca8ab11bebb3658b2c11 Mon Sep 17 00:00:00 2001 From: wangmingjun Date: Tue, 6 Dec 2022 14:07:37 +0800 Subject: [PATCH 3/7] [2.13.0] taxi/bus onLocationChanged location null --- .../com/mogo/och/bus/passenger/model/BusPassengerModel.java | 1 + .../src/main/java/com/mogo/och/bus/model/BusOrderModel.java | 1 + .../java/com/mogo/och/sweeper/model/SweeperOrderModel.java | 1 + .../com/mogo/och/taxi/passenger/model/TaxiPassengerModel.java | 3 ++- .../src/main/java/com/mogo/och/taxi/model/TaxiModel.java | 3 ++- 5 files changed, 7 insertions(+), 2 deletions(-) diff --git a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/model/BusPassengerModel.java b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/model/BusPassengerModel.java index ae69e9f648..761673ec27 100644 --- a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/model/BusPassengerModel.java +++ b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/model/BusPassengerModel.java @@ -297,6 +297,7 @@ public class BusPassengerModel { private final IMoGoMapLocationListener mMapLocationListener = new IMoGoMapLocationListener() { @Override public void onLocationChanged(@Nullable MogoLocation location, int from, boolean isGps) { + if (null == location) return; mLocation = location; for (IBusPassengerControllerStatusCallback callback :mControllerStatusCallbackMap.values()){ callback.onCarLocationChanged(location); diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/model/BusOrderModel.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/model/BusOrderModel.java index 0b1eb2c647..e46780606e 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/model/BusOrderModel.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/model/BusOrderModel.java @@ -382,6 +382,7 @@ public class BusOrderModel { private final IMoGoMapLocationListener mMapLocationListener = new IMoGoMapLocationListener() { @Override public void onLocationChanged(@Nullable MogoLocation location, int from, boolean isGps) { + if (null == location) return; mLongitude = location.getLongitude(); mLatitude = location.getLatitude(); if (mControllerStatusCallback != null) { diff --git a/OCH/mogo-och-sweeper/src/main/java/com/mogo/och/sweeper/model/SweeperOrderModel.java b/OCH/mogo-och-sweeper/src/main/java/com/mogo/och/sweeper/model/SweeperOrderModel.java index f95034ce34..58d0d8f426 100644 --- a/OCH/mogo-och-sweeper/src/main/java/com/mogo/och/sweeper/model/SweeperOrderModel.java +++ b/OCH/mogo-och-sweeper/src/main/java/com/mogo/och/sweeper/model/SweeperOrderModel.java @@ -289,6 +289,7 @@ public class SweeperOrderModel { private final IMoGoMapLocationListener mMapLocationListener = new IMoGoMapLocationListener() { @Override public void onLocationChanged(@Nullable MogoLocation location, int from, boolean isGps) { + if (null == location) return; mLongitude = location.getLongitude(); mLatitude = location.getLatitude(); if (mControllerStatusCallback != null) { diff --git a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/model/TaxiPassengerModel.java b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/model/TaxiPassengerModel.java index 0fe9c85f35..3deddb2caf 100644 --- a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/model/TaxiPassengerModel.java +++ b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/model/TaxiPassengerModel.java @@ -452,7 +452,8 @@ public class TaxiPassengerModel implements IOCHTaxiPassengerNaviChangedCallback @Override public void onLocationChanged(@Nullable MogoLocation location, int from, boolean isGps) { //位置变化时,通过围栏判断是否到达x点 - if (location != null && checkCurrentOCHOrder()) { + if (null == location) return; + if (checkCurrentOCHOrder()) { if (getCurOrderStatus() == TaxiPassengerOrderStatusEnum.OnTheWayToEnd) { calculateTravelDistance(location); } diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/TaxiModel.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/TaxiModel.java index 6184a1c946..dffd5fd7bb 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/TaxiModel.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/TaxiModel.java @@ -1056,7 +1056,8 @@ public class TaxiModel { @Override public void onLocationChanged(@Nullable MogoLocation location, int from, boolean isGps) { //位置变化时,通过围栏判断是否到达x点 - if (location != null && checkCurrentOCHOrder()) { + if (null == location) return; + if (checkCurrentOCHOrder()) { if (getCurOrderStatus() == TaxiOrderStatusEnum.OnTheWayToStart) { judgeStartStation(location); } From 8c04e557b9d19ac68f6709759af8e1612f41c59c Mon Sep 17 00:00:00 2001 From: wangmingjun Date: Tue, 6 Dec 2022 14:25:51 +0800 Subject: [PATCH 4/7] =?UTF-8?q?[2.13.0]=20taxi/bus=20=E9=95=BF=E9=93=BE?= =?UTF-8?q?=E7=9B=91=E5=90=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../och/common/module/manager/AbnormalFactorsLoopManager.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/AbnormalFactorsLoopManager.kt b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/AbnormalFactorsLoopManager.kt index a3df02bf62..3a24d6ef8a 100644 --- a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/AbnormalFactorsLoopManager.kt +++ b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/manager/AbnormalFactorsLoopManager.kt @@ -86,7 +86,7 @@ object AbnormalFactorsLoopManager : IMogoStatusChangedListener { override fun onStatusChanged(descriptor: StatusDescriptor?, isTrue: Boolean) { //长链接监听、 - if (StatusDescriptor.CLOUD_SOCKET == descriptor && isTrue){ + if (StatusDescriptor.CLOUD_SOCKET == descriptor){ socketStatus = isTrue } } From f4dc1b8f7e5aa03e1bd42bef8738e8e1fce6a506 Mon Sep 17 00:00:00 2001 From: zhongchao Date: Tue, 6 Dec 2022 15:12:15 +0800 Subject: [PATCH 5/7] [2.13.0] fix bug of status manager which remove the sticky measure and change the vip notice --- .../core/function/v2x/vip/VipCarManager.kt | 29 ++++++++++++------- .../eagle/core/data/enums/EventTypeEnum.kt | 14 +++++---- .../IMogoStickyStatusChangedListener.java | 18 ------------ .../module/status/MogoStatusManager.java | 8 ++--- 4 files changed, 30 insertions(+), 39 deletions(-) delete mode 100644 foudations/mogo-commons/src/main/java/com/mogo/commons/module/status/IMogoStickyStatusChangedListener.java diff --git a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/vip/VipCarManager.kt b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/vip/VipCarManager.kt index 598a3b7ba9..f4659f54ab 100644 --- a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/vip/VipCarManager.kt +++ b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/vip/VipCarManager.kt @@ -13,10 +13,7 @@ import com.mogo.eagle.core.data.enums.EventTypeEnum import com.mogo.eagle.core.data.msgbox.MsgBoxBean import com.mogo.eagle.core.data.msgbox.MsgBoxType import com.mogo.eagle.core.data.msgbox.V2XMsg -import com.mogo.eagle.core.data.trafficlight.TrafficLightResult -import com.mogo.eagle.core.data.trafficlight.currentRoadTrafficLight -import com.mogo.eagle.core.data.trafficlight.isGreen -import com.mogo.eagle.core.data.trafficlight.isRed +import com.mogo.eagle.core.data.trafficlight.* import com.mogo.eagle.core.data.v2x.VipMessage import com.mogo.eagle.core.function.api.hmi.warning.IMoGoWarningStatusListener import com.mogo.eagle.core.function.api.trafficlight.IMoGoTrafficLightListener @@ -210,12 +207,22 @@ class VipCarManager : IMogoOnMessageListener, IMoGoTrafficLightListe // 请求变灯成功,直接提示 if (it.sn == MoGoAiCloudClientConfig.getInstance().sn && it.code == 0) { CallerLogger.d("$M_V2X$TAG", "变灯请求成功") - showWarning( - EventTypeEnum.TYPE_VIP_IDENTIFICATION.poiType, - EventTypeEnum.TYPE_VIP_IDENTIFICATION.content, - EventTypeEnum.TYPE_VIP_IDENTIFICATION.tts, - EventTypeEnum.TYPE_VIP_IDENTIFICATION.poiType - ) + val light = this.result?.currentRoadTrafficLight() + if (light != null && light.isGreen()) { + showWarning( + EventTypeEnum.TYPE_VIP_IDENTIFICATION_EXTEND.poiType, + EventTypeEnum.TYPE_VIP_IDENTIFICATION_EXTEND.content, + EventTypeEnum.TYPE_VIP_IDENTIFICATION_EXTEND.tts, + EventTypeEnum.TYPE_VIP_IDENTIFICATION_EXTEND.poiType + ) + } else { + showWarning( + EventTypeEnum.TYPE_VIP_IDENTIFICATION_PASS.poiType, + EventTypeEnum.TYPE_VIP_IDENTIFICATION_PASS.content, + EventTypeEnum.TYPE_VIP_IDENTIFICATION_PASS.tts, + EventTypeEnum.TYPE_VIP_IDENTIFICATION_PASS.poiType + ) + } return@turnLightToGreen } @@ -223,7 +230,7 @@ class VipCarManager : IMogoOnMessageListener, IMoGoTrafficLightListe if (this.result == null || this.result?.currentRoadTrafficLight() == null) { showWarning( EventTypeEnum.TYPE_VIP_ERROR_IDENTIFICATION.poiType, - EventTypeEnum.TYPE_VIP_ERROR_IDENTIFICATION.content + "稍后重试", + EventTypeEnum.TYPE_VIP_ERROR_IDENTIFICATION.content + ", 稍后重试", EventTypeEnum.TYPE_VIP_ERROR_IDENTIFICATION.tts, EventTypeEnum.TYPE_VIP_ERROR_IDENTIFICATION.poiType ) diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/EventTypeEnum.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/EventTypeEnum.kt index d089573c31..66da21999d 100644 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/EventTypeEnum.kt +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/EventTypeEnum.kt @@ -364,8 +364,9 @@ enum class EventTypeEnum( tts = "" ), - TYPE_VIP_IDENTIFICATION("10022", "", "", R.drawable.icon_warning_v2x_vip_turn_light, "VIP车辆优先通行", "已为您变灯,请优先通行"), - TYPE_VIP_ERROR_IDENTIFICATION("10023", "", "", R.drawable.icon_warning_v2x_vip_turn_light, "请求失败,", "请求失败,请稍后重试"), + TYPE_VIP_IDENTIFICATION_PASS("10022", "", "", R.drawable.icon_warning_v2x_vip_turn_light, "VIP车辆优先通行,已为您变为绿灯", "VIP车辆优先通行,已为您变为绿灯"), + TYPE_VIP_IDENTIFICATION_EXTEND("10023", "", "", R.drawable.icon_warning_v2x_vip_turn_light, "VIP车辆优先通行,已为您延长绿灯", "VIP车辆优先通行,已为您延长绿灯"), + TYPE_VIP_ERROR_IDENTIFICATION("10024", "", "", R.drawable.icon_warning_v2x_vip_turn_light, "请求失败,", "请求失败,稍后重试"), TYPE_OPTIMAL_ROUTE_RECOMMEND("2000", "", "", R.drawable.icon_warning_v2x_optimal_route, "为您推荐最优路线", "已为您选择最优路线"); @@ -748,7 +749,8 @@ enum class EventTypeEnum( TYPE_USECASE_ID_ROAD_HUMP_BRIDGE.poiType -> TYPE_USECASE_ID_ROAD_HUMP_BRIDGE.poiTypeSrcVr TYPE_USECASE_ID_ROAD_NO_PARKING.poiType -> TYPE_USECASE_ID_ROAD_NO_PARKING.poiTypeSrcVr TYPE_USECASE_ID_ROAD_GIVE_WAY.poiType -> TYPE_USECASE_ID_ROAD_GIVE_WAY.poiTypeSrcVr - TYPE_VIP_IDENTIFICATION.poiType -> TYPE_VIP_IDENTIFICATION.poiTypeSrcVr + TYPE_VIP_IDENTIFICATION_PASS.poiType -> TYPE_VIP_IDENTIFICATION_PASS.poiTypeSrcVr + TYPE_VIP_IDENTIFICATION_EXTEND.poiType -> TYPE_VIP_IDENTIFICATION_EXTEND.poiTypeSrcVr TYPE_ERROR.poiType -> TYPE_ERROR.poiTypeSrcVr TYPE_OPTIMAL_ROUTE_RECOMMEND.poiType -> TYPE_OPTIMAL_ROUTE_RECOMMEND.poiTypeSrcVr GHOST_PROBE.poiType -> GHOST_PROBE.poiTypeSrcVr @@ -790,7 +792,8 @@ enum class EventTypeEnum( TYPE_USECASE_ID_ROAD_HUMP_BRIDGE.poiType -> TYPE_USECASE_ID_ROAD_HUMP_BRIDGE.content TYPE_USECASE_ID_ROAD_NO_PARKING.poiType -> TYPE_USECASE_ID_ROAD_NO_PARKING.content TYPE_USECASE_ID_ROAD_GIVE_WAY.poiType -> TYPE_USECASE_ID_ROAD_GIVE_WAY.content - TYPE_VIP_IDENTIFICATION.poiType -> TYPE_VIP_IDENTIFICATION.content + TYPE_VIP_IDENTIFICATION_PASS.poiType -> TYPE_VIP_IDENTIFICATION_PASS.content + TYPE_VIP_IDENTIFICATION_EXTEND.poiType -> TYPE_VIP_IDENTIFICATION_EXTEND.content FOURS_ROAD_WORK.poiType -> FOURS_ROAD_WORK.content AI_ROAD_WORK.poiType -> AI_ROAD_WORK.content TYPE_ERROR.poiType -> TYPE_ERROR.content @@ -833,7 +836,8 @@ enum class EventTypeEnum( TYPE_USECASE_ID_ROAD_HUMP_BRIDGE.poiType -> TYPE_USECASE_ID_ROAD_HUMP_BRIDGE.tts TYPE_USECASE_ID_ROAD_NO_PARKING.poiType -> TYPE_USECASE_ID_ROAD_NO_PARKING.tts TYPE_USECASE_ID_ROAD_GIVE_WAY.poiType -> TYPE_USECASE_ID_ROAD_GIVE_WAY.tts - TYPE_VIP_IDENTIFICATION.poiType -> TYPE_VIP_IDENTIFICATION.tts + TYPE_VIP_IDENTIFICATION_PASS.poiType -> TYPE_VIP_IDENTIFICATION_PASS.tts + TYPE_VIP_IDENTIFICATION_EXTEND.poiType -> TYPE_VIP_IDENTIFICATION_EXTEND.tts FOURS_ROAD_WORK.poiType -> FOURS_ROAD_WORK.tts AI_ROAD_WORK.poiType -> AI_ROAD_WORK.tts TYPE_ERROR.poiType -> TYPE_ERROR.tts diff --git a/foudations/mogo-commons/src/main/java/com/mogo/commons/module/status/IMogoStickyStatusChangedListener.java b/foudations/mogo-commons/src/main/java/com/mogo/commons/module/status/IMogoStickyStatusChangedListener.java deleted file mode 100644 index 0a7c420a98..0000000000 --- a/foudations/mogo-commons/src/main/java/com/mogo/commons/module/status/IMogoStickyStatusChangedListener.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.mogo.commons.module.status; - -/** - * @author congtaowang - * @since 2020-01-04 - *

- * 状态控制器监听 - */ -public interface IMogoStickyStatusChangedListener extends IMogoStatusChangedListener { - - /** - * 是否需要黏性状态: 先改变状态,后注册监听 - * - * @param descriptor 状态 - * @return 默认不需要 - */ - boolean requestStickyStatus( StatusDescriptor descriptor ); -} diff --git a/foudations/mogo-commons/src/main/java/com/mogo/commons/module/status/MogoStatusManager.java b/foudations/mogo-commons/src/main/java/com/mogo/commons/module/status/MogoStatusManager.java index e94f92eec3..7eb24a5b1e 100644 --- a/foudations/mogo-commons/src/main/java/com/mogo/commons/module/status/MogoStatusManager.java +++ b/foudations/mogo-commons/src/main/java/com/mogo/commons/module/status/MogoStatusManager.java @@ -166,11 +166,9 @@ public class MogoStatusManager implements IMogoStatusManager { } mListeners.get(descriptor).add(listener); - if (listener instanceof IMogoStickyStatusChangedListener && ((IMogoStickyStatusChangedListener) listener).requestStickyStatus(descriptor)) { - Boolean val = mStatus.get(descriptor); - if (val != null) { - listener.onStatusChanged(descriptor, get_bool_val(descriptor)); - } + Boolean val = mStatus.get(descriptor); + if (val != null) { + listener.onStatusChanged(descriptor, get_bool_val(descriptor)); } } From b88c1dde0097331b5004aac1be2d6bc89c660522 Mon Sep 17 00:00:00 2001 From: wangmingjun Date: Tue, 6 Dec 2022 15:20:32 +0800 Subject: [PATCH 6/7] =?UTF-8?q?[2.13.0]=20taxi/bus=20=E8=BD=A8=E8=BF=B9?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../och/common/module/utils/CoordinateCalculateRouteUtil.java | 2 +- .../src/main/java/com/mogo/och/taxi/model/TaxiModel.java | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/CoordinateCalculateRouteUtil.java b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/CoordinateCalculateRouteUtil.java index 431c41b004..d13f1c932a 100644 --- a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/CoordinateCalculateRouteUtil.java +++ b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/CoordinateCalculateRouteUtil.java @@ -216,7 +216,7 @@ public class CoordinateCalculateRouteUtil { //转成MogoLatLng集合 List list = new ArrayList<>(); for (MogoLocation m : models) { - LatLng mogoLatLng = coordinateConverterWgsToGcj(mContext, m.getLongitude(),m.getLatitude()); + LatLng mogoLatLng = new LatLng(m.getLatitude(), m.getLongitude()); list.add(mogoLatLng); } return list; diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/TaxiModel.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/TaxiModel.java index dffd5fd7bb..c114157434 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/TaxiModel.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/TaxiModel.java @@ -1267,7 +1267,6 @@ public class TaxiModel { } if (null != routeList && routeList.getWayPointsList().size() > 0) { updateOrderRoute(routeList.getWayPointsList()); -// setRouteLineMarker(routeList.getWayPointsList()); updateOrderRouteInfo(routeList.getWayPointsList()); } } From 5335870b618d674ddcc800ee30d22698a6241dc1 Mon Sep 17 00:00:00 2001 From: wangmingjun Date: Tue, 6 Dec 2022 15:42:16 +0800 Subject: [PATCH 7/7] =?UTF-8?q?[2.13.0]=20taxi=E5=8F=B8=E6=9C=BA=E7=AB=AF?= =?UTF-8?q?=E9=80=81=E9=A9=BE=E5=AF=BC=E8=88=AA=E6=8C=89=E9=92=AE=E5=B0=BA?= =?UTF-8?q?=E5=AF=B8=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- OCH/mogo-och-taxi/src/main/res/layout/taxi_being_order.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/OCH/mogo-och-taxi/src/main/res/layout/taxi_being_order.xml b/OCH/mogo-och-taxi/src/main/res/layout/taxi_being_order.xml index 1335dc2a76..1eff5f1dc8 100644 --- a/OCH/mogo-och-taxi/src/main/res/layout/taxi_being_order.xml +++ b/OCH/mogo-och-taxi/src/main/res/layout/taxi_being_order.xml @@ -81,8 +81,8 @@