Merge remote-tracking branch 'origin/dev_MogoAP_eagle-1030_211020_8.0.14' into dev_MogoAP_eagle-1030_211020_8.0.14

This commit is contained in:
donghongyu
2021-11-16 16:26:13 +08:00

View File

@@ -6,6 +6,7 @@ import com.mogo.cloud.commons.utils.CoordinateUtils
import com.mogo.eagle.core.data.map.MogoLatLng
import com.mogo.eagle.core.data.trafficlight.TrafficLightResult
import com.mogo.eagle.core.data.trafficlight.currentRoadTrafficLight
import com.mogo.eagle.core.data.trafficlight.isRed
import com.mogo.eagle.core.data.trafficlight.turnRedAtOnce
import com.mogo.eagle.core.data.v2x.VipMessage
import com.mogo.eagle.core.function.api.hmi.warning.IMoGoWarningStatusListener
@@ -19,6 +20,7 @@ import com.mogo.module.common.MogoApisHandler
import com.mogo.module.common.enums.EventTypeEnum
import com.mogo.service.cloud.socket.IMogoOnMessageListener
import com.mogo.utils.logger.Logger
import kotlin.math.abs
class VipCarManager : IMogoOnMessageListener<VipMessage>, IMoGoTrafficLightListener,
IMogoCarLocationChangedListener2 {
@@ -33,7 +35,7 @@ class VipCarManager : IMogoOnMessageListener<VipMessage>, IMoGoTrafficLightListe
}
private var mContext: Context? = null
private var mLocation:Location? = null
private var mLocation: Location? = null
private var turnLightFirst = false
private var turnLightEnd = true
private var result: TrafficLightResult? = null
@@ -82,7 +84,11 @@ class VipCarManager : IMogoOnMessageListener<VipMessage>, IMoGoTrafficLightListe
}
override fun onTrafficLightStatus(trafficLightResult: TrafficLightResult) {
if (!turnLightFirst) {
if (trafficLightResult.currentRoadTrafficLight() == null) {
return
}
if (!turnLightFirst && trafficLightResult.currentRoadTrafficLight()!!.isRed()) {
// 首次判断,变灯
turnLightFirst = true
turnLight()
@@ -92,7 +98,7 @@ class VipCarManager : IMogoOnMessageListener<VipMessage>, IMoGoTrafficLightListe
this.result = trafficLightResult
//如果上次结果和本次灯态结果变化比较大则已变灯控制HMI展示弹窗
if (lastResult!!.remain - currentResult!!.remain > 3) {
if (abs(lastResult!!.remain - currentResult!!.remain) > 3) {
CallerHmiManager.showWarningV2X(EventTypeEnum.TYPE_VIP_IDENTIFICATION.poiType.toInt(),
EventTypeEnum.TYPE_VIP_IDENTIFICATION.content,
EventTypeEnum.TYPE_VIP_IDENTIFICATION.tts,
@@ -100,6 +106,8 @@ class VipCarManager : IMogoOnMessageListener<VipMessage>, IMoGoTrafficLightListe
object : IMoGoWarningStatusListener {
override fun onShow() {}
override fun onDismiss() {
turnLightFirst = false
turnLightEnd = true
}
})
}