[8.2.0][opt]B2只展示高精和mogomind

This commit is contained in:
chenfufeng
2025-08-26 11:40:00 +08:00
parent b4cd82b272
commit 0aa08da473

View File

@@ -27,29 +27,29 @@ import kotlin.properties.Delegates
class PM2ADASPresenter(view: PM2HPMapFragment?) :
Presenter<PM2HPMapFragment?>(view), ADASCallback, ICommonCallback, BridgeListener,
AIMessageManager.AIMessageListener, IMoGoChassisLocationGCJ02Listener {
AIMessageManager.AIMessageListener {
private val TAG = "PM2ADASPresenter"
private var haveTrajectoryInfos:Boolean by Delegates.observable(false) { _, oldValue, newValue ->
if (oldValue != newValue) {
checkScreenChange()
// checkScreenChange()
}
}
private var havePredictionInfos:Boolean by Delegates.observable(false) { _, oldValue, newValue ->
if (oldValue != newValue) {
checkScreenChange()
// checkScreenChange()
}
}
// 是否有订单
private var haveLine:Boolean by Delegates.observable(false) { _, oldValue, newValue ->
if (oldValue != newValue) {
checkScreenChange()
// checkScreenChange()
}
}
private var arrived:Boolean by Delegates.observable(false) { _, oldValue, newValue ->
if (oldValue != newValue) {
checkScreenChange()
// checkScreenChange()
}
}
@@ -69,12 +69,8 @@ class PM2ADASPresenter(view: PM2HPMapFragment?) :
}
}
private var lastAIMessageCountDown: Disposable? = null
@Volatile
private var isSpeedGreaterThan5 = false
override fun onCreate(owner: LifecycleOwner) {
super.onCreate(owner)
PM2ADASModel.INSTANCE.init(context)
@@ -86,7 +82,6 @@ class PM2ADASPresenter(view: PM2HPMapFragment?) :
CommonModel.setRouteLineInfoCallback(TAG, this)
BridgeManager.addBridgeListener(TAG,this)
AIMessageManager.registerListener(this)
OchLocationManager.addGCJ02Listener(TAG, 3, this)
}
private fun removeListener() {
@@ -95,7 +90,6 @@ class PM2ADASPresenter(view: PM2HPMapFragment?) :
CommonModel.releaseListeners()
BridgeManager.removeBridgeListener(TAG)
AIMessageManager.unregisterListener(this)
OchLocationManager.removeGCJ02Listener(TAG)
}
override fun onDestroy(owner: LifecycleOwner) {
@@ -185,55 +179,17 @@ class PM2ADASPresenter(view: PM2HPMapFragment?) :
override fun clear() {
}
fun checkScreenChange(){
CallerLogger.d(TAG,"haveLine:$haveLine arrived:$arrived havePredictionInfos:$havePredictionInfos haveTrajectoryInfos:$haveTrajectoryInfos aiMessageShowmagic:$aiMessageShowmagic")
BizLoopManager.runInMainThread{
// 是否有订单
if(haveLine){// 有订单
if(!isSpeedGreaterThan5){//展示高地图
if(aiMessageShowmagic){
updateMapFlag(false)
// 展示高德地图+展示mogomind
mView?.showAmap_mind()
return@runInMainThread
}else{
updateMapFlag(false)
// 展示高德地图
mView?.showAmap()
return@runInMainThread
}
}else{// 展示高精地图
if(aiMessageShowmagic){
updateMapFlag(false)
// 展示高精地图
mView?.showHDMap_mind()
return@runInMainThread
}else{
// if(havePredictionInfos&&haveTrajectoryInfos){
// updateMapFlag(true)
// // 展示高精地图+展示预测和决策
// mView?.showHDMap_aip_prediction()
// return@runInMainThread
// }else{
updateMapFlag(false)
// 展示高精地图
mView?.showHDMap()
return@runInMainThread
// }
}
}
}else{// 没有订单
if(aiMessageShowmagic){// 有mogomind 消息
updateMapFlag(false)
// 展示高精地图+mogoMind
mView?.showHDMap_mind()
}else{
updateMapFlag(false)
// 展示高精地图
mView?.showHDMap()
}
if(aiMessageShowmagic){// 有mogomind 消息
updateMapFlag(false)
// 展示高地图+mogoMind
mView?.showHDMap_mind()
}else{
updateMapFlag(false)
// 展示高精地图
mView?.showHDMap()
}
}
}
@@ -247,13 +203,4 @@ class PM2ADASPresenter(view: PM2HPMapFragment?) :
// FunctionBuildConfig.isDrawPreIdentifyData = false
// }
}
override fun onChassisLocationGCJ02(mogoLocation: MogoLocation?) {
if (mogoLocation != null) {
val speedKM = (abs(mogoLocation.gnssSpeed) * 3.6f).toInt()
isSpeedGreaterThan5 = speedKM > 5
} else {
isSpeedGreaterThan5 = false
}
}
}