diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BaseBusTabFragment.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BaseBusTabFragment.java index 78adde0984..4d02c0d64d 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BaseBusTabFragment.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BaseBusTabFragment.java @@ -140,7 +140,6 @@ public abstract class BaseBusTabFragment if (MogoMapUIController.getInstance().getCurrentMapVisualAngle().isLongSight()) { // 2.11.0去掉 // MogoMarkerManager.getInstance(AbsMogoApplication.getApp()).visibleAllMarkers(); - AiRoadMarker.INSTANCE.restore(); MogoMapUIController.getInstance().changeMapVisualAngle(VisualAngleMode.MODE_MEDIUM_SIGHT, null); mSwitchMapModeImage.setImageResource(R.drawable.bus_switch_map_medium); } else if (MogoMapUIController.getInstance().getCurrentMapVisualAngle().isMediumSight()) { @@ -149,13 +148,11 @@ public abstract class BaseBusTabFragment // .inVisibleWithoutMarkers(DataTypes.TYPE_MARKER_ADAS, BusConst.TYPE_MARKER_BUS_ORDER); MogoMapUIController.getInstance().changeMapVisualAngle(VisualAngleMode.MODE_LONG_SIGHT, null); mSwitchMapModeImage.setImageResource(R.drawable.bus_switch_map_long); - AiRoadMarker.INSTANCE.clear(); } else { // 2.11.0去掉 // MogoMarkerManager.getInstance(AbsMogoApplication.getApp()).visibleAllMarkers(); MogoMapUIController.getInstance().changeMapVisualAngle(VisualAngleMode.MODE_MEDIUM_SIGHT, null); mSwitchMapModeImage.setImageResource(R.drawable.bus_switch_map_medium); - AiRoadMarker.INSTANCE.restore(); } } }); diff --git a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerBaseFragment.java b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerBaseFragment.java index d8a1c5c4bc..4af679e575 100644 --- a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerBaseFragment.java +++ b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerBaseFragment.java @@ -137,19 +137,16 @@ public class TaxiPassengerBaseFragment extends MvpFragmentPresenter:接单状态、登录状态和司机今日接单状态 private ITaxiControllerStatusCallback mControllerStatusCallback; //Model->Presenter:VR mode等 private ITaxiOrderStatusCallback mOrderStatusCallback; //Model->Presenter:订单变更 - private ITaxiNaviChangedCallback mNaviChangedCallback;//导航相关回调 private volatile boolean isRestartAutopilot = false; @@ -147,10 +146,6 @@ public class TaxiModel { this.mOrderStatusCallback = callback; } - public void setOCHTaciNaviChangedCallback(ITaxiNaviChangedCallback callback){ - this.mNaviChangedCallback = callback; - } - public void init(Context context) { mContext = context.getApplicationContext(); initListeners(); @@ -1555,8 +1550,8 @@ public class TaxiModel { if (mRoutePoints.size() > 0 ){ //使用自驾轨迹 }else {//使用高的导航 - if (mNaviChangedCallback != null){ - mNaviChangedCallback.onNaviToEndAmap(); + if (mOrderStatusCallback != null){ + mOrderStatusCallback.onNaviToEndAmap(); } } } diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/presenter/TaxiPresenter.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/presenter/TaxiPresenter.java index dfce847d95..4e036533c9 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/presenter/TaxiPresenter.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/presenter/TaxiPresenter.java @@ -19,7 +19,6 @@ import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean; import com.mogo.och.common.module.biz.callback.ILoginCallback; import com.mogo.och.common.module.biz.constant.LoginStatusManager; import com.mogo.och.common.module.manager.OCHAdasAbilityManager; -import com.mogo.och.taxi.callback.ITaxiNaviChangedCallback; import com.mogo.och.taxi.constant.TaxiConst; import com.mogo.och.taxi.constant.TaxiDriverRoleEnum; import com.mogo.och.taxi.constant.TaxiOrderStatusEnum; @@ -44,7 +43,7 @@ import java.util.List; * 描述 */ public class TaxiPresenter extends Presenter implements ITaxiADASStatusCallback, - ITaxiCarStatusCallback, ITaxiOrderStatusCallback, ITaxiControllerStatusCallback, ILoginCallback, ITaxiNaviChangedCallback { + ITaxiCarStatusCallback, ITaxiOrderStatusCallback, ITaxiControllerStatusCallback, ILoginCallback { private static final String TAG = TaxiPresenter.class.getSimpleName(); @@ -76,8 +75,6 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS TaxiModel.getInstance().setCarStatusCallback(this); TaxiModel.getInstance().setControllerStatusCallback(this); TaxiModel.getInstance().setOrderStatusCallback(this); - TaxiModel.getInstance().setOCHTaciNaviChangedCallback(this); - OCHAdasAbilityManager.getInstance().release(); } private void releaseListeners() { @@ -85,7 +82,7 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS TaxiModel.getInstance().setCarStatusCallback(null); TaxiModel.getInstance().setControllerStatusCallback(null); TaxiModel.getInstance().setOrderStatusCallback(null); - TaxiModel.getInstance().setOCHTaciNaviChangedCallback(null); + OCHAdasAbilityManager.getInstance().release(); } private void runOnUIThread( Runnable executor ) { @@ -185,7 +182,7 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS //导航去订单目的地 public void startNaviToEndStation(){ - TaxiModel.getInstance().startNaviToEndStation(); + TaxiModel.getInstance().startNaviToEndStation(); } @Override @@ -313,6 +310,11 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS runOnUIThread(() -> mView.onCheckPilotConditionSafe(isSafe)); } + @Override + public void onNaviToEndAmap() { + runOnUIThread( () -> mView.onNaviToEndAmap()); + } + @Override public void onVRModeChanged(boolean isVRMode) { runOnUIThread(() -> mView.switchVRFlatMode(isVRMode)); @@ -359,19 +361,4 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS public void loginFail(boolean isLogin) { } - - @Override - public void onCurrentNaviDistAndTimeChanged(int meters, long timeInSecond) { - - } - - @Override - public void reInitNaviAmap(boolean isPlay, boolean isRestart) { - - } - - @Override - public void onNaviToEndAmap() { - mView.onNaviToEndAmap(); - } } diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/BaseTaxiTabFragment.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/BaseTaxiTabFragment.java index f4396901be..2e0134b753 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/BaseTaxiTabFragment.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/BaseTaxiTabFragment.java @@ -199,21 +199,17 @@ public abstract class BaseTaxiTabFragment 用车"; } mOrderOtherContent3.setText(Html.fromHtml(strHtml1)); - mOrderStartStationLat = order.startSiteGcjPoint.get(1); - mOrderStartStationLng = order.startSiteGcjPoint.get(0); } }catch (NullPointerException e){ //可能会出现订单信息已经轮询回来,但进行中页面控件还未初始化完成的情况 TaxiModel.getInstance().clearCurrentOCHOrder(); @@ -344,7 +340,7 @@ public class TaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implement } } - private void startNaviToStartStation(boolean isShow, double orderStartStationLat, double orderStartStationLng) { + private void startNaviToStation(boolean isShow, double orderStartStationLat, double orderStartStationLng) { NaviToDestinationModel.getInstance(getContext()).destroyAmaNavi(); CallerLogger.INSTANCE.d(M_TAXI + TAG, "currentLatLng=" + mTaxiFragment.mCurLatitude + " " + mTaxiFragment.mCurLongitude); NaviLatLng startNaviLatLng = new NaviLatLng(mTaxiFragment.mCurLatitude, mTaxiFragment.mCurLongitude); @@ -354,19 +350,9 @@ public class TaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implement NaviToDestinationModel.getInstance(getContext()).setOCHTaciNaviChangedCallback(this); } - private void startNaviToEndStation(boolean isShow, double orderEndStationLat, double orderEndStationLng) { - NaviToDestinationModel.getInstance(getContext()).destroyAmaNavi(); - CallerLogger.INSTANCE.d(M_TAXI + TAG, "currentLatLng=" + mTaxiFragment.mCurLatitude + " " + mTaxiFragment.mCurLongitude); - NaviLatLng startNaviLatLng = new NaviLatLng(mTaxiFragment.mCurLatitude, mTaxiFragment.mCurLongitude); - NaviLatLng endNaviLatLng = new NaviLatLng(orderEndStationLat, orderEndStationLng); - NaviToDestinationModel.getInstance(getContext()).initAMapNavi(startNaviLatLng, endNaviLatLng); - NaviToDestinationModel.getInstance(getContext()).setVoiceIsMute(isShow); - NaviToDestinationModel.getInstance(getContext()).setOCHTaciNaviChangedCallback(this); - } - private void showOrHideNavi(boolean isShow) { if (!isShow) { - mNaviIcon.setVisibility(View.GONE); + mNaviStartIcon.setVisibility(View.GONE); NaviToDestinationModel.getInstance(getContext()).destroyAmaNavi(); mTaxiFragment.showNaviToStationFragment(false); } @@ -397,9 +383,9 @@ public class TaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implement if (mContentModule3 != null && mContentModule3.getVisibility() == View.VISIBLE) { //前往上车点 mDistanceAndTime3.setText(Html.fromHtml(strHtml2)); - mNaviIcon.setVisibility(View.VISIBLE); + mNaviStartIcon.setVisibility(View.VISIBLE); } else if (mContentModule2 != null && mContentModule2.getVisibility() == View.VISIBLE) { //前往终点 时间单位是分钟 - mNaviIcon.setVisibility(View.VISIBLE); + mNaviStartIcon.setVisibility(View.VISIBLE); if (mTtsLessThan200Tip < 1 && meters <= 250 && meters > 150){ speekVoice200mTipsOnce(); } @@ -479,7 +465,9 @@ public class TaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implement showNotice(mActivity.getString(R.string.module_och_taxi_new_order)); mTtsLessThan200Tip = 0; isFirstStartAutopilotDone = true; - startNaviToStartStation(false, mOrderStartStationLat, mOrderStartStationLng); + double orderStartStationLat = order.startSiteGcjPoint.get(1); + double orderStartStationLng = order.startSiteGcjPoint.get(0); + startNaviToStation(false, orderStartStationLat, orderStartStationLng); showOrHideNavi(true); setOrRemoveMapMaker(true, TaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint,R.raw.star_marker); setOrRemoveMapMaker(true, TaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint,R.raw.end_marker); @@ -597,8 +585,13 @@ public class TaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implement * @param isShow */ private void showNaviToStartStationFragment(boolean isShow) { - mTaxiFragment.showNaviToStationFragment(isShow); - startNaviToStartStation(isShow, mOrderStartStationLat, mOrderStartStationLng); + if (mCurrentOrder != null && + mCurrentOrder.orderStatus == TaxiOrderStatusEnum.OnTheWayToStart.getCode()){ + double orderStartStationLat = mCurrentOrder.startSiteGcjPoint.get(1); + double orderStartStationLng = mCurrentOrder.startSiteGcjPoint.get(0); + mTaxiFragment.showNaviToStationFragment(isShow); + startNaviToStation(isShow, orderStartStationLat, orderStartStationLng); + } } /** @@ -607,10 +600,8 @@ public class TaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implement * @param isShow */ private void showNaviToEndStationFragment(boolean isShow) { - mTaxiFragment.showNaviToStationFragment(isShow); mTaxiFragment.startNaviToEndStation(); -// startNaviToEndStation(isShow, mOrderStartStationLat, mOrderStartStationLng); } @@ -664,27 +655,40 @@ public class TaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implement UiThreadHandler.postDelayed(new Runnable() { @Override public void run() { - if (saveOrderState == TaxiOrderStatusEnum.OnTheWayToStart.getCode()) { - startNaviToStartStation(false, mOrderStartStationLat, mOrderStartStationLng); + if (mCurrentOrder != null && + mCurrentOrder.orderStatus == TaxiOrderStatusEnum.OnTheWayToStart.getCode()) { + double orderStartStationLat = mCurrentOrder.startSiteGcjPoint.get(1); + double orderStartStationLng = mCurrentOrder.startSiteGcjPoint.get(0); + startNaviToStation(false, orderStartStationLat, orderStartStationLng); } } }, 2000); UiThreadHandler.postDelayed(new Runnable() { @Override public void run() { - if (saveOrderState == TaxiOrderStatusEnum.OnTheWayToStart.getCode()) { - if (mNaviIcon.getVisibility() == View.GONE) { - mNaviIcon.setVisibility(View.VISIBLE); + if (mCurrentOrder != null && + mCurrentOrder.orderStatus == TaxiOrderStatusEnum.OnTheWayToStart.getCode()) { + if (mNaviStartIcon.getVisibility() == View.GONE) { + mNaviStartIcon.setVisibility(View.VISIBLE); + } + } + if (mCurrentOrder != null && + mCurrentOrder.orderStatus == TaxiOrderStatusEnum.OnTheWayToEnd.getCode()){ + if (mNaviToEndIcon.getVisibility() == View.GONE) { + mNaviToEndIcon.setVisibility(View.VISIBLE); } } - } }, 3000); } - @Override public void onNaviToEndAmap() { - + if (mCurrentOrder != null && + mCurrentOrder.orderStatus == TaxiOrderStatusEnum.OnTheWayToEnd.getCode()){ + double orderEndStationLat = mCurrentOrder.endSiteGcjPoint.get(1); + double orderEndStationLng = mCurrentOrder.endSiteGcjPoint.get(0); + startNaviToStation(true,orderEndStationLat,orderEndStationLng); + } } /** diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiFragment.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiFragment.java index dc8477fd45..51175f548c 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiFragment.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiFragment.java @@ -312,7 +312,8 @@ public class TaxiFragment extends BaseTaxiTabFragment waitServiceList) { diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiServerOrdersFragment.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiServerOrdersFragment.java index 6ea26a2329..d959f4f0f1 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiServerOrdersFragment.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiServerOrdersFragment.java @@ -214,4 +214,9 @@ public class TaxiServerOrdersFragment extends BaseTaxiUIFragment { if (null == beingServerdOrdersFragment) return; beingServerdOrdersFragment.updateOrderBottomBtnUI(); } + + public void onNaviToEndAmap(){ + if (null == beingServerdOrdersFragment) return; + beingServerdOrdersFragment.onNaviToEndAmap(); + } } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/PerspectiveSwitchView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/PerspectiveSwitchView.kt index 669a57074d..0d91542d7b 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/PerspectiveSwitchView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/PerspectiveSwitchView.kt @@ -6,11 +6,9 @@ import android.view.* import android.widget.* import com.mogo.commons.* import com.mogo.eagle.core.function.hmi.R -import com.mogo.eagle.core.function.hmi.R.drawable import com.mogo.eagle.core.function.v2x.events.scenario.scene.airoad.* import com.mogo.map.* import com.mogo.map.uicontroller.* -import com.mogo.map.uicontroller.VisualAngleMode.MODE_MEDIUM_SIGHT import com.mogo.module.common.constants.* import kotlinx.android.synthetic.main.view_perspective_switch.view.* @@ -38,19 +36,16 @@ class PerspectiveSwitchView @JvmOverloads constructor( .visibleAllMarkers() MogoMapUIController.getInstance().changeMapVisualAngle(VisualAngleMode.MODE_MEDIUM_SIGHT, null) textSwitch.setText(R.string.module_map_model_normal) - AiRoadMarker.restore() } else if (MogoMapUIController.getInstance().currentMapVisualAngle.isMediumSight) { MogoMarkerManager.getInstance(AbsMogoApplication.getApp()) .inVisibleWithoutMarkers(DataTypes.TYPE_MARKER_ADAS) MogoMapUIController.getInstance().changeMapVisualAngle(VisualAngleMode.MODE_LONG_SIGHT, null) textSwitch.setText(R.string.module_map_model_faster) - AiRoadMarker.clear() } else { MogoMarkerManager.getInstance(AbsMogoApplication.getApp()) .visibleAllMarkers() MogoMapUIController.getInstance().changeMapVisualAngle(VisualAngleMode.MODE_MEDIUM_SIGHT, null) textSwitch.setText(R.string.module_map_model_normal) - AiRoadMarker.restore() } } } \ No newline at end of file