From edba433af8b3e3b7d55d9b8c5cd2560720dcf95a Mon Sep 17 00:00:00 2001 From: wangmingjun Date: Fri, 15 Sep 2023 16:53:52 +0800 Subject: [PATCH] =?UTF-8?q?[6.1.0]=20B1=E4=B9=98=E5=AE=A2=E5=B1=8F?= =?UTF-8?q?=E8=87=AA=E5=8A=A8=E9=A9=BE=E9=A9=B6=E6=8C=89=E9=92=AE=E7=BE=8E?= =?UTF-8?q?=E5=8C=96=E6=A8=A1=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bus/passenger/model/BusPassengerModel.kt | 34 ++++++++++++----- .../ui/BusPassengerRouteFragment.java | 2 - .../passenger/model/BusPassengerModel.java | 38 +++++++++++-------- .../ui/BusPassengerRouteFragment.java | 2 - 4 files changed, 48 insertions(+), 28 deletions(-) diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/model/BusPassengerModel.kt b/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/model/BusPassengerModel.kt index 52325b172e..c3b23bc1ff 100644 --- a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/model/BusPassengerModel.kt +++ b/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/model/BusPassengerModel.kt @@ -113,6 +113,9 @@ object BusPassengerModel{ false }) + @Volatile + private var isGoingToNextStation = false + fun init(context: Context) { mContext = context.applicationContext initListeners() @@ -227,6 +230,7 @@ object BusPassengerModel{ val station = stations[i] if (station.drivingStatus == BusPassengerConst.STATION_STATUS_STOPPED && station.isLeaving && i + 1 < stations.size) { //离站 Logger.d(M_BUS_P + TAG, "order = station= leave") + isGoingToNextStation = true mRouteLineInfoCallback!!.updateStationsInfo(stations, i + 1, false) if (mNextStationIndex != i + 1) { mTwoStationsRouts.clear() @@ -241,6 +245,9 @@ object BusPassengerModel{ if (i == stations.size - 1) { cleanStation("updatePassengerRouteInfo最后一个站点") } + + isGoingToNextStation = false + suspendCalculate() Logger.d(M_BUS_P + TAG, "order = station= arrive") @@ -487,15 +494,24 @@ object BusPassengerModel{ override fun onAutopilotStatusResponse(state: Int) { if (state == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING) { if (mADASStatusCallback != null) mADASStatusCallback!!.onAutopilotRunning() - } else if (state == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE) { - mTwoStationsRouts.clear() - if (mADASStatusCallback != null) mADASStatusCallback!!.onAutopilotEnable() - } else if (state == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE) { - mTwoStationsRouts.clear() - if (mADASStatusCallback != null) mADASStatusCallback!!.onAutopilotDisable() - } else if (state == IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING) { - mTwoStationsRouts.clear() - if (mADASStatusCallback != null) mADASStatusCallback!!.onAutopilotRunning() + } else { + if (FunctionBuildConfig.isDemoMode && + mNextStationIndex>= 0 && mNextStationIndex <= mStations.size - 1 + && isGoingToNextStation){ + d(M_BUS_P + TAG, "FunctionBuildConfig.isDemoMode is true") + return + } + + if (state == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE) { + mTwoStationsRouts.clear() + if (mADASStatusCallback != null) mADASStatusCallback!!.onAutopilotEnable() + } else if (state == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE) { + mTwoStationsRouts.clear() + if (mADASStatusCallback != null) mADASStatusCallback!!.onAutopilotDisable() + } else if (state == IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING) { + mTwoStationsRouts.clear() + if (mADASStatusCallback != null) mADASStatusCallback!!.onAutopilotRunning() + } } } override fun onAutopilotArriveAtStation(arrivalNotification: ArrivalNotification?) { diff --git a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPassengerRouteFragment.java b/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPassengerRouteFragment.java index 33d497dbf3..e7a7847393 100644 --- a/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPassengerRouteFragment.java +++ b/OCH/bus/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPassengerRouteFragment.java @@ -453,8 +453,6 @@ public class BusPassengerRouteFragment extends public void AutopilotStatusChanged(int status) { if (IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING == status) { mAutopilotIv.setImageResource(R.drawable.auto_open); - } else if (IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE == status){ - mAutopilotIv.setImageResource(R.drawable.auto_close); } else { mAutopilotIv.setImageResource(R.drawable.auto_close); } diff --git a/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/model/BusPassengerModel.java b/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/model/BusPassengerModel.java index 518254c5a6..5a5d6fdfcb 100644 --- a/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/model/BusPassengerModel.java +++ b/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/model/BusPassengerModel.java @@ -119,6 +119,9 @@ public class BusPassengerModel { private int mPreRouteIndex = 0; private int mWipePreIndex = 0; + @Volatile + private var isGoingToNextStation = false + private static final int MSG_QUERY_BUS_P_STATION = 1001; private final Handler handler = new Handler(new Handler.Callback() { @Override @@ -291,6 +294,8 @@ public class BusPassengerModel { for (int i = 0; i< stations.size(); i++){ BusStationBean station = stations.get(i); if (station.getDrivingStatus() == STATION_STATUS_STOPPED && station.isLeaving() && i+1 < stations.size()){ + Logger.d(M_BUS_P + TAG, "order = station= leave") + isGoingToNextStation = true mRouteLineInfoCallback.updateStationsInfo(stations,i+1,false); if(mNextStationIndex != i+1){ mTwoStationsRouts.clear(); @@ -302,6 +307,9 @@ public class BusPassengerModel { if (i == 0){ startOrStopRouteAndWipe(false); } + + isGoingToNextStation = false + Logger.d(M_BUS_P + TAG, "order = station= arrive") mPreRouteIndex = 0; startOrStopCalculateRouteInfo(false); mRouteLineInfoCallback.updateStationsInfo(stations,i,true); @@ -452,8 +460,6 @@ public class BusPassengerModel { } }; - private volatile int mPreAutoStatus = -1; - private final IMoGoAutopilotStatusListener mGoAutopilotStatusListener = new IMoGoAutopilotStatusListener(){ @Override public void onSystemStatus(@NonNull SsmInfo.SsmStatusInf statusInf) { @@ -492,27 +498,29 @@ public class BusPassengerModel { int state = autopilotStatusInfo.getState(); if (state == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING) { //2022.7.20 自动驾驶更换成带档位的 - if(state != mPreAutoStatus && null != routesResult){ + if(null != routesResult){ CallerAutoPilotControlManager.INSTANCE.getGlobalPath(); } if (mADASStatusCallback != null) mADASStatusCallback.onAutopilotRunning(); - } else if (state == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE) { - if(state != mPreAutoStatus){ - mTwoStationsRouts.clear(); + } else{ + if (FunctionBuildConfig.isDemoMode && + mNextStationIndex>= 0 && mNextStationIndex <= mStations.size - 1 + && isGoingToNextStation){ + d(M_BUS_P + TAG, "FunctionBuildConfig.isDemoMode is true") + return } - if (mADASStatusCallback != null) mADASStatusCallback.onAutopilotEnable(); - } else if (state == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE) { - if(state != mPreAutoStatus){ + + if (state == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE) { mTwoStationsRouts.clear(); - } - if (mADASStatusCallback != null) mADASStatusCallback.onAutopilotDisable(); - }else if (state == IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING){ - if(state != mPreAutoStatus){ + if (mADASStatusCallback != null) mADASStatusCallback.onAutopilotEnable(); + } else if (state == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE) { mTwoStationsRouts.clear(); + if (mADASStatusCallback != null) mADASStatusCallback.onAutopilotDisable(); + }else if (state == IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING){ + mTwoStationsRouts.clear(); + if (mADASStatusCallback != null) mADASStatusCallback.onAutopilotRunning(); } - if (mADASStatusCallback != null) mADASStatusCallback.onAutopilotRunning(); } - mPreAutoStatus = state; } @Override diff --git a/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPassengerRouteFragment.java b/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPassengerRouteFragment.java index 91e2192546..e9ec5996d3 100644 --- a/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPassengerRouteFragment.java +++ b/OCH/shuttle/passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/ui/BusPassengerRouteFragment.java @@ -389,8 +389,6 @@ public class BusPassengerRouteFragment extends public void AutopilotStatusChanged(int status) { if (IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING == status) { mAutopilotIv.setImageResource(R.drawable.auto_open); - } else if (IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE == status){ - mAutopilotIv.setImageResource(R.drawable.auto_close); } else { mAutopilotIv.setImageResource(R.drawable.auto_close); }