diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/report/IPCReportManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/report/IPCReportManager.kt index 787daf3446..f0b854936b 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/report/IPCReportManager.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/report/IPCReportManager.kt @@ -7,6 +7,7 @@ import com.mogo.eagle.core.data.msgbox.MsgBoxType import com.mogo.eagle.core.data.deva.report.ReportEntity import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager +import com.mogo.eagle.core.function.call.devatools.CallerCollisionRiskManager import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxManager import com.mogo.eagle.core.utilcode.util.TimeUtils import com.mogo.eagle.core.utilcode.util.UiThreadHandler @@ -84,6 +85,11 @@ class IPCReportManager : IMoGoAutopilotStatusListener { */ override fun onAutopilotGuardian(guardianInfo: MogoReportMsg.MogoReportMessage?) { guardianInfo?.let{ + //8.1.4版本异常声光电提醒 + if(it.code == "ECTRL_COLLISION_RISK"){ + CallerCollisionRiskManager.invokeCollisionRisk() + } + if(it.resultList.contains(RESULT_AUTOPILOT_DISABLE) || it.resultList.contains(RESULT_AUTOPILOT_SYSTEM_UNSTARTED) || it.resultList.contains(RESULT_REMOTEPILOT_DISABLE) diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/devatools/ICollisionRiskListener.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/devatools/ICollisionRiskListener.kt new file mode 100644 index 0000000000..b2f2d90978 --- /dev/null +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/devatools/ICollisionRiskListener.kt @@ -0,0 +1,13 @@ +package com.mogo.eagle.core.function.api.devatools + +/** + * 814异常声光电上报提醒 + */ +interface ICollisionRiskListener { + + /** + * 声光电异常提醒 + */ + fun onCollisionRisk(){} + +} \ No newline at end of file diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/devatools/CallerCollisionRiskManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/devatools/CallerCollisionRiskManager.kt new file mode 100644 index 0000000000..db244a3068 --- /dev/null +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/devatools/CallerCollisionRiskManager.kt @@ -0,0 +1,21 @@ +package com.mogo.eagle.core.function.call.devatools + +import com.mogo.eagle.core.function.api.devatools.ICollisionRiskListener +import com.mogo.eagle.core.function.call.base.CallerBase + +/** + * 814异常声光电上报提醒 + */ +object CallerCollisionRiskManager: CallerBase() { + + /** + * 声光电异常提醒 + */ + fun invokeCollisionRisk(){ + M_LISTENERS.forEach{ + val listener = it.value + listener.onCollisionRisk() + } + } + +} \ No newline at end of file