From 109a194701286edb834f33166c19644acc36f835 Mon Sep 17 00:00:00 2001 From: renwj Date: Thu, 4 Aug 2022 10:06:24 +0800 Subject: [PATCH 1/2] =?UTF-8?q?[V2X]=E4=BC=98=E5=8C=96V2X=E5=BC=B9?= =?UTF-8?q?=E7=AA=97=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/function/hmi/ui/MoGoHmiFragment.kt | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt index 8c0936b3aa..6922a189c9 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt @@ -74,7 +74,6 @@ import com.mogo.eagle.core.utilcode.kotlin.* import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.eagle.core.utilcode.mogo.logger.* import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_HMI -import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_V2X import com.mogo.eagle.core.utilcode.mogo.toast.TipToast import com.mogo.eagle.core.utilcode.reminder.* import com.mogo.eagle.core.utilcode.reminder.api.* @@ -144,9 +143,9 @@ import java.util.* private var adUpgradeDialog: AdUpgradeDialog?=null - private var speakJob: Job? = null + private var lastSpeakJob: Job? = null - private var showV2XJob: Job? = null + private var lastShowV2XJob: Job? = null private var showingV2XTip: IReminder? = null private var roadVideoDialog: RoadVideoDialog? = null @@ -633,8 +632,6 @@ import java.util.* } }) { override fun show() { - showV2XJob?.safeCancel() - speakJob?.safeCancel() val parent = it.window.decorView parent.doOnAttach { Log.d("$M_HMI$TAG", "--- show v2x dialog 2 ---: info -> v2x-type: $v2xType : expireTime: $expireTime") @@ -644,15 +641,21 @@ import java.util.* override fun isOverride(): Boolean { return true } + + override fun key(): String { + return v2xType + } }, object : IStateChangeListener { override fun onShow(reminder: IReminder) { listener?.onShow() + lastShowV2XJob?.safeCancel() + lastSpeakJob?.safeCancel() showingV2XTip = reminder lifecycleScope.launch { delay(expireTime) }.also { itx -> - showV2XJob = itx + lastShowV2XJob = itx }.invokeOnCompletion { _ -> reminder.hide() } @@ -660,7 +663,7 @@ import java.util.* lifecycleScope.launch { speak(it, ttsContent) }.also { itx -> - speakJob = itx + lastSpeakJob = itx } } } From d16fc6a98a03ceb6d3b320990771010909dadeb0 Mon Sep 17 00:00:00 2001 From: wangmingjun Date: Thu, 4 Aug 2022 10:20:12 +0800 Subject: [PATCH 2/2] =?UTF-8?q?[290=20bus/taxi]bus=E5=8F=B8=E6=9C=BA?= =?UTF-8?q?=E7=AB=AF=E4=BC=98=E5=8C=96=E8=BD=A8=E8=BF=B9=E8=AE=A1=E7=AE=97?= =?UTF-8?q?,=E5=8F=AA=E6=9C=89=E4=B8=A4=E4=B8=AA=E7=AB=99=E7=82=B9?= =?UTF-8?q?=E7=9A=84=E6=97=B6=E5=80=99=E4=BD=BF=E7=94=A8=E5=85=A8=E8=BD=A8?= =?UTF-8?q?=E8=BF=B9=EF=BC=8C=E6=9C=89=E5=A4=9A=E4=B8=AA=E7=AB=99=E7=82=B9?= =?UTF-8?q?=E7=9A=84=E6=97=B6=E5=80=99=E8=BF=9B=E8=A1=8C=E5=88=86=E6=AE=B5?= =?UTF-8?q?=E8=AE=A1=E7=AE=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../passenger/model/BusPassengerModel.java | 28 +++++++++++-------- 1 file changed, 17 insertions(+), 11 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 4cf55d2582..7ddfb2df9f 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 @@ -385,20 +385,26 @@ public class BusPassengerModel { //找出前往站对应的轨迹点,拿出两站点的集合 CallerLogger.INSTANCE.d(M_BUS_P + TAG, "mRoutePoints.size() = " + mRoutePoints.size()); if (mRoutePoints.size() > 0) { - if (mNextStationIndex <= mStations.size()-1 && mNextStationIndex - 1 >=0){ + if (mStations.size() > 2){ //两个站点以上要计算两个站点间的估计路线 + if (mNextStationIndex <= mStations.size()-1 && mNextStationIndex - 1 >=0){ + mTwoStationsRouts.clear(); + BusPassengerStation stationNext = mStations.get(mNextStationIndex); + BusPassengerStation stationCur = mStations.get(mNextStationIndex - 1); + //当前站在轨迹中对应的点 + int currentRouteIndex = CoordinateCalculateRouteUtil.getArrivedPointIndex(mRoutePoints + ,stationCur.getGcjLon(),stationCur.getGcjLat()); + //要前往的站在轨迹中对应的点 + int nextRouteIndex = CoordinateCalculateRouteUtil.getArrivedPointIndex(mRoutePoints + ,stationNext.getGcjLon(),stationNext.getGcjLat()); + mTwoStationsRouts.addAll(mRoutePoints.subList(currentRouteIndex,nextRouteIndex)); + } + }else { //只有两个站点的时候整个路线就是两个站点之间的轨迹 mTwoStationsRouts.clear(); - BusPassengerStation stationNext = mStations.get(mNextStationIndex); - BusPassengerStation stationCur = mStations.get(mNextStationIndex - 1); - //当前站在轨迹中对应的点 - int currentRouteIndex = CoordinateCalculateRouteUtil.getArrivedPointIndex(mRoutePoints - ,stationCur.getGcjLon(),stationCur.getGcjLat()); - //要前往的站在轨迹中对应的点 - int nextRouteIndex = CoordinateCalculateRouteUtil.getArrivedPointIndex(mRoutePoints - ,stationNext.getGcjLon(),stationNext.getGcjLat()); - mTwoStationsRouts.addAll(mRoutePoints.subList(currentRouteIndex,nextRouteIndex)); + mTwoStationsRouts.addAll(mRoutePoints); + } + if (mTwoStationsRouts.size() > 0){ float sumLength = CoordinateCalculateRouteUtil.calculateRouteSumLength(mTwoStationsRouts); SharedPrefsMgr.getInstance(mContext).putInt(BusPassengerConst.BUS_SP_KEY_ORDER_SUM_DIS,(int) sumLength); - if (mAutopilotPlanningCallback != null){ mAutopilotPlanningCallback.updateTotalDistance(); }