diff --git a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java index 30cbec38f9..f4d202ef6c 100644 --- a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java +++ b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java @@ -6,15 +6,14 @@ import androidx.fragment.app.Fragment; import androidx.fragment.app.FragmentActivity; import com.alibaba.android.arouter.facade.annotation.Route; -import com.elegant.utils.UiThreadHandler; +import com.mogo.commons.module.status.IMogoStatusChangedListener; +import com.mogo.commons.module.status.MogoStatusManager; +import com.mogo.commons.module.status.StatusDescriptor; import com.mogo.eagle.core.function.call.setting.CallerMoGoUiSettingManager; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.map.MogoMapUIController; -import com.mogo.module.common.MogoApisHandler; import com.mogo.och.bus.passenger.constant.BusPassengerConst; import com.mogo.och.bus.passenger.ui.BusPassengerRouteFragment; -import com.mogo.service.statusmanager.IMogoStatusChangedListener; -import com.mogo.service.statusmanager.StatusDescriptor; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -64,8 +63,7 @@ public class MogoOCHBusPassenger implements IMogoOCH, IMogoStatusChangedListener @Override public void init(Context context) { - MogoApisHandler.getInstance().getApis().getStatusManagerApi().registerStatusChangedListener("OchBus" - , StatusDescriptor.VR_MODE, this); + MogoStatusManager.getInstance().registerStatusChangedListener("OchBus",StatusDescriptor.VR_MODE, this); } @Override @@ -106,4 +104,5 @@ public class MogoOCHBusPassenger implements IMogoOCH, IMogoStatusChangedListener mActivity.getSupportFragmentManager().beginTransaction().hide(mPassengerFragment).commitAllowingStateLoss(); } } + } diff --git a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/callback/IBusPassengerControllerStatusCallback.java b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/callback/IBusPassengerControllerStatusCallback.java index 3263ade5b3..cc0bc3f4c7 100644 --- a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/callback/IBusPassengerControllerStatusCallback.java +++ b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/callback/IBusPassengerControllerStatusCallback.java @@ -1,6 +1,6 @@ package com.mogo.och.bus.passenger.callback; -import android.location.Location; +import com.mogo.eagle.core.data.map.MogoLocation; /** * Created on 2022/3/31 @@ -11,5 +11,5 @@ public interface IBusPassengerControllerStatusCallback { // 是否vr map模式 void onVRModeChanged(boolean isVRMode); // 自车定位 - void onCarLocationChanged(Location location); + void onCarLocationChanged(MogoLocation location); } diff --git a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/constant/BusPassengerConst.kt b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/constant/BusPassengerConst.kt index e2ba5ec9e0..c7b0368acd 100644 --- a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/constant/BusPassengerConst.kt +++ b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/constant/BusPassengerConst.kt @@ -39,7 +39,7 @@ class BusPassengerConst { // 未到站(未到站) const val STATION_STATUS_ARRIVING = 3 - //bus平均速度 + //bus平均速度 bus的平均里程:25km/h const val BUS_AVERAGE_SPEED = 25 // 订单总里程 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 2be7474aeb..c9fab03d3d 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 @@ -2,7 +2,6 @@ package com.mogo.och.bus.passenger.model; import android.content.Context; import android.content.Intent; -import android.location.Location; import android.net.ConnectivityManager; import android.os.Handler; import android.os.Message; @@ -11,23 +10,30 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.amap.api.maps.model.LatLng; -import com.mogo.aicloud.services.socket.IMogoLifecycleListener; import com.mogo.aicloud.services.socket.MogoAiCloudSocketManager; import com.mogo.cloud.commons.utils.CoordinateUtils; import com.mogo.commons.debug.DebugConfig; +import com.mogo.commons.module.intent.IMogoIntentListener; +import com.mogo.commons.module.intent.IntentManager; +import com.mogo.commons.module.status.IMogoStatusChangedListener; +import com.mogo.commons.module.status.MogoStatusManager; +import com.mogo.commons.module.status.StatusDescriptor; import com.mogo.eagle.core.data.autopilot.AutopilotStatusInfo; import com.mogo.eagle.core.data.config.FunctionBuildConfig; +import com.mogo.eagle.core.data.map.MogoLocation; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotPlanningListener; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; +import com.mogo.eagle.core.function.api.map.listener.IMoGoMapLocationListener; import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager; import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotPlanningListenerManager; +import com.mogo.eagle.core.function.call.map.CallerMapLocationListenerManager; import com.mogo.eagle.core.network.utils.GsonUtil; import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; import com.mogo.eagle.core.utilcode.util.NetworkUtils; -import com.mogo.map.navi.IMogoCarLocationChangedListener2; -import com.mogo.module.common.MogoApisHandler; +import com.mogo.eagle.core.utilcode.util.ToastUtils; +import com.mogo.och.bus.passenger.R; import com.mogo.och.bus.passenger.bean.BusPassengerOperationStatusResponse; import com.mogo.och.bus.passenger.bean.BusPassengerRoutesResponse; import com.mogo.och.bus.passenger.bean.BusPassengerRoutesResult; @@ -41,11 +47,9 @@ import com.mogo.och.bus.passenger.constant.BusPassengerConst; import com.mogo.och.bus.passenger.network.BusPassengerModelLoopManager; import com.mogo.och.bus.passenger.network.BusPassengerServiceManager; import com.mogo.och.common.module.biz.network.OchCommonServiceCallback; +import com.mogo.och.common.module.manager.AbnormalFactorsLoopManager; import com.mogo.och.common.module.utils.CoordinateCalculateRouteUtil; -import com.mogo.service.intent.IMogoIntentListener; -import com.mogo.service.statusmanager.IMogoStatusChangedListener; -import com.mogo.service.statusmanager.StatusDescriptor; - +import com.mogo.och.common.module.utils.ToastUtilsOch; import org.jetbrains.annotations.NotNull; import java.util.ArrayList; @@ -67,7 +71,7 @@ import static com.mogo.och.bus.passenger.constant.BusPassengerConst.STATION_STAT public class BusPassengerModel { private static final String TAG = BusPassengerModel.class.getSimpleName(); - private List mRoutePoints = new ArrayList<>(); + private List mRoutePoints = new ArrayList<>(); private static final class SingletonHolder { private static final BusPassengerModel INSTANCE = new BusPassengerModel(); @@ -85,13 +89,15 @@ public class BusPassengerModel { private IBusPassegerDriverStatusCallback mDriverStatusCallback; //出车收车状态 private IBusPassengerRouteLineInfoCallback mRouteLineInfoCallback; // bus路线信息更新 - private double mLongitude, mLatitude; + private MogoLocation mLocation = null; private BusPassengerRoutesResult routesResult = null; List mStations = new ArrayList<>(); private int mNextStationIndex = 0;// 要到达站的index - private List mTwoStationsRouts = new ArrayList<>(); + private List mTwoStationsRouts = new ArrayList<>(); + private int mPreRouteIndex = 0; + private int mWipePreIndex = 0; private static final int MSG_QUERY_BUS_P_STATION = 1001; private final Handler handler = new Handler(new Handler.Callback() { @@ -131,21 +137,31 @@ public class BusPassengerModel { private void queryDriverOperationStatus() { BusPassengerServiceManager.queryDriverOperationStatus(mContext , new OchCommonServiceCallback() { - @Override - public void onSuccess(BusPassengerOperationStatusResponse data) { - if (data == null || data.data == null) return; - if(mDriverStatusCallback != null){ - mDriverStatusCallback.changeOperationStatus(data.data.driverStatus == 1); - mDriverStatusCallback.updatePlateNumber(data.data.plateNumber); - } - } + @Override + public void onSuccess(BusPassengerOperationStatusResponse data) { + if (data == null || data.data == null) return; + if (mDriverStatusCallback != null) { + mDriverStatusCallback.changeOperationStatus(data.data.driverStatus == 1); + mDriverStatusCallback.updatePlateNumber(data.data.plateNumber); + } + } - @Override - public void onFail(int code, String msg) { - //延迟3s再次查询 - queryDriverOperationDelay(); - } - }); + @Override + public void onError() { + if (!NetworkUtils.isConnected(mContext)) { + ToastUtils.showShort(mContext.getString(R.string.network_error_tip)); + } else { + ToastUtils.showShort(mContext.getString(R.string.request_error_tip)); + } + queryDriverOperationDelay(); + } + + @Override + public void onFail(int code, String msg) { + //延迟3s再次查询 + queryDriverOperationDelay(); + } + }); } public void queryDriverSiteByCoordinate(){ @@ -157,6 +173,7 @@ public class BusPassengerModel { || data.getResult() == null || data.getResult().getSites() == null) { routesResult = null; + mNextStationIndex = 0; startOrStopCalculateRouteInfo(false); if (mRouteLineInfoCallback != null){ mRouteLineInfoCallback.showNoTaskView(); @@ -170,14 +187,20 @@ public class BusPassengerModel { updatePassengerRouteInfo(data.getResult()); } + @Override + public void onError() { + + } + @Override public void onFail(int code, String msg) { - //code = 1003; message = bus车辆已收车或未出车;bus driver shadow,not exists if (code == 1003){ routesResult = null; startOrStopCalculateRouteInfo(false); queryDriverOperationDelay(); + return; } + CallerLogger.INSTANCE.d( M_BUS_P + TAG, "queryDriverSiteByCoordinate = %s", msg ); } }); } @@ -204,6 +227,7 @@ public class BusPassengerModel { if (i == 0){ startOrStopRouteAndWipe(false); } + mPreRouteIndex = 0; startOrStopCalculateRouteInfo(false); mRouteLineInfoCallback.updateStationsInfo(stations,i,true); return; @@ -242,46 +266,33 @@ public class BusPassengerModel { } private void initListeners() { - MogoAiCloudSocketManager.getInstance(mContext) - .registerLifecycleListener(10010, mSocketLifeCycleLisnter); // 2021.11.1重构自动驾驶 实现接口 IMoGoAutopilotStatusListener 注册监听 替换IMogoAdasOCHCallback接口 CallerAutoPilotStatusListenerManager.INSTANCE.addListener(TAG, mGoAutopilotStatusListener); - MogoApisHandler.getInstance() - .getApis() - .getIntentManagerApi() - .registerIntentListener( ConnectivityManager.CONNECTIVITY_ACTION, mNetWorkIntentListener ); - MogoApisHandler.getInstance() - .getApis() - .getStatusManagerApi() - .registerStatusChangedListener( TAG, StatusDescriptor.VR_MODE, mMogoStatusChangedListener ); - // 达到起始站围栏监听 - MogoApisHandler.getInstance() - .getApis() - .getRegisterCenterApi() - .registerCarLocationChangedListener( TAG, mCarLocationChangedListener2); + IntentManager.getInstance().registerIntentListener(ConnectivityManager.CONNECTIVITY_ACTION, mNetWorkIntentListener ); + MogoStatusManager.getInstance().registerStatusChangedListener(TAG, StatusDescriptor.VR_MODE, mMogoStatusChangedListener ); + // 定位监听 + CallerMapLocationListenerManager.INSTANCE.addListener(TAG, mMapLocationListener,false); //2021.11.1 自动驾驶路线规划接口 CallerAutopilotPlanningListenerManager.INSTANCE.addListener(TAG,moGoAutopilotPlanningListener); + + AbnormalFactorsLoopManager.INSTANCE.startLoopAbnormalFactors(mContext); } private void releaseListeners() { - MogoApisHandler.getInstance() - .getApis() - .getStatusManagerApi() - .unregisterStatusChangedListener(TAG, StatusDescriptor.VR_MODE, mMogoStatusChangedListener); + MogoStatusManager.getInstance().unregisterStatusChangedListener(TAG, StatusDescriptor.VR_MODE, mMogoStatusChangedListener); - // 注销到达起始站围栏监听 - MogoApisHandler.getInstance() - .getApis() - .getRegisterCenterApi() - .unregisterCarLocationChangedListener(TAG, mCarLocationChangedListener2); + // 注销定位监听 + CallerMapLocationListenerManager.INSTANCE.removeListener(TAG,false); MogoAiCloudSocketManager.getInstance(mContext) .unregisterLifecycleListener(10010); CallerAutoPilotStatusListenerManager.INSTANCE.removeListener(mGoAutopilotStatusListener); CallerAutopilotPlanningListenerManager.INSTANCE.removeListener(moGoAutopilotPlanningListener); + + AbnormalFactorsLoopManager.INSTANCE.stopLoopAbnormalFactors(); } //监听网络变化,避免启动机器时无网导致无法更新订单信息 @@ -297,40 +308,22 @@ public class BusPassengerModel { } }; - private final IMogoStatusChangedListener mMogoStatusChangedListener = new IMogoStatusChangedListener() { - // VR mode变更回调 - @Override - public void onStatusChanged(StatusDescriptor descriptor, boolean isTrue) { - if (StatusDescriptor.VR_MODE == descriptor) { - if (mControllerStatusCallbackMap.size() > 0) { - for (IBusPassengerControllerStatusCallback callback :mControllerStatusCallbackMap.values()){ - callback.onVRModeChanged(isTrue); - } + // VR mode变更回调 + private final IMogoStatusChangedListener mMogoStatusChangedListener = (descriptor, isTrue) -> { + if (StatusDescriptor.VR_MODE == descriptor) { + if (mControllerStatusCallbackMap.size() > 0) { + for (IBusPassengerControllerStatusCallback callback :mControllerStatusCallbackMap.values()){ + callback.onVRModeChanged(isTrue); } } } }; - private final IMogoLifecycleListener mSocketLifeCycleLisnter = new IMogoLifecycleListener() { + private final IMoGoMapLocationListener mMapLocationListener = new IMoGoMapLocationListener() { @Override - public void onConnectFailure() { CallerLogger.INSTANCE.e(M_BUS_P + TAG,"socket onConnectFailure"); } - - @Override - public void onConnectSuccess() { CallerLogger.INSTANCE.e(M_BUS_P + TAG,"socket onConnectSuccess"); } - - @Override - public void onConnectLost() { CallerLogger.INSTANCE.e(M_BUS_P + TAG,"socket onConnectLost"); } - }; - - // 自车定位 - private final IMogoCarLocationChangedListener2 mCarLocationChangedListener2 = new IMogoCarLocationChangedListener2() { - - @Override - public void onCarLocationChanged2( Location location ) { - //位置变化时,通过围栏判断是否到达x点 - // TODO: 2022/3/31 - mLongitude = location.getLongitude(); - mLatitude = location.getLatitude(); + public void onLocationChanged(@Nullable MogoLocation location, int from, boolean isGps) { + if (null == location) return; + mLocation = location; for (IBusPassengerControllerStatusCallback callback :mControllerStatusCallbackMap.values()){ callback.onCarLocationChanged(location); } @@ -425,8 +418,8 @@ public class BusPassengerModel { public void updateRoutePoints(List routePoints){ mRoutePoints.clear(); - List latLngModels = CoordinateCalculateRouteUtil - .coordinateConverterWgsToGcjListCommon(mContext,routePoints); + List latLngModels = CoordinateCalculateRouteUtil + .coordinateConverterWgsToGcjLocations(mContext,routePoints); mRoutePoints.addAll(latLngModels); calculateTwoStationsRoute(); } @@ -441,11 +434,15 @@ public class BusPassengerModel { BusPassengerStation stationNext = mStations.get(mNextStationIndex); BusPassengerStation stationCur = mStations.get(mNextStationIndex - 1); //当前站在轨迹中对应的点 - int currentRouteIndex = CoordinateCalculateRouteUtil.getArrivedPointIndex(mRoutePoints + int currentRouteIndex = CoordinateCalculateRouteUtil.getArrivedPointIndexNew(0 + ,mRoutePoints ,stationCur.getGcjLon(),stationCur.getGcjLat()); //要前往的站在轨迹中对应的点 - int nextRouteIndex = CoordinateCalculateRouteUtil.getArrivedPointIndex(mRoutePoints + int nextRouteIndex = CoordinateCalculateRouteUtil.getArrivedPointIndexNew(currentRouteIndex + ,mRoutePoints ,stationNext.getGcjLon(),stationNext.getGcjLat()); + CallerLogger.INSTANCE.d(M_BUS_P + TAG, "currentRouteIndex = " + currentRouteIndex + + ", nextRouteIndex = " + nextRouteIndex); if (currentRouteIndex < nextRouteIndex){ //如果找到的next在起点的轨迹前面,直接舍弃这个轨迹,不显示 mTwoStationsRouts.addAll(mRoutePoints.subList(currentRouteIndex,nextRouteIndex)); } @@ -470,22 +467,28 @@ public class BusPassengerModel { if (mTwoStationsRouts.size() == 0){ calculateTwoStationsRoute(); } - if (mTwoStationsRouts.size() > 0){ - List lastPoints = CoordinateCalculateRouteUtil - .getRemainPointListByCompare(mTwoStationsRouts,mLongitude,mLatitude); - - float lastSumLength = 0; - if (lastPoints.size() == 1){ //只是最后一个点,计算当前位置和最后一个点的距离 - lastSumLength = CoordinateUtils.calculateLineDistance( - lastPoints.get(0).longitude, lastPoints.get(0).latitude, - mLongitude, mLatitude); - }else { - lastSumLength = CoordinateCalculateRouteUtil.calculateRouteSumLength(lastPoints); + if (mTwoStationsRouts.size() > 0 && mLocation != null){ + Map> lastPointsMap = CoordinateCalculateRouteUtil + .getRemainPointListByCompareNew(mPreRouteIndex,mTwoStationsRouts,mLocation); + for (int index: lastPointsMap.keySet()) { + mPreRouteIndex = index; + break; } - double lastTime = lastSumLength / BusPassengerConst.BUS_AVERAGE_SPEED * 3.6 ; //秒 - CallerLogger.INSTANCE.d(M_BUS_P + TAG, "lastSumLength = " + lastSumLength); - if (mAutopilotPlanningCallback != null){ - mAutopilotPlanningCallback.routePlanningToNextStationChanged((long)lastSumLength,(long) lastTime); + + for (List lastPoints: lastPointsMap.values()){ + float lastSumLength = 0; + if (lastPoints.size() == 1){ //只是最后一个点,计算当前位置和最后一个点的距离 + lastSumLength = CoordinateUtils.calculateLineDistance( + lastPoints.get(0).getLongitude(), lastPoints.get(0).getLatitude(), + mLocation.getLongitude(), mLocation.getLatitude()); + }else { + lastSumLength = CoordinateCalculateRouteUtil.calculateRouteSumLength(lastPoints); + } + double lastTime = lastSumLength / BusPassengerConst.BUS_AVERAGE_SPEED * 3.6 ; //秒 + CallerLogger.INSTANCE.d(M_BUS_P + TAG, "lastSumLength = " + lastSumLength); + if (mAutopilotPlanningCallback != null){ + mAutopilotPlanningCallback.routePlanningToNextStationChanged((long)lastSumLength,(long) lastTime); + } } } } @@ -507,18 +510,25 @@ public class BusPassengerModel { if (isStart){ BusPassengerModelLoopManager.getInstance().startOrStopRouteAndWipe(); }else { + mWipePreIndex = 0; BusPassengerModelLoopManager.getInstance().stopOrStopRouteAndWipe(); } } public void loopRouteAndWipe() { - if (mRoutePoints != null && mRoutePoints.size() > 0){ + if (mRoutePoints != null && mRoutePoints.size() > 0 && mLocation != null){ int haveArrivedIndex = CoordinateCalculateRouteUtil - .getArrivedPointIndex(mRoutePoints,mLongitude,mLatitude); + .getArrivedPointIndexNew(mWipePreIndex, + mRoutePoints, + mLocation); + + mWipePreIndex = haveArrivedIndex; CallerLogger.INSTANCE.d(M_BUS_P + TAG, "thread = "+ Thread.currentThread().getName()+" haveArrivedIndex== " + haveArrivedIndex); if (mAutopilotPlanningCallback != null){ - mAutopilotPlanningCallback.routeResult(mRoutePoints,haveArrivedIndex); + List routePoints = CoordinateCalculateRouteUtil + .coordinateConverterLocationToLatLng(mContext,mRoutePoints); + mAutopilotPlanningCallback.routeResult(routePoints,haveArrivedIndex); } } } @@ -527,8 +537,10 @@ public class BusPassengerModel { * 设置小地图路径的起终点marker */ public void setRouteLineMarker(){ - if (mAutopilotPlanningCallback != null){ - mAutopilotPlanningCallback.setLineMarker(mRoutePoints); + if (mAutopilotPlanningCallback != null && mRoutePoints != null){ + List routePoints = CoordinateCalculateRouteUtil + .coordinateConverterLocationToLatLng(mContext,mRoutePoints); + mAutopilotPlanningCallback.setLineMarker(routePoints); } } diff --git a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BaseBusPassengerPresenter.java b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BaseBusPassengerPresenter.java index 505a26d7a5..f742af5eb1 100644 --- a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BaseBusPassengerPresenter.java +++ b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BaseBusPassengerPresenter.java @@ -9,6 +9,7 @@ import androidx.lifecycle.LifecycleOwner; import com.amap.api.maps.model.LatLng; import com.mogo.commons.AbsMogoApplication; import com.mogo.commons.mvp.Presenter; +import com.mogo.eagle.core.data.map.MogoLocation; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; @@ -109,7 +110,7 @@ public class BaseBusPassengerPresenter extends Presenter mView.onCarLocationChanged(location)); } diff --git a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerMapDirectionView.java b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerMapDirectionView.java index a0fc02d3cf..bbd2a17c1d 100644 --- a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerMapDirectionView.java +++ b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerMapDirectionView.java @@ -56,9 +56,8 @@ public class BusPassengerMapDirectionView private int mCurrentIndex = -1; - private int zoomLevel = 13; - private List mCoordinatesLatLng = new ArrayList<>(); //站点坐标数据 - private List mLinePointsLatLng = new ArrayList<>(); //轨迹坐标数据 + private List mCoordinatesLatLng = new ArrayList<>(); //轨迹坐标数据 + private List mLineStationLatLng = new ArrayList<>();//站点坐标数据 private Polyline mPolyline; private CameraUpdate mCameraUpdate; private Context mContext; @@ -197,24 +196,27 @@ public class BusPassengerMapDirectionView mCarMarker.setToTop(); } - if (mLinePointsLatLng.size() > 0){ - //圈定地图显示范围 - //存放经纬度 - LatLngBounds.Builder boundsBuilder = new LatLngBounds.Builder(); - for (int i = 0; i < mLinePointsLatLng.size(); i++) { - boundsBuilder.include(mLinePointsLatLng.get(i)); - } - boundsBuilder.include(currentLatLng); - //第二个参数为四周留空宽度 - mAMap.moveCamera(CameraUpdateFactory.newLatLngBoundsRect(boundsBuilder.build(),100,100,100,100)); + //圈定地图显示范围 + LatLngBounds.Builder boundsBuilder = new LatLngBounds.Builder(); - } -// else { -// //设置希望展示的地图缩放级别 -// CameraPosition cameraPosition = new CameraPosition.Builder() -// .target(mCarMarker.getPosition()).tilt(0).bearing(location.getBearing()).zoom(zoomLevel).build(); -// mAMap.moveCamera(CameraUpdateFactory.newCameraPosition(cameraPosition)); +// if (mLineStationLatLng.size() > 0){ +// //存放经纬度 +// for (int i = 0; i < mLineStationLatLng.size(); i++) { +// boundsBuilder.include(mLineStationLatLng.get(i)); +// } +// //第二个参数为四周留空宽度 // } + + if (mCoordinatesLatLng.size() > 0){ + //存放经纬度 + for (int i = 0; i < mCoordinatesLatLng.size(); i++) { + boundsBuilder.include(mCoordinatesLatLng.get(i)); + } + //第二个参数为四周留空宽度 + } + + boundsBuilder.include(currentLatLng); + mAMap.moveCamera(CameraUpdateFactory.newLatLngBoundsRect(boundsBuilder.build(),100,100,100,100)); } @@ -227,9 +229,9 @@ public class BusPassengerMapDirectionView if (mAMap != null) { addRouteColorList(); - CallerLogger.INSTANCE.d(M_BUS_P + TAG, "mLinePointsLatLng.size() = " +mLinePointsLatLng.size()); - if (mLinePointsLatLng.size() >= 2 && mCoordinatesLatLng.size() > 2) { - + CallerLogger.INSTANCE.d(M_BUS_P + TAG, "mLinePointsLatLng.size() = " +mLineStationLatLng.size() + +" mCoordinatesLatLng.size()= " + mCoordinatesLatLng.size()); + if (mLineStationLatLng.size() >= 2 && mCoordinatesLatLng.size() > 2) { //设置线段纹理 PolylineOptions polylineOptions = new PolylineOptions(); polylineOptions.addAll(mCoordinatesLatLng); @@ -302,7 +304,7 @@ public class BusPassengerMapDirectionView textureList.clear(); texIndexList.clear(); mCoordinatesLatLng.clear(); - mLinePointsLatLng.clear(); + mLineStationLatLng.clear(); CallerLogger.INSTANCE.d(M_BUS_P + TAG, " mCoordinatesLatLng.clear " ); } @@ -350,16 +352,16 @@ public class BusPassengerMapDirectionView mLineMarkers.clear(); } - public void setLineMarkersAndDraw(List lineineLatLngs){ + public void setLineMarkersAndDraw(List stationLatLngs){ clearLineMarkers(); - for (int i = 0; i < lineineLatLngs.size(); i++) { + for (int i = 0; i < stationLatLngs.size(); i++) { Marker mWayPointMarker = mAMap.addMarker(new MarkerOptions() .icon(BitmapDescriptorFactory.fromResource(R.drawable.bus_p_map_view_dir_way_point))); mLineMarkers.add(mWayPointMarker); } if (mCoordinatesLatLng.size() == 0) { for (int i = 0; i < mLineMarkers.size(); i++) { - mLineMarkers.get(i).setPosition(lineineLatLngs.get(i)); + mLineMarkers.get(i).setPosition(stationLatLngs.get(i)); mLineMarkers.get(i).setVisible(true); } mCurrentIndex = -1; @@ -367,15 +369,15 @@ public class BusPassengerMapDirectionView } public void setLinePointMarkerAndDraw(List routeLineLatLngs, int currentIndex) { - mLinePointsLatLng.clear(); - mLinePointsLatLng.addAll(routeLineLatLngs); + mLineStationLatLng.clear(); + mLineStationLatLng.addAll(routeLineLatLngs); - if (mLinePointsLatLng.size() > 0 && mCurrentIndex != currentIndex) { + if (mLineStationLatLng.size() > 0 && mCurrentIndex != currentIndex) { if (mAMap != null && mLineMarkers.size() > 0) { mCurrentIndex = currentIndex; for (int i = 0; i < mLineMarkers.size(); i++) { if (i != currentIndex && i + 1 != currentIndex) { - mLineMarkers.get(i).setPosition(mLinePointsLatLng.get(i)); + mLineMarkers.get(i).setPosition(mLineStationLatLng.get(i)); mLineMarkers.get(i).setVisible(true); } else { mLineMarkers.get(i).setVisible(false); diff --git a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerRouteFragment.java b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerRouteFragment.java index e56557e570..5e345ae9a5 100644 --- a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerRouteFragment.java +++ b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerRouteFragment.java @@ -1,6 +1,5 @@ package com.mogo.och.bus.passenger.ui; -import android.location.Location; import android.os.Bundle; import android.view.View; import android.view.animation.Animation; @@ -15,6 +14,7 @@ import androidx.recyclerview.widget.RecyclerView; import com.amap.api.maps.model.LatLng; import com.elegant.utils.UiThreadHandler; import com.mogo.commons.debug.DebugConfig; +import com.mogo.eagle.core.data.map.MogoLocation; import com.mogo.eagle.core.function.call.hmi.CallerHmiManager; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; @@ -46,7 +46,7 @@ public class BusPassengerRouteFragment extends private BusPassengerTrafficLightView mTrafficLightView; private List mStationsList = new ArrayList<>(); - private List mLinePointsList = new ArrayList<>(); + private List mLineStationsList = new ArrayList<>(); private TextView mSpeedTv; private ConstraintLayout mNoLineInfoView; @@ -298,19 +298,19 @@ public class BusPassengerRouteFragment extends } private void updateWayPointList(List stations,int currentStationIndex) { - mLinePointsList.clear(); + mLineStationsList.clear(); for (int i = 0; i< stations.size(); i++) {//站点集合 LatLng latLng = CoordinateCalculateRouteUtil.coordinateConverterWgsToGcj(getContext() ,stations.get(i).getLon(),stations.get(i).getLat());// lat,lon - mLinePointsList.add(latLng); + mLineStationsList.add(latLng); } - setLineMarkers(mLinePointsList); + setLineMarkers(mLineStationsList); if (mMapDirectionView != null) { UiThreadHandler.post(new Runnable() { @Override public void run() { - mMapDirectionView.setLinePointMarkerAndDraw(mLinePointsList,currentStationIndex); + mMapDirectionView.setLinePointMarkerAndDraw(mLineStationsList,currentStationIndex); } }); } @@ -337,7 +337,7 @@ public class BusPassengerRouteFragment extends lastBearing = bearing; } - public void onCarLocationChanged(Location location) { + public void onCarLocationChanged(MogoLocation location) { updateSpeedView(location.getSpeed()); } diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bg_bus_p_arrived_station.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bg_bus_p_arrived_station.png deleted file mode 100644 index f47f628224..0000000000 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bg_bus_p_arrived_station.png and /dev/null differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_arrow_nor.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_arrow_nor.png deleted file mode 100644 index 2964279c96..0000000000 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_arrow_nor.png and /dev/null differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_auto_nor.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_auto_nor.png deleted file mode 100644 index c9daea21c9..0000000000 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_auto_nor.png and /dev/null differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_light_green_nor.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_light_green_nor.png deleted file mode 100644 index 939d5c0214..0000000000 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_light_green_nor.png and /dev/null differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_light_red_nor.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_light_red_nor.png deleted file mode 100644 index 97d774140a..0000000000 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_light_red_nor.png and /dev/null differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_light_yellow_nor.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_light_yellow_nor.png deleted file mode 100644 index a782062c34..0000000000 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_light_yellow_nor.png and /dev/null differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_line_blue.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_line_blue.png deleted file mode 100644 index 5614459c69..0000000000 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_line_blue.png and /dev/null differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_line_green.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_line_green.png deleted file mode 100644 index dab0bedbfa..0000000000 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_line_green.png and /dev/null differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_line_grey.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_line_grey.png deleted file mode 100644 index 22a4227c74..0000000000 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_line_grey.png and /dev/null differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_arrow_arrived.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_arrow_arrived.png deleted file mode 100644 index 445906d280..0000000000 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_arrow_arrived.png and /dev/null differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_arrow_un_arrive.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_arrow_un_arrive.png deleted file mode 100644 index 99d8bd7b56..0000000000 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_arrow_un_arrive.png and /dev/null differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_car.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_car.png deleted file mode 100644 index 17beb894a6..0000000000 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_car.png and /dev/null differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_view_dir_end_point.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_view_dir_end_point.png deleted file mode 100644 index 1e64713481..0000000000 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_view_dir_end_point.png and /dev/null differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_view_dir_start.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_view_dir_start.png deleted file mode 100644 index 22d8f225c2..0000000000 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_view_dir_start.png and /dev/null differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_view_dir_way_point.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_view_dir_way_point.png deleted file mode 100644 index ff04c01f13..0000000000 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_map_view_dir_way_point.png and /dev/null differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_mogo_nor.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_mogo_nor.png deleted file mode 100644 index 3f938990f6..0000000000 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_mogo_nor.png and /dev/null differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_point_blue.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_point_blue.png deleted file mode 100644 index 6947f4538d..0000000000 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_point_blue.png and /dev/null differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_point_gray.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_point_gray.png deleted file mode 100644 index 5b9da6fb76..0000000000 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_point_gray.png and /dev/null differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_point_green.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_point_green.png deleted file mode 100644 index 194bcbf434..0000000000 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_point_green.png and /dev/null differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_un_auto_nor.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_un_auto_nor.png deleted file mode 100644 index 528cd4dc66..0000000000 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_un_auto_nor.png and /dev/null differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/station_arrow.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/station_arrow.png deleted file mode 100644 index 114c7a2ba7..0000000000 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/station_arrow.png and /dev/null differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_arrow_nor.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_arrow_nor.png index 2964279c96..d8d0663d02 100644 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_arrow_nor.png and b/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_arrow_nor.png differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_line_blue.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_line_blue.png old mode 100644 new mode 100755 index 5614459c69..233be50bd5 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_line_blue.png and b/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_line_blue.png differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_line_green.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_line_green.png old mode 100644 new mode 100755 index dab0bedbfa..902cd19c2f Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_line_green.png and b/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_line_green.png differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_line_grey.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_line_grey.png index 22a4227c74..b16a3dd0b8 100644 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_line_grey.png and b/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_line_grey.png differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_mogo_nor.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_mogo_nor.png old mode 100644 new mode 100755 index 3f938990f6..3a779659d3 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_mogo_nor.png and b/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_mogo_nor.png differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_no_order_data.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_no_order_data.png old mode 100644 new mode 100755 index 0e61996d3f..a1a5aed070 Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_no_order_data.png and b/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_no_order_data.png differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_point_blue.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_point_blue.png old mode 100644 new mode 100755 index 6947f4538d..bc88e93c1d Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_point_blue.png and b/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_point_blue.png differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_point_gray.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_point_gray.png old mode 100644 new mode 100755 index 5b9da6fb76..ca325eb42e Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_point_gray.png and b/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_point_gray.png differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_point_green.png b/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_point_green.png old mode 100644 new mode 100755 index 194bcbf434..865097cbad Binary files a/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_point_green.png and b/OCH/mogo-och-bus-passenger/src/main/res/drawable-xhdpi/bus_p_point_green.png differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_base_fragment.xml b/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_base_fragment.xml index 69625e4573..be1ab181c1 100644 --- a/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_base_fragment.xml +++ b/OCH/mogo-och-bus-passenger/src/main/res/layout/bus_p_base_fragment.xml @@ -38,8 +38,8 @@ app:layout_constraintLeft_toLeftOf="parent" app:shadowColor="@color/bus_p_panel_edge_shadow" app:shadowRadius="@dimen/dp_30" - app:xOffset="0px" - app:yOffset="0px"> + app:xOffset="0dp" + app:yOffset="0dp"> @@ -107,7 +107,7 @@ + app:layout_goneMarginLeft="0dp" /> - - 700px - 40px - 40px - 40px - 110px - 224px - 510px - 3px - - 158px - 90px - 45px - 158px - 90px - 45px - 90px - 90px - 3px - - 224px - 50px - 50px - 44px - 130px - 38px - - 36px - - 110px - 42px - - 4px - 10px - 20px - 60px - 30px - 20px - 50px - 6px - 50px - 36px - 80px - 100px - 80px - 60px - 6px - - 685px - 309px - 50px - 10px - 44px - 55px - 40px - - 584px - 550px - \ No newline at end of file diff --git a/OCH/mogo-och-bus-passenger/src/main/res/values/dimens.xml b/OCH/mogo-och-bus-passenger/src/main/res/values/dimens.xml index d4bfe96b27..e738022b0d 100644 --- a/OCH/mogo-och-bus-passenger/src/main/res/values/dimens.xml +++ b/OCH/mogo-och-bus-passenger/src/main/res/values/dimens.xml @@ -1,61 +1,61 @@ - 700px - 40px - 40px - 40px - 40px - 110px - 224px - 510px - 3px + 700dp + 40dp + 40dp + 40dp + 40dp + 110dp + 224dp + 510dp + 3dp - 158px - 90px - 45px - 158px - 90px - 45px - 90px - 90px - 3px + 158dp + 90dp + 45dp + 158dp + 90dp + 45dp + 90dp + 90dp + 3dp - 224px - 50px - 50px - 44px - 130px - 38px + 224dp + 50dp + 50dp + 44dp + 130dp + 38dp - 36px + 36dp - 110px - 42px + 110dp + 42dp - 4px - 10px - 20px - 60px - 30px - 20px - 50px - 6px - 50px - 36px - 80px - 100px - 80px - 60px - 6px + 4dp + 10dp + 20dp + 60dp + 30dp + 20dp + 50dp + 6dp + 50dp + 36dp + 80dp + 100dp + 80dp + 60dp + 6dp - 638px - 316px - 38px - 10px - 44px - 55px - 40px + 685dp + 309dp + 50dp + 10dp + 44dp + 55dp + 40dp - 584px - 550px + 584dp + 550dp \ No newline at end of file diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/BusProvider.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/BusProvider.java index e60a54e1a6..7e04f66bd0 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/BusProvider.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/BusProvider.java @@ -10,13 +10,13 @@ import androidx.fragment.app.FragmentActivity; import androidx.fragment.app.FragmentManager; import com.alibaba.android.arouter.facade.annotation.Route; +import com.mogo.commons.module.status.IMogoStatusChangedListener; +import com.mogo.commons.module.status.MogoStatusManager; +import com.mogo.commons.module.status.StatusDescriptor; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.map.MogoMapUIController; -import com.mogo.module.common.MogoApisHandler; import com.mogo.och.bus.constant.BusConst; import com.mogo.och.bus.fragment.BusFragment; -import com.mogo.service.statusmanager.IMogoStatusChangedListener; -import com.mogo.service.statusmanager.StatusDescriptor; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -38,15 +38,15 @@ public class BusProvider implements IMogoOCH { /** * 进入鹰眼模式,设置手势缩放地图失效 */ - private void stepIntoVrMode(){ - CallerLogger.INSTANCE.d( M_BUS + TAG, "进入vr模式" ); + private void stepIntoVrMode() { + CallerLogger.INSTANCE.d(M_BUS + TAG, "进入vr模式"); MogoMapUIController.getInstance() .stepInVrMode(false); } @Override public void init(Context context) { - MogoApisHandler.getInstance().getApis().getStatusManagerApi().registerStatusChangedListener("OchBus" + MogoStatusManager.getInstance().registerStatusChangedListener("OchBus" , StatusDescriptor.VR_MODE, statusChangedListener); } @@ -55,12 +55,14 @@ public class BusProvider implements IMogoOCH { if (busFragment == null) { CallerLogger.INSTANCE.d(TAG, "准备add fragment======"); Fragment fragmentByTag = supportFragmentManager.findFragmentByTag(BusFragment.TAG); - if(fragmentByTag instanceof BusFragment){ - busFragment = (BusFragment)fragmentByTag; - }else { + if (fragmentByTag instanceof BusFragment) { + busFragment = (BusFragment) fragmentByTag; + } else { busFragment = new BusFragment(); } - supportFragmentManager.beginTransaction().add(containerId, busFragment,BusFragment.TAG).commitAllowingStateLoss(); + if(!busFragment.isAdded()) { + supportFragmentManager.beginTransaction().add(containerId, busFragment, BusFragment.TAG).commitAllowingStateLoss(); + } return; } CallerLogger.INSTANCE.d(TAG, "准备show fragment"); @@ -83,7 +85,7 @@ public class BusProvider implements IMogoOCH { } else { hideFragment(); } - } else if (MogoApisHandler.getInstance().getApis().getStatusManagerApi().isVrMode()) { + } else if (MogoStatusManager.getInstance().isVrMode()) { // topView进行展示时推出网约车界面,但是不隐藏整个fragment if (busFragment != null && isTrue) { busFragment.hideOchBus(); @@ -115,7 +117,9 @@ public class BusProvider implements IMogoOCH { @Override public void onDestroy() { - //若不调用finish, 设置中打开关闭UITouch,会造成och fragment 重叠 + //若不调用finish, 设置中打开关闭UITouch,会造成och fragment 重叠 + MogoStatusManager.getInstance().unregisterStatusChangedListener("OchBus" + , StatusDescriptor.VR_MODE, statusChangedListener); if (activity == null) return; activity.finish(); } diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/WriteOffPassenger.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/WriteOffPassenger.java index 0e2bebe17d..11ac15e305 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/WriteOffPassenger.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/WriteOffPassenger.java @@ -1,10 +1,12 @@ package com.mogo.och.bus.bean; +import java.io.Serializable; + /** * @author: wangmingjun * @date: 2022/9/23 */ -public class WriteOffPassenger { +public class WriteOffPassenger implements Serializable { public String phone; public String orderNo; public int passengerSize; diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/IBusControllerStatusCallback.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/IBusControllerStatusCallback.java index e03e963942..e10afc44e7 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/IBusControllerStatusCallback.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/IBusControllerStatusCallback.java @@ -1,6 +1,6 @@ package com.mogo.och.bus.callback; -import android.location.Location; +import com.mogo.eagle.core.data.map.MogoLocation; /** * Created on 2021/9/10 @@ -11,7 +11,7 @@ public interface IBusControllerStatusCallback { // 是否vr map模式 void onVRModeChanged(boolean isVRMode); // 自车定位 - void onCarLocationChanged(Location location); + void onCarLocationChanged(MogoLocation location); //开始开启自动驾驶 void startOpenAutopilot(); } diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/constant/BusConst.kt b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/constant/BusConst.kt index 686e08b4e4..e98439b8f1 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/constant/BusConst.kt +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/constant/BusConst.kt @@ -63,6 +63,7 @@ class BusConst { const val EVENT_PARAM_END_NAME = "end_name" const val EVENT_PARAM_LINE_ID = "line_id" const val EVENT_PARAM_START_RESULT = "start_autopilot" // true/false + const val EVENT_PARAM_START_FAILURE_CODE = "start_autopilot_failure_code" // 启动自驾失败code const val EVENT_PARAM_START_FAILURE_MSG = "start_autopilot_failure_msg" // 启动自驾失败原因 const val EVENT_PARAM_PLATE_NUM = "plate_number" // 车牌号 const val EVENT_PARAM_ENV_ONLINE = "env_online" // 是否线上环境:true/false 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 a780ffb698..ad9e8b5b50 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 @@ -6,6 +6,7 @@ import static com.mogo.och.bus.constant.BusConst.TIMER_START_AUTOPILOT_INTERVAL; import android.animation.ObjectAnimator; import android.content.Intent; import android.os.Bundle; +import android.util.DisplayMetrics; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -43,8 +44,7 @@ import com.mogo.map.MogoMarkerManager; import com.mogo.map.listener.IMogoMapListener; import com.mogo.map.uicontroller.VisualAngleMode; import com.mogo.module.common.MogoApisHandler; -import com.mogo.module.common.constants.DataTypes; -import com.mogo.module.common.view.OnPreventFastClickListener; +import com.mogo.eagle.core.utilcode.mogo.view.OnPreventFastClickListener; import com.mogo.och.bus.R; import com.mogo.och.bus.bean.BusRoutesResult; import com.mogo.och.bus.constant.BusConst; @@ -66,7 +66,7 @@ import record_cache.RecordPanelOuterClass; * * @author tongchenfei */ -public abstract class BaseBusTabFragment> extends MvpFragment implements IMogoMapListener, IMoGoAutopilotRecordListener { +public abstract class BaseBusTabFragment> extends MvpFragment implements IMogoMapListener, IMoGoAutopilotRecordListener { private static final String TAG = "BaseOchFragment"; @@ -157,19 +157,9 @@ public abstract class BaseBusTabFragment } }); - if (DebugConfig.isDebug()) { - mTrafficDataView.setLongClickable(true); - mTrafficDataView.setOnLongClickListener(v -> { - CallerLogger.INSTANCE.d(M_BUS + TAG, "长按显示状态工具栏"); - Intent intent = new Intent(); - intent.putExtra("oper", 52); - MogoApisHandler.getInstance().getApis().getIntentManagerApi().invoke("com.mogo.mock", intent); - return true; - }); - } initListener(); setAutopilotBtnStatus(CallerAutoPilotStatusListenerManager.INSTANCE.getAutoPilotStatusInfo().getState()); - ctvAutopilotStatus.setOnClickListener(new OnPreventFastClickListener(){ + ctvAutopilotStatus.setOnClickListener(new OnPreventFastClickListener() { @Override public void onClickImpl(View v) { @@ -220,7 +210,7 @@ public abstract class BaseBusTabFragment } mAICollectBtn = findViewById(R.id.module_mogo_och_ai_collet_rl); - if (mAICollectBtn != null){ + if (mAICollectBtn != null) { CallerDevaToolsManager.INSTANCE.initAiCollect(mAICollectBtn); } } @@ -235,7 +225,7 @@ public abstract class BaseBusTabFragment protected abstract void onArriveStation(); - private void updateSwitchMapIcon(){ + private void updateSwitchMapIcon() { if (MogoMapUIController.getInstance().getCurrentMapVisualAngle().isLongSight()) { mSwitchMapModeImage.setImageResource(R.drawable.bus_switch_map_long); } else if (MogoMapUIController.getInstance().getCurrentMapVisualAngle().isMediumSight()) { @@ -295,14 +285,15 @@ public abstract class BaseBusTabFragment /** * 设置进站按钮状态 + * * @param isClickable */ - public void setArrivedClikable(boolean isClickable){ + public void setArrivedClikable(boolean isClickable) { getActivity().runOnUiThread(() -> { tvArrived.setEnabled(isClickable); - if (isClickable){ + if (isClickable) { tvArrived.setTextColor(getResources().getColor(R.color.bus_white)); - }else { + } else { tvArrived.setTextColor(getResources().getColor(R.color.bus_arrived_btn_un_clickable_color)); } }); @@ -317,9 +308,10 @@ public abstract class BaseBusTabFragment }); } - public void playDI(){ + public void playDI() { SoundPoolHelper.getSoundPoolHelper().playSoundWithRedId(getContext(), R.raw.bus_di); } + /** * 改变自动驾驶状态 * @@ -347,13 +339,13 @@ public abstract class BaseBusTabFragment ctvAutopilotStatus.setClickable(true); if (IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE == autopilotStatus) {//1可用 ctvAutopilotStatus.setSelected(false); - }else if (IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING == autopilotStatus){ + } else if (IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING == autopilotStatus) { ctvAutopilotStatus.setSelected(true); } } } - public void updateAutopilotStatus(int autopilotStatus){ + public void updateAutopilotStatus(int autopilotStatus) { if (IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING == autopilotStatus) {//2 running ctvAutopilotStatusIv.setImageResource(R.drawable.bus_right_autopilot_icon); @@ -361,7 +353,7 @@ public abstract class BaseBusTabFragment ctvAutopilotStatusTv.setText(getResources().getString(R.string.bus_loading_autopilot_success_tv)); ctvAutopilotStatus.setSelected(false); ctvAutopilotStatus.setClickable(false); - }else { + } else { ctvAutopilotStatusIv.setImageResource(R.drawable.bus_wrong_autopilot_icon); ctvAutopilotStatusTv.setTextColor(getResources().getColor(R.color.bus_autopilot_text_color_normal)); ctvAutopilotStatusTv.setText(getResources().getString(R.string.bus_loading_autopilot_failure_tv)); @@ -373,7 +365,7 @@ public abstract class BaseBusTabFragment public void run() { setAutopilotBtnStatus(autopilotStatus); } - },1000); + }, 1000); } private void changeAutopilotBtnView(int autopilotStatus, boolean isAnimateRunning) { @@ -461,19 +453,20 @@ public abstract class BaseBusTabFragment } - private void startingAutoApilotCountDown(){ + private void startingAutoApilotCountDown() { //10s 若自动驾驶没有开启,则结束动画 UiThreadHandler.postDelayed(new Runnable() { @Override public void run() { //未启动成功做处理 - if (isAnimateRunning){// 只判断动画是否在进行,根据自动驾驶当前状态去设置自动驾驶状态 + if (isAnimateRunning) {// 只判断动画是否在进行,根据自动驾驶当前状态去设置自动驾驶状态 stopAutopilotAnimation(); updateAutopilotStatus(CallerAutoPilotStatusListenerManager.INSTANCE.getAutoPilotStatusInfo().getState()); } } - },TIMER_START_AUTOPILOT_INTERVAL); + }, TIMER_START_AUTOPILOT_INTERVAL); } + /** * 停止自动驾驶中间动画 */ @@ -493,7 +486,7 @@ public abstract class BaseBusTabFragment */ public void updateSpeedView(float newSpeed) { int speed = (int) (Math.abs(newSpeed) * 3.6F); // 倒车时工控机反馈定位信息中speed为负值 - if (mTrafficDataView != null){ + if (mTrafficDataView != null) { mTrafficDataView.updateSpeedWithValue(speed); } } @@ -528,7 +521,7 @@ public abstract class BaseBusTabFragment /** * Bus调试信息:线路、轨迹等信息 - * + *

* START */ private View busTestBar; diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BusFragment.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BusFragment.java index 4ca1a90fa8..1e9e003dfe 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BusFragment.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BusFragment.java @@ -120,8 +120,10 @@ public class BusFragment extends BaseBusTabFragment @Subscribe(threadMode = ThreadMode.MAIN) public void changeOverview(EventLogout eventLogout){ - CallerLogger.INSTANCE.d(M_BUS + TAG,"changeOverview Event消息去登出"); - mPresenter.logout(); + if (eventLogout.getMessgae() == EventLogout.LOGOUT_TYPE){ + CallerLogger.INSTANCE.d(M_BUS + TAG,"changeOverview Event消息去登出"); + mPresenter.logout(); + } } @Override diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/model/BusLineModel.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/model/BusLineModel.java index c1804854c0..a0323b8b0f 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/model/BusLineModel.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/model/BusLineModel.java @@ -6,6 +6,7 @@ import com.mogo.commons.AbsMogoApplication; import com.mogo.eagle.core.utilcode.util.NetworkUtils; import com.mogo.eagle.core.utilcode.util.SharedPrefs; import com.mogo.eagle.core.utilcode.util.ToastUtils; +import com.mogo.och.bus.R; import com.mogo.och.bus.bean.BusQueryLineTaskResponse; import com.mogo.och.bus.bean.BusQueryLinesResponse; import com.mogo.och.bus.bean.BusRoutesResponse; @@ -56,6 +57,15 @@ public class BusLineModel { } } + @Override + public void onError() { + if (!NetworkUtils.isConnected(mContext)) { + ToastUtils.showShort(mContext.getString(R.string.network_error_tip)); + } else { + ToastUtils.showShort(mContext.getString(R.string.request_error_tip)); + } + } + @Override public void onFail(int code, String failMsg) { if (!NetworkUtils.isConnected(mContext)) { @@ -86,6 +96,15 @@ public class BusLineModel { } } + @Override + public void onError() { + if (!NetworkUtils.isConnected(mContext)) { + ToastUtils.showShort(mContext.getString(R.string.network_error_tip)); + } else { + ToastUtils.showShort(mContext.getString(R.string.request_error_tip)); + } + } + @Override public void onFail(int code, String failMsg) { if (!NetworkUtils.isConnected(mContext)) { @@ -107,6 +126,15 @@ public class BusLineModel { } } + @Override + public void onError() { + if (!NetworkUtils.isConnected(mContext)) { + ToastUtils.showShort(mContext.getString(R.string.network_error_tip)); + } else { + ToastUtils.showShort(mContext.getString(R.string.request_error_tip)); + } + } + @Override public void onFail(int code, String failMsg) { if (!NetworkUtils.isConnected(mContext)) { diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/model/BusOrderModel.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/model/BusOrderModel.java index cc1a76cebf..f034d76c6b 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/model/BusOrderModel.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/model/BusOrderModel.java @@ -6,35 +6,37 @@ import static com.mogo.och.bus.constant.BusConst.STATION_STATUS_ARRIVING; import static com.mogo.och.bus.constant.BusConst.STATION_STATUS_STOPPED; import android.content.Context; -import android.location.Location; import android.os.Handler; import android.os.Message; import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import com.alibaba.android.arouter.launcher.ARouter; import com.amap.api.maps.model.LatLng; import com.elegant.network.utils.GsonUtil; +import com.mogo.aicloud.services.socket.IMogoOnMessageListener; import com.mogo.cloud.commons.utils.CoordinateUtils; import com.mogo.commons.AbsMogoApplication; -import com.mogo.commons.debug.DebugConfig; -import com.mogo.commons.voice.AIAssist; +import com.mogo.commons.module.status.IMogoStatusChangedListener; +import com.mogo.commons.module.status.MogoStatusManager; +import com.mogo.commons.module.status.StatusDescriptor; import com.mogo.eagle.core.data.BaseData; import com.mogo.eagle.core.data.autopilot.AutopilotControlParameters; import com.mogo.eagle.core.data.config.FunctionBuildConfig; +import com.mogo.eagle.core.data.map.MogoLocation; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotPlanningListener; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; +import com.mogo.eagle.core.function.api.map.listener.IMoGoMapLocationListener; import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotManager; import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager; import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotPlanningListenerManager; +import com.mogo.eagle.core.function.call.map.CallerMapLocationListenerManager; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.util.NetworkUtils; import com.mogo.eagle.core.utilcode.util.ToastUtils; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; -import com.mogo.map.navi.IMogoCarLocationChangedListener2; -import com.mogo.module.common.MogoApisHandler; import com.mogo.och.bus.R; -import com.mogo.och.bus.bean.BusQueryWriteOffPassengersResponse; import com.mogo.och.bus.bean.BusRoutePlanningUpdateReqBean; import com.mogo.och.bus.bean.BusRoutesResponse; import com.mogo.och.bus.bean.BusRoutesResult; @@ -51,20 +53,22 @@ import com.mogo.och.bus.presenter.BusModelLoopManager; import com.mogo.och.bus.util.BusAnalyticsManager; import com.mogo.och.bus.util.BusSendTripInfoManager; import com.mogo.och.bus.util.BusTrajectoryManager; +import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager; +import com.mogo.och.common.module.biz.common.socketmessage.data.OCHOperationalMessage; import com.mogo.och.common.module.biz.constant.OchCommonConst; import com.mogo.och.common.module.biz.network.OchCommonServiceCallback; import com.mogo.och.common.module.biz.provider.LoginService; import com.mogo.och.common.module.callback.OchAdasStartFailureCallback; +import com.mogo.och.common.module.manager.AbnormalFactorsLoopManager; import com.mogo.och.common.module.manager.OCHAdasAbilityManager; import com.mogo.och.common.module.utils.CoordinateCalculateRouteUtil; import com.mogo.och.common.module.utils.DateTimeUtil; import com.mogo.och.common.module.utils.NumberFormatUtil; import com.mogo.och.common.module.utils.PinYinUtil; -import com.mogo.och.common.module.utils.SoundPoolHelper; import com.mogo.och.common.module.utils.ToastUtilsOch; import com.mogo.och.common.module.voice.VoiceNotice; -import com.mogo.service.statusmanager.IMogoStatusChangedListener; -import com.mogo.service.statusmanager.StatusDescriptor; + +import org.jetbrains.annotations.NotNull; import java.io.IOException; import java.util.ArrayList; @@ -78,7 +82,7 @@ import mogo.telematics.pad.MessagePad; /** * @author congtaowang * @since 2021/3/23 - * + *

* 小巴订单管理 */ public class BusOrderModel { @@ -117,12 +121,10 @@ public class BusOrderModel { private LoginService loginService; - private long prePassengerWriteOffTime = 0; //记录最后查询到乘客核销的时间 - private final Handler handler = new Handler(new Handler.Callback() { @Override public boolean handleMessage(Message msg) { - if ( msg.what == MSG_QUERY_BUS_STATION ) { + if (msg.what == MSG_QUERY_BUS_STATION) { queryBusRoutes(); return true; } @@ -131,9 +133,9 @@ public class BusOrderModel { }); public static BusOrderModel getInstance() { - if ( sInstance == null ) { - synchronized ( BusOrderModel.class ) { - if ( sInstance == null ) { + if (sInstance == null) { + synchronized (BusOrderModel.class) { + if (sInstance == null) { sInstance = new BusOrderModel(); } } @@ -148,24 +150,26 @@ public class BusOrderModel { public void init() { mContext = AbsMogoApplication.getApp(); loginService = (LoginService) ARouter.getInstance().build(OchCommonConst.LOGINSERVICE).navigation(); - // 2021/10/20 衡阳小巴业务,使用LenovoPad时需要此app自己获取坐标并上传 - String productFlavor = DebugConfig.getProductFlavor(); - if (productFlavor != null && productFlavor.contains("fPadLenovoOchBus")) { - MogoApisHandler.getInstance() - .getApis() - .getRegisterCenterApi() - .registerCarLocationChangedListener(TAG, mCarLocationChangedListener2); - MogoApisHandler.getInstance() - .getApis() - .getStatusManagerApi() - .registerStatusChangedListener( TAG, StatusDescriptor.VR_MODE, mMogoStatusChangedListener ); + // 定位监听 + CallerMapLocationListenerManager.INSTANCE.addListener(TAG, mMapLocationListener, false); - //自动驾驶路线规划接口 - CallerAutopilotPlanningListenerManager.INSTANCE.addListener(TAG, moGoAutopilotPlanningListener); + MogoStatusManager.getInstance().registerStatusChangedListener(TAG, StatusDescriptor.VR_MODE, mMogoStatusChangedListener); - //开启自驾后 异常信息返回 - OCHAdasAbilityManager.getInstance().setAdasStartFailureCallback(mAdasStartFailureListener); - } + //自动驾驶路线规划接口 + CallerAutopilotPlanningListenerManager.INSTANCE.addListener(TAG, moGoAutopilotPlanningListener); + + //开启自驾后 异常信息返回 + OCHAdasAbilityManager.getInstance().setAdasStartFailureCallback(mAdasStartFailureListener); + + OCHSocketMessageManager.INSTANCE.registerSocketMessageListener(//监听运营消息 + OCHSocketMessageManager.INSTANCE.getMsgMonitorType(), + mMogoOnMessageListener); + + OCHSocketMessageManager.INSTANCE.registerSocketMessageListener(//监听核销乘客 + OCHSocketMessageManager.INSTANCE.getMsgWriteOffPassengerType(), + mWriteOffPassengeOnMessageListener); + + AbnormalFactorsLoopManager.INSTANCE.startLoopAbnormalFactors(mContext); //2022.1.28 // 调用Disposable.dispose() 时候会出现InterruptedException 导致出现崩溃 @@ -176,35 +180,72 @@ public class BusOrderModel { public void accept(Throwable e) { if (e instanceof UndeliverableException) { e = e.getCause(); - CallerLogger.INSTANCE.d(M_BUS + TAG,"UndeliverableException"); + CallerLogger.INSTANCE.d(M_BUS + TAG, "UndeliverableException"); } if ((e instanceof IOException)) {// // fine, irrelevant network problem or API that throws on cancellation - CallerLogger.INSTANCE.d(M_BUS + TAG,"IOException"); + CallerLogger.INSTANCE.d(M_BUS + TAG, "IOException"); return; } if (e instanceof InterruptedException) { // fine, some blocking code was interrupted by a dispose call - CallerLogger.INSTANCE.d(M_BUS + TAG,"InterruptedException"); + CallerLogger.INSTANCE.d(M_BUS + TAG, "InterruptedException"); return; } if ((e instanceof NullPointerException) || (e instanceof IllegalArgumentException)) { // that's likely a bug in the application - CallerLogger.INSTANCE.d(M_BUS + TAG,"NullPointerException or IllegalArgumentException"); + CallerLogger.INSTANCE.d(M_BUS + TAG, "NullPointerException or IllegalArgumentException"); Thread.currentThread().getUncaughtExceptionHandler().uncaughtException(Thread.currentThread(), e); return; } if (e instanceof IllegalStateException) { // that's a bug in RxJava or in a custom operator - CallerLogger.INSTANCE.d(M_BUS + TAG,"IllegalStateException"); + CallerLogger.INSTANCE.d(M_BUS + TAG, "IllegalStateException"); Thread.currentThread().getUncaughtExceptionHandler().uncaughtException(Thread.currentThread(), e); return; } - CallerLogger.INSTANCE.d(M_BUS + TAG,"Undeliverable exception"); + CallerLogger.INSTANCE.d(M_BUS + TAG, "Undeliverable exception"); } }); } + private final IMogoOnMessageListener mMogoOnMessageListener = + new IMogoOnMessageListener() { + @Override + public Class target() { + return OCHOperationalMessage.class; + } + + @Override + public void onMsgReceived(OCHOperationalMessage obj) { + if (obj == null){ + CallerLogger.INSTANCE.d(M_BUS + TAG, "onMsgReceived = null"); + return; + } + CallerLogger.INSTANCE.i(M_BUS + TAG,"onMsgReceived = "+obj.getMessage()); + OCHSocketMessageManager.INSTANCE.pushAppOperationalMsgBox(obj.getPushTimeStamp(), + obj.getMessage()); + } + }; + + private final IMogoOnMessageListener mWriteOffPassengeOnMessageListener = + new IMogoOnMessageListener() { + @Override + public Class target() { + return WriteOffPassenger.class; + } + + @Override + public void onMsgReceived(WriteOffPassenger passenger) { + //进行播报 + CallerLogger.INSTANCE.i(M_BUS + TAG,"passenger = "+ GsonUtil.jsonFromObject(passenger)); + if (passenger != null && passenger.passengerSize == 0) return; + if (mPassengerCallback != null){ + mPassengerCallback.playPassenger(passenger); + } + } + }; + public void setAdasStatusCallback(IBusADASStatusCallback callback){ this.mADASStatusCallback = callback; } @@ -213,11 +254,11 @@ public class BusOrderModel { this.refreshBusStationsCallback = callback; } - public void setPassengerCallback(IPassengerCallback callback){ + public void setPassengerCallback(IPassengerCallback callback) { this.mPassengerCallback = callback; } - public void setSlidePanelHideCallback(ISlidePannelHideCallback callback){ + public void setSlidePanelHideCallback(ISlidePannelHideCallback callback) { this.slidePanelHideCallback = callback; } @@ -234,9 +275,9 @@ public class BusOrderModel { @Override public void onAutopilotRotting(MessagePad.GlobalPathResp routeList) { - if (null != routeList && routeList.getWayPointsList().size() > 0){ + if (null != routeList && routeList.getWayPointsList().size() > 0) { points.clear(); - points.addAll(coordinateConverterWgsToGcjList(mContext,routeList.getWayPointsList())); + points.addAll(coordinateConverterWgsToGcjList(mContext, routeList.getWayPointsList())); updateOrderRoute(); } } @@ -259,12 +300,12 @@ public class BusOrderModel { * 上报订单全路径规划数据 */ public void updateOrderRoute() { - if (!isGoingToNextStation || backgroundCurrentStationIndex+1 >= stationList.size() || points.size() == 0){ + if (!isGoingToNextStation || backgroundCurrentStationIndex + 1 >= stationList.size() || points.size() == 0) { return; } - BusStationBean currentStation = stationList.get( backgroundCurrentStationIndex); - BusStationBean nextStation = stationList.get( backgroundCurrentStationIndex +1); + BusStationBean currentStation = stationList.get(backgroundCurrentStationIndex); + BusStationBean nextStation = stationList.get(backgroundCurrentStationIndex + 1); BusServiceManager.updateOrderRoute(mContext, currentLineId, currentStation.getSiteId() , nextStation.getSiteId(), points, new OchCommonServiceCallback() { @@ -275,39 +316,40 @@ public class BusOrderModel { @Override public void onFail(int code, String failMsg) { - if (isGoingToNextStation){//重试 + if (isGoingToNextStation) {//重试 updateOrderRoute(); } } }); } - public void debugUpdateOrderRoute(List list){ + public void debugUpdateOrderRoute(List list) { points.clear(); - points.addAll(coordinateConverterWgsToGcjList(mContext,list)); + points.addAll(coordinateConverterWgsToGcjList(mContext, list)); updateOrderRoute(); } - public void release(){ + public void release() { startOrStopOrderLoop(false); - startOrStopQueryPassengerWriteOff(false); - MogoApisHandler.getInstance() - .getApis() - .getStatusManagerApi() - .unregisterStatusChangedListener(TAG, StatusDescriptor.VR_MODE, mMogoStatusChangedListener); + //startOrStopQueryPassengerWriteOff(false); + MogoStatusManager.getInstance().unregisterStatusChangedListener(TAG, StatusDescriptor.VR_MODE, mMogoStatusChangedListener); - // 注销到达起始站围栏监听 - MogoApisHandler.getInstance() - .getApis() - .getRegisterCenterApi() - .unregisterCarLocationChangedListener(TAG, mCarLocationChangedListener2); + // 注销定位监听 + CallerMapLocationListenerManager.INSTANCE.removeListener(TAG,false); //自动驾驶路线规划接口 CallerAutopilotPlanningListenerManager.INSTANCE.removeListener(moGoAutopilotPlanningListener); loginService = null; OCHAdasAbilityManager.getInstance().setAdasStartFailureCallback(null); + + OCHSocketMessageManager.INSTANCE.releaseSocketMessageListener( + OCHSocketMessageManager.INSTANCE.getMsgMonitorType()); + OCHSocketMessageManager.INSTANCE.releaseSocketMessageListener( + OCHSocketMessageManager.INSTANCE.getMsgWriteOffPassengerType()); + + AbnormalFactorsLoopManager.INSTANCE.stopLoopAbnormalFactors(); } private Object readResolve() { @@ -315,7 +357,7 @@ public class BusOrderModel { return sInstance; } - private IMogoStatusChangedListener mMogoStatusChangedListener = new IMogoStatusChangedListener() { + private final IMogoStatusChangedListener mMogoStatusChangedListener = new IMogoStatusChangedListener() { // VR mode变更回调 @Override public void onStatusChanged(StatusDescriptor descriptor, boolean isTrue) { @@ -329,8 +371,8 @@ public class BusOrderModel { private final OchAdasStartFailureCallback mAdasStartFailureListener = new OchAdasStartFailureCallback() { @Override - public void onStartAutopilotFailure(@NonNull String startFailedMessage) { - BusAnalyticsManager.getInstance().triggerStartAutopilotFailureEventByAdas(startFailedMessage); + public void onStartAutopilotFailure(@NotNull String startFailedCode, @NonNull String startFailedMessage) { + BusAnalyticsManager.getInstance().triggerStartAutopilotFailureEventByAdas(startFailedCode, startFailedMessage); if (mADASStatusCallback != null && !FunctionBuildConfig.isDemoMode){ CallerLogger.INSTANCE.e( M_BUS + TAG, "mAdasStartFailureListener = "+startFailedMessage ); mADASStatusCallback.onStartAdasFailure(); @@ -339,11 +381,10 @@ public class BusOrderModel { }; // 自车定位 - private final IMogoCarLocationChangedListener2 mCarLocationChangedListener2 = new IMogoCarLocationChangedListener2() { - + private final IMoGoMapLocationListener mMapLocationListener = new IMoGoMapLocationListener() { @Override - public void onCarLocationChanged2( Location location ) { -// CallerLogger.INSTANCE.d(M_BUS + TAG,"location = "+location.getLongitude()+","+location.getLatitude()); + public void onLocationChanged(@Nullable MogoLocation location, int from, boolean isGps) { + if (null == location) return; mLongitude = location.getLongitude(); mLatitude = location.getLatitude(); if (mControllerStatusCallback != null) { @@ -351,30 +392,30 @@ public class BusOrderModel { } //是否到站的围栏判断 离站状态并且自动驾驶还未触发到站 - if (isGoingToNextStation && !isArrivedStation){ + if (isGoingToNextStation && !isArrivedStation) { judgeArrivedStation(location); } } }; //根据围栏判断,是否到达站点 - private void judgeArrivedStation(Location location) { + private void judgeArrivedStation(MogoLocation location) { - if (backgroundCurrentStationIndex +1 > stationList.size() - 1 ){ - CallerLogger.INSTANCE.e( M_BUS + TAG, "到站数组越界" ); + if (backgroundCurrentStationIndex + 1 > stationList.size() - 1) { + CallerLogger.INSTANCE.e(M_BUS + TAG, "到站数组越界"); return; } - BusStationBean upcomingStation = stationList.get( backgroundCurrentStationIndex +1); + BusStationBean upcomingStation = stationList.get(backgroundCurrentStationIndex + 1); double startLon = upcomingStation.getGcjLon(); double startLat = upcomingStation.getGcjLat(); double distance = CoordinateUtils.calculateLineDistance( startLon, startLat, - location.getLongitude(), location.getLatitude() ); + location.getLongitude(), location.getLatitude()); - if ( distance <= BusConst.ARRIVE_AT_END_STATION_DISTANCE ) { - CallerLogger.INSTANCE.d(M_BUS + TAG,"行程日志-judgeArrivedStation() distance = " + distance - +" to " + upcomingStation.getName()); + if (distance <= BusConst.ARRIVE_AT_END_STATION_DISTANCE) { + CallerLogger.INSTANCE.d(M_BUS + TAG, "行程日志-judgeArrivedStation() distance = " + distance + + " to " + upcomingStation.getName()); onArriveAt(null); //无自动驾驶到站信息传null return; } @@ -388,28 +429,42 @@ public class BusOrderModel { BusServiceManager.queryBusRoutes(mContext, new OchCommonServiceCallback() { @Override public void onSuccess(BusRoutesResponse data) { - if ( data == null + if (data == null || data.getResult() == null || data.getResult().getSites() == null - || data.getResult().getSites().isEmpty() ) { + || data.getResult().getSites().isEmpty()) { //当为空时,显示无绑定路线图 - CallerLogger.INSTANCE.d(M_BUS + TAG, "获取到小巴路线数据:空 " ); - if (refreshBusStationsCallback != null){ + CallerLogger.INSTANCE.d(M_BUS + TAG, "获取到小巴路线数据:空 "); + if (refreshBusStationsCallback != null) { refreshBusStationsCallback.updateEmptyUi(); } clearAutopilotControlParameters(); closeBeautificationMode(); clearStartAutopilotTag(); + removeTipRunnables(); return; } - CallerLogger.INSTANCE.d(M_BUS + TAG, "获取到小巴路线数据: " + data ); - updateBusStatus( data.getResult()); + CallerLogger.INSTANCE.d(M_BUS + TAG, "获取到小巴路线数据: " + data); + updateBusStatus(data.getResult()); } + + + @Override + public void onError() { + if (!NetworkUtils.isConnected(mContext)) { + ToastUtils.showShort(mContext.getString(R.string.network_error_tip)); + } else { + ToastUtils.showShort(mContext.getString(R.string.request_error_tip)); + } + } + @Override public void onFail(int code, String failMsg) { - // 重复请求小巴路线,直至成功 - //改为任务,为空不再去一直取 -// queryBusStationDelay(); + if (!NetworkUtils.isConnected(mContext)) { + ToastUtils.showShort("网络异常,请稍后重试"); + }else { + ToastUtils.showShort(failMsg); + } } }); @@ -417,26 +472,27 @@ public class BusOrderModel { /** * 更新正在运行的任务UI + * * @param stations */ private void updateBusTaskStatus(List stations) { int arrivingOrArrivedStationIndex = 0;//已经到站或者即将到站的索引呢 - for (int i =0 ; i< stations.size(); i++){ + for (int i = 0; i < stations.size(); i++) { BusStationBean station = stations.get(i); - if (i == 0){ // 首发站 显示在最上面 + if (i == 0) { // 首发站 显示在最上面 if (station.getDrivingStatus() == STATION_STATUS_STOPPED - && !station.isLeaving()){ //到达第一站 + && !station.isLeaving()) { //到达第一站 arrivingOrArrivedStationIndex = i; break; } - }else { - BusStationBean preStation = stations.get(i-1); + } else { + BusStationBean preStation = stations.get(i - 1); if ((station.getDrivingStatus() == STATION_STATUS_STOPPED && !station.isLeaving()) || (station.getDrivingStatus() == STATION_STATUS_ARRIVING - && preStation.isLeaving())){ + && preStation.isLeaving())) { //到站未离开 | 即将到站 显示在最中间 arrivingOrArrivedStationIndex = i; break; @@ -452,16 +508,16 @@ public class BusOrderModel { if (arrivingOrArrivedStationIndex == 0 || arrivingOrArrivedStation.getDrivingStatus() == STATION_STATUS_STOPPED - && !arrivingOrArrivedStation.isLeaving()){ - if (refreshBusStationsCallback != null){ - refreshBusStationsCallback.updateBusTaskStatus(busRoutesResult.getName(),lineTime, - stationList,arrivingOrArrivedStationIndex,true); + && !arrivingOrArrivedStation.isLeaving()) { + if (refreshBusStationsCallback != null) { + refreshBusStationsCallback.updateBusTaskStatus(busRoutesResult.getName(), lineTime, + stationList, arrivingOrArrivedStationIndex, true); } clearAutopilotControlParameters(); - }else { - if (refreshBusStationsCallback != null){ - refreshBusStationsCallback.updateBusTaskStatus(busRoutesResult.getName(),lineTime, - stationList,arrivingOrArrivedStationIndex,false); + } else { + if (refreshBusStationsCallback != null) { + refreshBusStationsCallback.updateBusTaskStatus(busRoutesResult.getName(), lineTime, + stationList, arrivingOrArrivedStationIndex, false); } updateAutopilotControlParameters(); } @@ -471,25 +527,39 @@ public class BusOrderModel { * 重置路线站点状态--结束路线,当前路线恢复到始发站 */ public void abortTask() { - CallerLogger.INSTANCE.d( M_BUS + TAG, "结束当前路线abortTask"); + CallerLogger.INSTANCE.d(M_BUS + TAG, "结束当前路线abortTask"); BusServiceManager.abortTask(mContext, currentTaskId , new OchCommonServiceCallback() { - @Override - public void onSuccess(BaseData o) { - CallerLogger.INSTANCE.d(M_BUS + TAG, "abortTask success: " + o); - if (o.code == 0){ // 重置成功 - endOrAbortTaskSuccess(); - clearBusStationDatas(); - queryBusRoutes(); - startOrStopQueryPassengerWriteOff(false); - } - } + @Override + public void onSuccess(BaseData o) { + CallerLogger.INSTANCE.d(M_BUS + TAG, "abortTask success: " + o); + if (o.code == 0) { // 重置成功 + endOrAbortTaskSuccess(); + clearBusStationDatas(); + queryBusRoutes(); + removeTipRunnables(); + // startOrStopQueryPassengerWriteOff(false); + } + } - @Override - public void onFail(int code, String failMsg) { - ToastUtils.showShort(failMsg); - } - }); + @Override + public void onError() { + if (!NetworkUtils.isConnected(mContext)) { + ToastUtils.showShort(mContext.getString(R.string.network_error_tip)); + } else { + ToastUtils.showShort(mContext.getString(R.string.request_error_tip)); + } + } + + @Override + public void onFail(int code, String failMsg) { + if (!NetworkUtils.isConnected(mContext)) { + ToastUtils.showShort("网络异常,请稍后重试"); + }else { + ToastUtils.showShort(failMsg); + } + } + }); } @@ -501,12 +571,12 @@ public class BusOrderModel { isGoingToNextStation = false; backgroundCurrentStationIndex = 0; - if (busRoutesResult != null){ + if (busRoutesResult != null) { BusSendTripInfoManager.INSTANCE.sendBusTripInfo(BusSendTripInfoManager.END_TRIP , busRoutesResult.getName() - ,"" - ,"" - ,false); + , "" + , "" + , false); } } @@ -515,23 +585,23 @@ public class BusOrderModel { * 服务端返回的OchBusRoutesResult逻辑, 离开站为当前站, 到达下一站后才会将下一站置为当前站, * 车机端展示是离开当前站,下一站设置为当前站, 所以服务端数据回来要做处理,不能直接渲染 */ - private void leaveStationSuccess(int leaveIndex,String leaveStation,String nextStation) { + private void leaveStationSuccess(int leaveIndex, String leaveStation, String nextStation) { onStartAutopilot(leaveIndex); leaveTTSTips(nextStation); - if (busRoutesResult != null){ + if (busRoutesResult != null) { boolean isLastStop = false; - if (leaveIndex + 1 == stationList.size() -1){ + if (leaveIndex + 1 == stationList.size() - 1) { isLastStop = true; } //给bus外屏发送 BusSendTripInfoManager.INSTANCE.sendBusTripInfo(BusSendTripInfoManager.LEAVE_STATION , busRoutesResult.getName() - ,leaveStation - ,nextStation - ,isLastStop); + , leaveStation + , nextStation + , isLastStop); } } @@ -539,27 +609,28 @@ public class BusOrderModel { //开启自动驾驶 2.10.0: 如果自动驾驶状态下开启, 非自动驾驶状态下不开启,需手动点击自动驾驶按钮开启 isGoingToNextStation = true; if (CallerAutoPilotStatusListenerManager.INSTANCE.getAutoPilotStatusInfo().getState() - == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING){ - startAutopilot(false,leaveIndex); - }else { + == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING) { + startAutopilot(false, leaveIndex); + } else { firstStartAutopilot = 0; } } /** * 开启自动驾驶 + * * @param isRestart */ - private void startAutopilot(boolean isRestart,int leaveIndex) { + private void startAutopilot(boolean isRestart, int leaveIndex) { - if (!FunctionBuildConfig.isDemoMode && !OCHAdasAbilityManager.getInstance().getAutopilotAbilityStatus()){ + if (!FunctionBuildConfig.isDemoMode && !OCHAdasAbilityManager.getInstance().getAutopilotAbilityStatus()) { ToastUtils.showLong(OCHAdasAbilityManager.getInstance().getAutopilotUnAbilityReason() + ", 请稍候重试"); triggerUnableStartAPReasonEvent(); return; } - firstStartAutopilot ++; + firstStartAutopilot++; triggerStartServiceEvent(isRestart, false); @@ -571,67 +642,15 @@ public class BusOrderModel { CallerAutoPilotManager.INSTANCE.startAutoPilot(parameters); - CallerLogger.INSTANCE.d( M_BUS + TAG, "行程日志-开启自动驾驶====" + GsonUtil.jsonFromObject(parameters) - +" startLatLon="+parameters.startName+",endLatLon="+parameters.endName + - "isRestart = " + isRestart); + CallerLogger.INSTANCE.d(M_BUS + TAG, "行程日志-开启自动驾驶====" + GsonUtil.jsonFromObject(parameters) + + " startLatLon=" + parameters.startName + ",endLatLon=" + parameters.endName + + "isRestart = " + isRestart); if (mControllerStatusCallback != null) { mControllerStatusCallback.startOpenAutopilot(); } } - /** - * 到站查询核销乘客 - */ - public void queryPassengerWriteOff(){ - if ( backgroundCurrentStationIndex > stationList.size() - 1 ) { //到站短时间内调用多次 - CallerLogger.INSTANCE.e( M_BUS + TAG, "数组越界" ); - return; - } - BusServiceManager.queryStationWriteOffPassengers(mContext, - currentTaskId, - stationList.get(backgroundCurrentStationIndex).getSiteId(), - prePassengerWriteOffTime, - new OchCommonServiceCallback(){ - - @Override - public void onSuccess(BusQueryWriteOffPassengersResponse o) { - if (o.code !=0 || o.data == null || o.data.isEmpty()){ - return; - } - List passengers = o.data; - playWriteOffPassengersMsg(passengers); - } - - @Override - public void onFail(int code, String failMsg) { - - } - }); - } - - private void playWriteOffPassengersMsg(List passengers) { - for (int i=0; i< passengers.size();i++){ - WriteOffPassenger passenger = passengers.get(i); - CallerLogger.INSTANCE.e( M_BUS + TAG, "size = " + passenger.passengerSize+ - " time = "+passenger.writeOffTime); - prePassengerWriteOffTime = passenger.writeOffTime; - if (mPassengerCallback != null){ - mPassengerCallback.playPassenger(passenger); - } - } - } - - private void startOrStopQueryPassengerWriteOff(boolean isStart){ - if (isStart){ - BusModelLoopManager.getInstance().startQueryPassengerWriteOffLoop(); - }else { - prePassengerWriteOffTime = 0; - SoundPoolHelper.getSoundPoolHelper().releaseSoundPool(); - BusModelLoopManager.getInstance().stopQueryPassengerWriteOffLoop(); - } - } - /** * 到站后重置站点状态 */ @@ -643,32 +662,42 @@ public class BusOrderModel { int arrivedStationIndex = backgroundCurrentStationIndex + 1; String arriveStation = stationList.get(arrivedStationIndex).getName(); String departureStopName = stationList.get(backgroundCurrentStationIndex).getName(); - CallerLogger.INSTANCE.d(M_BUS + TAG,"arriveSiteStation-currentStationIndex = "+ arrivedStationIndex); + CallerLogger.INSTANCE.d(M_BUS + TAG, "arriveSiteStation-currentStationIndex = " + arrivedStationIndex); - BusServiceManager.arriveSiteStation(mContext , + BusServiceManager.arriveSiteStation(mContext, stationList.get(arrivedStationIndex).getSeq(), stationList.get(arrivedStationIndex).getSiteId(), - currentTaskId , + currentTaskId, new OchCommonServiceCallback() { @Override public void onSuccess(BaseData o) { - CallerLogger.INSTANCE.d(M_BUS + TAG,"行程日志-arriveSiteStation success"); - queryBusRoutes(); - - arriveStationSuccess(arrivedStationIndex,departureStopName,arriveStation); - + CallerLogger.INSTANCE.d(M_BUS + TAG, "行程日志-arriveSiteStation success"); + if (o != null && o.code == 0){ + queryBusRoutes(); + isArrivedStation = true; + isGoingToNextStation = false; + arriveStationSuccess(arrivedStationIndex, departureStopName, arriveStation); + } //5s轮询核销乘客 - startOrStopQueryPassengerWriteOff(true); +// startOrStopQueryPassengerWriteOff(true); + } + + @Override + public void onError() { + if (!NetworkUtils.isConnected(mContext)) { + ToastUtils.showShort(mContext.getString(R.string.network_error_tip)); + } else { + ToastUtils.showShort(mContext.getString(R.string.request_error_tip)); + } } @Override public void onFail(int code, String failMsg) { - isArrivedStation = false; - isGoingToNextStation = true; - if (ToastUtilsOch.isCustomFastClick(5000)){ + if (ToastUtilsOch.isCustomFastClick(5000)) { if (!NetworkUtils.isConnected(mContext)) { ToastUtils.showShort("网络异常,请稍后重试"); - }else { + } else { + if (isArrivedStation) return; ToastUtils.showShort(failMsg); } } @@ -676,18 +705,18 @@ public class BusOrderModel { }); } - private void arriveStationSuccess(int arrivedStationIndex,String departureStopName,String arriveStation) { - if (busRoutesResult != null){ + private void arriveStationSuccess(int arrivedStationIndex, String departureStopName, String arriveStation) { + if (busRoutesResult != null) { boolean isLastStop = false; - if (arrivedStationIndex == busRoutesResult.getSites().size() - 1 ){ + if (arrivedStationIndex == busRoutesResult.getSites().size() - 1) { isLastStop = true; } //给bus外屏发送 BusSendTripInfoManager.INSTANCE.sendBusTripInfo(BusSendTripInfoManager.ARRIVE_STATION , busRoutesResult.getName() - ,departureStopName - ,arriveStation - ,isLastStop); + , departureStopName + , arriveStation + , isLastStop); } VoiceNotice.showNotice(String.format(mContext @@ -698,10 +727,10 @@ public class BusOrderModel { /** * 离站上报 */ - public void leaveStation(){ - CallerLogger.INSTANCE.d(M_BUS + TAG,"leaveStation-backgroundCurrentStationIndex = "+backgroundCurrentStationIndex); + public void leaveStation() { + CallerLogger.INSTANCE.d(M_BUS + TAG, "leaveStation-backgroundCurrentStationIndex = " + backgroundCurrentStationIndex); String nextStationName = ""; - if (backgroundCurrentStationIndex < stationList.size() - 1){ + if (backgroundCurrentStationIndex < stationList.size() - 1) { nextStationName = stationList.get(backgroundCurrentStationIndex + 1).getName(); } final String currentStationName = stationList.get(backgroundCurrentStationIndex).getName(); @@ -714,18 +743,29 @@ public class BusOrderModel { @Override public void onSuccess(BaseData o) { isArrivedStation = false; - CallerLogger.INSTANCE.d( M_BUS + TAG, "行程日志-离站成功开往下一站====" ); + CallerLogger.INSTANCE.d(M_BUS + TAG, "行程日志-离站成功开往下一站===="); //需要更改当前站和下一站的状态 然后渲染 - startOrStopQueryPassengerWriteOff(false); - queryBusRoutes(); - leaveStationSuccess(backgroundCurrentStationIndex,currentStationName,finalNextStationName); + //startOrStopQueryPassengerWriteOff(false); + queryBusRoutes(); + leaveStationSuccess(backgroundCurrentStationIndex, currentStationName, finalNextStationName); } + + + @Override + public void onError() { + if (!NetworkUtils.isConnected(mContext)) { + ToastUtils.showShort(mContext.getString(R.string.network_error_tip)); + } else { + ToastUtils.showShort(mContext.getString(R.string.request_error_tip)); + } + } + @Override public void onFail(int code, String failMsg) { if (!NetworkUtils.isConnected(mContext)) { ToastUtils.showShort("网络异常,请稍后重试"); - }else{ - ToastUtils.showShort("离站上报失败:"+failMsg); + } else { + ToastUtils.showShort("离站上报失败:" + failMsg); } } }); @@ -735,7 +775,7 @@ public class BusOrderModel { private void leaveTTSTips(String nextStation) { VoiceNotice.showNotice(String.format(mContext .getString(R.string.bus_leave_station_tip), - nextStation),DELAY_10S); + nextStation), DELAY_10S); } /** @@ -754,7 +794,7 @@ public class BusOrderModel { * 开启自动驾驶到下一站 */ public void autoDriveToNextStation() { - if ( backgroundCurrentStationIndex >= stationList.size() - 1 ) { + if (backgroundCurrentStationIndex >= stationList.size() - 1) { // 当前站是最后一站,结束当前行程 travelOver(); return; @@ -766,6 +806,7 @@ public class BusOrderModel { * 渲染站点信息 * 服务端返回的OchBusRoutesResult逻辑, 离开站为当前站, 到达下一站后才会将下一站置为当前站, * 车机端展示 三站: 中间为即将到到达或者刚到达的站 + * * @param result */ private void updateBusStatus(BusRoutesResult result) { @@ -775,20 +816,20 @@ public class BusOrderModel { currentTaskId = result.getTaskId(); currentLineId = result.getLineId(); stationList.clear(); - stationList.addAll( site ); + stationList.addAll(site); - for ( int i = 0; i < stationList.size(); i++ ) { - BusStationBean s = stationList.get( i ); + for (int i = 0; i < stationList.size(); i++) { + BusStationBean s = stationList.get(i); - CallerLogger.INSTANCE.d( M_BUS + "updateBusStationsStatus--", - "Index="+ i+" ,name = "+s.getName()+" ,"+s.isLeaving()+","+s.getDrivingStatus()); + CallerLogger.INSTANCE.d(M_BUS + "updateBusStationsStatus--", + "Index=" + i + " ,name = " + s.getName() + " ," + s.isLeaving() + "," + s.getDrivingStatus()); // 是否正在开往下一站 - if ( s.isLeaving()) { + if (s.isLeaving()) { isGoingToNextStation = true; } // 当前站点信息 - if (s.getDrivingStatus() == STATION_STATUS_STOPPED ) { + if (s.getDrivingStatus() == STATION_STATUS_STOPPED) { backgroundCurrentStationIndex = i; break; } @@ -796,40 +837,47 @@ public class BusOrderModel { if (backgroundCurrentStationIndex == 0 && stationList.get(0).getDrivingStatus() == STATION_STATUS_STOPPED - && !stationList.get(0).isLeaving()){ //默认是第一站到站查询 - if (busRoutesResult != null){ // 第一站到站也是行程开始的时候 + && !stationList.get(0).isLeaving()) { //默认是第一站到站查询 + if (busRoutesResult != null) { // 第一站到站也是行程开始的时候 BusSendTripInfoManager.INSTANCE.sendBusTripInfo(BusSendTripInfoManager.START_TRIP - ,busRoutesResult.getName(),"","",false); + , busRoutesResult.getName(), "", "", false); } - startOrStopQueryPassengerWriteOff(true); + + //任务选择后首发前给司机提示任务 + if (busRoutesResult != null){ + beforeTaskTips(); + } +// startOrStopQueryPassengerWriteOff(true); + }else { + removeTipRunnables(); } BusStationBean currentStation = stationList.get(backgroundCurrentStationIndex); - CallerLogger.INSTANCE.d( M_BUS + TAG, + CallerLogger.INSTANCE.d(M_BUS + TAG, "行程日志-STATION_STATUS_STOPPED-backgroundCurrentStationIndex=" - +backgroundCurrentStationIndex - +" isLeaving()="+currentStation.isLeaving()); + + backgroundCurrentStationIndex + + " isLeaving()=" + currentStation.isLeaving()); // 美化是否开始 if (FunctionBuildConfig.isDemoMode && (backgroundCurrentStationIndex >= 0 - && backgroundCurrentStationIndex <= stationList.size()-1)){//行驶过程中设置美化 - if (stationList.get(backgroundCurrentStationIndex).isLeaving()){ + && backgroundCurrentStationIndex <= stationList.size() - 1)) {//行驶过程中设置美化 + if (stationList.get(backgroundCurrentStationIndex).isLeaving()) { startBeautificationMode(); CallerLogger.INSTANCE.d(M_BUS + TAG, "美化模式-ignore:置为true(每次滑动出发)"); - }else if (backgroundCurrentStationIndex >0 && backgroundCurrentStationIndex < stationList.size()-1){ + } else if (backgroundCurrentStationIndex > 0 && backgroundCurrentStationIndex < stationList.size() - 1) { //美化模式下 中间站点到站 引导线要一直绘制,所以此处不出强制绘制不传false CallerAutoPilotManager.INSTANCE.setIPCDemoMode(false); CallerLogger.INSTANCE.d(M_BUS + TAG, "美化模式-ignore:false(到达中间站)"); clearStartAutopilotTag(); - }else{ + } else { closeBeautificationMode(); clearStartAutopilotTag(); } } - if ( currentStation.isLeaving() && slidePanelHideCallback != null) { + if (currentStation.isLeaving() && slidePanelHideCallback != null) { slidePanelHideCallback.hideSlidePanel(); } @@ -840,6 +888,70 @@ public class BusOrderModel { BusTrajectoryManager.getInstance().syncTrajectoryInfo(); } + private void beforeTaskTips() { + if (busRoutesResult == null) return; + + removeTipRunnables(); + + long taskTime = busRoutesResult.getTaskTime(); + long tip3Time = taskTime- 3*60*1000 - DateTimeUtil.getCurrentTimeStamp(); // 首站离开前3分钟提示 + long tip1Time = taskTime-60*1000 - DateTimeUtil.getCurrentTimeStamp(); // 首站离开前1分钟提示 + + if (tip3Time > 0){ + UiThreadHandler.postDelayed(tip3Runnable,tip3Time); + } + + if (tip1Time > 0){ + UiThreadHandler.postDelayed(tip1Runnable,tip1Time); + } + } + + Runnable tip3Runnable = new Runnable() { + @Override + public void run() { + + if (backgroundCurrentStationIndex == 0 && stationList.get(0).getDrivingStatus() == STATION_STATUS_STOPPED + && !stationList.get(0).isLeaving()){ + tipStartTask("3"); + }else { + removeTipRunnables(); + } + } + }; + + private void tipStartTask(String s) { + String tips = String.format(mContext + .getString(R.string.bus_before_tips_s), s); + //展示在运营消息 + OCHSocketMessageManager.INSTANCE.pushAppOperationalMsgBox( + DateTimeUtil.getCurrentTimeStamp(), + tips); + //语音提示 + VoiceNotice.showNotice(tips); + } + + Runnable tip1Runnable = new Runnable() { + @Override + public void run() { + if (backgroundCurrentStationIndex == 0 && stationList != null && + stationList.get(0).getDrivingStatus() == STATION_STATUS_STOPPED + && !stationList.get(0).isLeaving()){ + tipStartTask("1"); + }else { + removeTipRunnables(); + } + } + }; + + public void removeTipRunnables(){ + if (tip3Runnable != null){ + UiThreadHandler.removeCallbacks(tip3Runnable); + } + if (tip1Runnable != null){ + UiThreadHandler.removeCallbacks(tip1Runnable); + } + } + private void clearStartAutopilotTag() { firstStartAutopilot = 0; } @@ -850,8 +962,8 @@ public class BusOrderModel { CallerAutoPilotManager.INSTANCE.setIPCDemoMode(true); } - public void clearBusStationDatas(){ - if (refreshBusStationsCallback != null){ + public void clearBusStationDatas() { + if (refreshBusStationsCallback != null) { refreshBusStationsCallback.clearBusStationsMarkers(); } } @@ -860,19 +972,19 @@ public class BusOrderModel { * 延时查询站点信心 */ private void queryBusStationDelay() { - handler.sendEmptyMessageDelayed( MSG_QUERY_BUS_STATION, QUERY_BUS_STATION_DELAY ); + handler.sendEmptyMessageDelayed(MSG_QUERY_BUS_STATION, QUERY_BUS_STATION_DELAY); } /** * 在踩刹车、控制方向盘等操作后,会停止自动驾驶,重启自动驾驶的话相当于重新设置自动驾驶目的地 */ public void restartAutopilot() { - CallerLogger.INSTANCE.d( M_BUS + TAG, "行程日志-重启自动驾驶===" + isGoingToNextStation ); + CallerLogger.INSTANCE.d(M_BUS + TAG, "行程日志-重启自动驾驶===" + isGoingToNextStation); //只去启动自动驾驶,不再去上报离站 - startAutopilot(firstStartAutopilot >= 1,-1); + startAutopilot(firstStartAutopilot >= 1, -1); } - public boolean isRestartAutopilot(){ + public boolean isRestartAutopilot() { return firstStartAutopilot > 1; } @@ -881,11 +993,11 @@ public class BusOrderModel { */ private void travelOver() { - if ( backgroundCurrentStationIndex >= stationList.size() ) { - CallerLogger.INSTANCE.e( M_BUS + TAG, "travel over index out of station list" ); + if (backgroundCurrentStationIndex >= stationList.size()) { + CallerLogger.INSTANCE.e(M_BUS + TAG, "travel over index out of station list"); return; } - CallerLogger.INSTANCE.d( M_BUS + TAG, "单程结束====" ); + CallerLogger.INSTANCE.d(M_BUS + TAG, "单程结束===="); CallerAutoPilotManager.INSTANCE.cancelAutoPilot(); endTask(); @@ -895,64 +1007,76 @@ public class BusOrderModel { * task正常结束 */ private void endTask() { - CallerLogger.INSTANCE.d( M_BUS + TAG, "任务正常走完endTask()"); + CallerLogger.INSTANCE.d(M_BUS + TAG, "任务正常走完endTask()"); BusServiceManager.endTask(mContext, currentTaskId , new OchCommonServiceCallback() { @Override public void onSuccess(BaseData o) { CallerLogger.INSTANCE.d(M_BUS + TAG, "endTask success: " + o); - if (o.code == 0){ + if (o.code == 0) { endOrAbortTaskSuccess(); clearBusStationDatas(); queryBusRoutes();// 重新获取任务 - startOrStopQueryPassengerWriteOff(false); + removeTipRunnables(); +// startOrStopQueryPassengerWriteOff(false); VoiceNotice.showNotice(mContext.getString(R.string.bus_end_task_tip)); } } + @Override + public void onError() { + if (!NetworkUtils.isConnected(mContext)) { + ToastUtils.showShort(mContext.getString(R.string.network_error_tip)); + } else { + ToastUtils.showShort(mContext.getString(R.string.request_error_tip)); + } + } + @Override public void onFail(int code, String failMsg) { - ToastUtils.showShort(failMsg); + if (!NetworkUtils.isConnected(mContext)) { + ToastUtils.showShort("网络异常,请稍后重试"); + }else { + ToastUtils.showShort(failMsg); + } } }); } /** * 到站 + * * @param data */ - public void onArriveAt( MessagePad.ArrivalNotification data){ - if ( backgroundCurrentStationIndex +1 > stationList.size() - 1 ) { - CallerLogger.INSTANCE.e( M_BUS + TAG, "行程日志-到站异常,取消后续操作结束" ); + public void onArriveAt(MessagePad.ArrivalNotification data) { + if (backgroundCurrentStationIndex + 1 > stationList.size() - 1) { + CallerLogger.INSTANCE.e(M_BUS + TAG, "行程日志-到站异常,取消后续操作结束"); return; } //MAP 280 每隔100ms左右返回一次到站, 导致在到达中间站后再次滑动出发后会有时间差,收到一次到站,出现问题 //此处比对 自驾告诉的到站站点坐标和本地应到站站点坐标, 一致时才能到站 - if (data != null && data.getEndLocation() != null){ + if (data != null && data.getEndLocation() != null) { - String latitude = NumberFormatUtil.cutOutNumber(data.getEndLocation().getLatitude(),5); //wgs - String longitude = NumberFormatUtil.cutOutNumber(data.getEndLocation().getLongitude(),5); + String latitude = NumberFormatUtil.cutOutNumber(data.getEndLocation().getLatitude(), 5); //wgs + String longitude = NumberFormatUtil.cutOutNumber(data.getEndLocation().getLongitude(), 5); int arrivedStationIndex = backgroundCurrentStationIndex + 1; BusStationBean arriveStation = stationList.get(arrivedStationIndex); - String arriveLat = NumberFormatUtil.cutOutNumber(arriveStation.getLat(),5); - String arriveLon = NumberFormatUtil.cutOutNumber(arriveStation.getLon(),5); + String arriveLat = NumberFormatUtil.cutOutNumber(arriveStation.getLat(), 5); + String arriveLon = NumberFormatUtil.cutOutNumber(arriveStation.getLon(), 5); - if (!latitude.equals(arriveLat) || !longitude.equals(arriveLon)){ - CallerLogger.INSTANCE.e( M_BUS + TAG, "行程日志-到站拦截,到站坐标不一致" ); + if (!latitude.equals(arriveLat) || !longitude.equals(arriveLon)) { + CallerLogger.INSTANCE.e(M_BUS + TAG, "行程日志-到站拦截,到站坐标不一致"); return; } } if (isArrivedStation) return; - isArrivedStation = true; - CallerLogger.INSTANCE.d( M_BUS + TAG, "行程日志-当前==backgroundCurrentStationIndex=" + CallerLogger.INSTANCE.d(M_BUS + TAG, "行程日志-当前==backgroundCurrentStationIndex=" + backgroundCurrentStationIndex); - isGoingToNextStation = false; - arriveSiteStation(); } @@ -987,25 +1111,25 @@ public class BusOrderModel { // 登出 public void logout() { - loginService.loginOut(mLatitude,mLongitude); + loginService.loginOut(mLatitude, mLongitude); } public void triggerStartServiceEvent(boolean isRestart, boolean send) { - if (stationList == null || backgroundCurrentStationIndex >= stationList.size()-1) { + if (stationList == null || backgroundCurrentStationIndex >= stationList.size() - 1) { return; } - BusStationBean currentStation = stationList.get( backgroundCurrentStationIndex); - BusStationBean nextStation = stationList.get( backgroundCurrentStationIndex +1); + BusStationBean currentStation = stationList.get(backgroundCurrentStationIndex); + BusStationBean nextStation = stationList.get(backgroundCurrentStationIndex + 1); BusAnalyticsManager.getInstance().triggerStartAutopilotEvent(isRestart, send, currentStation.getName(), nextStation.getName(), currentLineId); } public void triggerUnableStartAPReasonEvent() { - if (stationList == null || backgroundCurrentStationIndex >= stationList.size()-1) { + if (stationList == null || backgroundCurrentStationIndex >= stationList.size() - 1) { return; } - BusStationBean currentStation = stationList.get( backgroundCurrentStationIndex); - BusStationBean nextStation = stationList.get( backgroundCurrentStationIndex +1); + BusStationBean currentStation = stationList.get(backgroundCurrentStationIndex); + BusStationBean nextStation = stationList.get(backgroundCurrentStationIndex + 1); BusAnalyticsManager.getInstance().triggerUnableStartAPReasonEvent( currentStation.getName(), nextStation.getName(), currentLineId, OCHAdasAbilityManager.getInstance().getAutopilotUnAbilityReason()); @@ -1025,7 +1149,7 @@ public class BusOrderModel { private void updateAutopilotControlParameters() { AutopilotControlParameters parameters = initAutopilotControlParameters(-1); - if (null == parameters){ + if (null == parameters) { CallerLogger.INSTANCE.e(M_BUS + TAG, "AutopilotControlParameters is empty."); return; } @@ -1033,7 +1157,7 @@ public class BusOrderModel { CallerAutoPilotStatusListenerManager.INSTANCE.updateAutopilotControlParameters(parameters); } - private void clearAutopilotControlParameters(){ + private void clearAutopilotControlParameters() { CallerLogger.INSTANCE.d(M_BUS + TAG, "AutopilotControlParameters is clear."); CallerAutoPilotStatusListenerManager.INSTANCE.updateAutopilotControlParameters(null); } @@ -1042,20 +1166,20 @@ public class BusOrderModel { BusStationBean currentStation = null; BusStationBean nextStation = null; - if (leaveIndex < 0){ - if (backgroundCurrentStationIndex +1 > stationList.size() - 1 || !isGoingToNextStation){ + if (leaveIndex < 0) { + if (backgroundCurrentStationIndex + 1 > stationList.size() - 1 || !isGoingToNextStation) { CallerLogger.INSTANCE.e(M_BUS + TAG, "行程日志-mismatch condition1."); return null; } - currentStation = stationList.get( backgroundCurrentStationIndex); - nextStation = stationList.get( backgroundCurrentStationIndex + 1); - }else { - if (leaveIndex +1 > stationList.size() - 1 || !isGoingToNextStation){ + currentStation = stationList.get(backgroundCurrentStationIndex); + nextStation = stationList.get(backgroundCurrentStationIndex + 1); + } else { + if (leaveIndex + 1 > stationList.size() - 1 || !isGoingToNextStation) { CallerLogger.INSTANCE.e(M_BUS + TAG, "行程日志-mismatch condition2."); return null; } - currentStation = stationList.get( leaveIndex); - nextStation = stationList.get( leaveIndex + 1); + currentStation = stationList.get(leaveIndex); + nextStation = stationList.get(leaveIndex + 1); } AutopilotControlParameters parameters = new AutopilotControlParameters(); @@ -1064,9 +1188,9 @@ public class BusOrderModel { parameters.startName = PinYinUtil.getPinYinHeadChar(currentStation.getName()); parameters.endName = PinYinUtil.getPinYinHeadChar(nextStation.getName()); parameters.startLatLon = new AutopilotControlParameters - .AutoPilotLonLat( currentStation.getLat(), currentStation.getLon() ); + .AutoPilotLonLat(currentStation.getLat(), currentStation.getLon()); parameters.endLatLon = new AutopilotControlParameters - .AutoPilotLonLat( nextStation.getLat(), nextStation.getLon() ); + .AutoPilotLonLat(nextStation.getLat(), nextStation.getLon()); parameters.vehicleType = VEHICLE_TYPE; if (parameters.autoPilotLine == null) { parameters.autoPilotLine = new AutopilotControlParameters.AutoPilotLine( diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusModelLoopManager.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusModelLoopManager.java index ad76324a64..9baa585f9f 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusModelLoopManager.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusModelLoopManager.java @@ -33,28 +33,28 @@ public class BusModelLoopManager { } private Disposable mHeartbeatDisposable; //心跳轮询 - private Disposable mQueryPassengerDisposable; //查询核销乘客 +// private Disposable mQueryPassengerDisposable; //查询核销乘客 - public void startQueryPassengerWriteOffLoop() { - if (mQueryPassengerDisposable != null && !mQueryPassengerDisposable.isDisposed()) { - return; - } - CallerLogger.INSTANCE.i(M_BUS + TAG, "startQueryPassengerWriteOffLoop()"); - mQueryPassengerDisposable = Observable.interval(LOOP_DELAY_500, - LOOP_PASSENGER_5S, TimeUnit.MILLISECONDS) - .map((aLong -> aLong + 1)) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(aLong -> BusOrderModel.getInstance().queryPassengerWriteOff()); - } +// public void startQueryPassengerWriteOffLoop() { +// if (mQueryPassengerDisposable != null && !mQueryPassengerDisposable.isDisposed()) { +// return; +// } +// CallerLogger.INSTANCE.i(M_BUS + TAG, "startQueryPassengerWriteOffLoop()"); +// mQueryPassengerDisposable = Observable.interval(LOOP_DELAY_500, +// LOOP_PASSENGER_5S, TimeUnit.MILLISECONDS) +// .map((aLong -> aLong + 1)) +// .subscribeOn(Schedulers.io()) +// .observeOn(AndroidSchedulers.mainThread()) +// .subscribe(aLong -> BusOrderModel.getInstance().queryPassengerWriteOff()); +// } - public void stopQueryPassengerWriteOffLoop() { - if (mQueryPassengerDisposable != null) { - CallerLogger.INSTANCE.i(M_BUS + TAG, "stopQueryPassengerWriteOffLoop()"); - mQueryPassengerDisposable.dispose(); - mQueryPassengerDisposable = null; - } - } +// public void stopQueryPassengerWriteOffLoop() { +// if (mQueryPassengerDisposable != null) { +// CallerLogger.INSTANCE.i(M_BUS + TAG, "stopQueryPassengerWriteOffLoop()"); +// mQueryPassengerDisposable.dispose(); +// mQueryPassengerDisposable = null; +// } +// } public void startHeartbeatLoop() { if (mHeartbeatDisposable != null && !mHeartbeatDisposable.isDisposed()) { diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusPresenter.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusPresenter.java index c4d1be3b85..b46124078c 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusPresenter.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusPresenter.java @@ -14,6 +14,7 @@ import com.mogo.commons.mvp.Presenter; import com.mogo.commons.voice.AIAssist; import com.mogo.eagle.core.data.autopilot.AutopilotStatusInfo; import com.mogo.eagle.core.data.config.FunctionBuildConfig; +import com.mogo.eagle.core.data.map.MogoLocation; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; @@ -236,7 +237,7 @@ public class BusPresenter extends Presenter } @Override - public void onCarLocationChanged(Location location) { + public void onCarLocationChanged(MogoLocation location) { if (null != location) { runOnUIThread(() -> mView.updateSpeedView(location.getSpeed())); } diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/ui/BusSwitchLineActivity.kt b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/ui/BusSwitchLineActivity.kt index bc2ebdf0c3..57d37c2805 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/ui/BusSwitchLineActivity.kt +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/ui/BusSwitchLineActivity.kt @@ -10,7 +10,6 @@ import android.widget.ImageView import android.widget.TextView import androidx.constraintlayout.widget.ConstraintLayout import androidx.recyclerview.widget.LinearLayoutManager -import androidx.recyclerview.widget.PagerSnapHelper import androidx.recyclerview.widget.RecyclerView import com.mogo.commons.mvp.MvpActivity import com.mogo.eagle.core.utilcode.util.SharedPrefs @@ -18,7 +17,7 @@ import com.mogo.och.bus.presenter.BusLinePresenter import com.mogo.och.bus.ui.adapter.SwitchLineAdapter import com.mogo.och.bus.bean.BusQueryLinesResponse import com.mogo.och.bus.ui.adapter.OpenItemAnimator -import com.mogo.module.common.view.SpacesItemDecoration +import com.mogo.eagle.core.utilcode.mogo.view.SpacesItemDecoration import com.mogo.eagle.core.utilcode.util.ToastUtils import com.mogo.och.bus.R import com.mogo.och.bus.bean.BusQueryLineTaskResponse @@ -74,7 +73,11 @@ class BusSwitchLineActivity : MvpActivity mLinesListView.setLayoutManager(linearLayoutManager) mLinesListView.setItemAnimator(OpenItemAnimator()) mAdapter = SwitchLineAdapter(applicationContext, mData) - mLinesListView.addItemDecoration(SpacesItemDecoration(4)) + mLinesListView.addItemDecoration( + SpacesItemDecoration( + 4 + ) + ) mLinesListView.setAdapter(mAdapter) //设置item 点击事件 mAdapter.setOnLineItemClickListener(object :SwitchLineAdapter.LineItemClickListener{ diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/util/BusAnalyticsManager.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/util/BusAnalyticsManager.java index f06c6bbd72..eaefe8db87 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/util/BusAnalyticsManager.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/util/BusAnalyticsManager.java @@ -1,6 +1,8 @@ package com.mogo.och.bus.util; import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_BUS; + +import android.annotation.SuppressLint; import android.text.TextUtils; import com.mogo.cloud.passport.MoGoAiCloudClientConfig; @@ -36,22 +38,31 @@ public class BusAnalyticsManager { private Runnable startAutopilotRunnable = () -> { // 15s内未开启,上报失败埋点 - triggerStartAutopilotFailureEvent("15s后app等待超时"); + triggerStartAutopilotFailureEvent("", "15s后app等待超时"); }; - public void triggerStartAutopilotFailureEventByAdas(String failMsg){ + public void triggerStartAutopilotFailureEventByAdas(String failCode, String failMsg){ removeWaitingCallback(); - triggerStartAutopilotFailureEvent(failMsg); + triggerStartAutopilotFailureEvent(failCode, failMsg); } - private void triggerStartAutopilotFailureEvent(String failMsg){ + private void triggerStartAutopilotFailureEvent(String failCode, String failMsg){ + if (mStartAutopilotParams.isEmpty()) return; + CallerLogger.INSTANCE.e( M_BUS + "triggerStartAutopilotFailureEvent", failMsg ); + + if (CallerAutoPilotStatusListenerManager.INSTANCE.getAutoPilotStatusInfo().getState() != + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING){ + mStartAutopilotParams.put(BusConst.EVENT_PARAM_START_FAILURE_CODE, failCode); + mStartAutopilotParams.put(BusConst.EVENT_PARAM_START_FAILURE_MSG, failMsg); + } mStartAutopilotParams.put(BusConst.EVENT_PARAM_START_RESULT , CallerAutoPilotStatusListenerManager.INSTANCE.getAutoPilotStatusInfo().getState() == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING); - mStartAutopilotParams.put(BusConst.EVENT_PARAM_START_FAILURE_MSG, - failMsg); + AnalyticsManager.INSTANCE.track(mStartAutopilotKey, mStartAutopilotParams); + + clearStartAutopilotParams();//清空参数数据,防止误传 } private void removeWaitingCallback() { @@ -61,6 +72,15 @@ public class BusAnalyticsManager { } } + public void clearStartAutopilotFailureMSG(){ + mStartAutopilotParams.put(BusConst.EVENT_PARAM_START_FAILURE_CODE, ""); + mStartAutopilotParams.put(BusConst.EVENT_PARAM_START_FAILURE_MSG, ""); + } + + private void clearStartAutopilotParams(){ + mStartAutopilotParams.clear(); + } + /** * 触发'开启自动驾驶'埋点流程 * 开启自动驾驶,15s内成功则发送成功埋点,否则发送失败埋点 @@ -86,10 +106,14 @@ public class BusAnalyticsManager { mStartAutopilotParams.put(BusConst.EVENT_PARAM_LINE_ID, lineId); if (send) { + if (mStartAutopilotParams.isEmpty()) return; // 开启成功,上报埋点 + clearStartAutopilotFailureMSG(); removeWaitingCallback(); mStartAutopilotParams.put(BusConst.EVENT_PARAM_START_RESULT, true); AnalyticsManager.INSTANCE.track(mStartAutopilotKey, mStartAutopilotParams); + + clearStartAutopilotParams();//清空参数数据,防止误传 } else { UiThreadHandler.postDelayed(startAutopilotRunnable, BusConst.LOOP_PERIOD_15S); } diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/view/SlidePanelView.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/view/SlidePanelView.java index b9bb0b0c18..f04edddbdb 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/view/SlidePanelView.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/view/SlidePanelView.java @@ -21,8 +21,13 @@ import android.view.animation.DecelerateInterpolator; import androidx.annotation.Nullable; +import com.mogo.commons.AbsMogoApplication; +import com.mogo.eagle.core.utilcode.util.BitmapHelper; import com.mogo.och.bus.R; +import me.jessyan.autosize.AutoSizeConfig; +import me.jessyan.autosize.utils.AutoSizeUtils; + /** * 滑块滑动面板 * @@ -57,12 +62,12 @@ public class SlidePanelView extends View { private final Paint textPaint = new Paint(Paint.ANTI_ALIAS_FLAG); private static int textSize = 40; - private static int BLOCK_START_X = 15; - private static int BLOCK_START_Y = 15; - private static int NORMAL_TEXT_MARGIN_LEFT = 40; - private static int NORMAL_TEXT_MARGIN_RIGHT = 60; - private static int SHORT_TEXT_MARGIN_LEFT = 60; - private static int SHORT_TEXT_MARGIN_RIGHT = 70; + private static int BLOCK_START_X = AutoSizeUtils.dp2px(AbsMogoApplication.getApp(),15); + private static int BLOCK_START_Y = AutoSizeUtils.dp2px(AbsMogoApplication.getApp(),15); + private static int NORMAL_TEXT_MARGIN_LEFT = AutoSizeUtils.dp2px(AbsMogoApplication.getApp(),40); + private static int NORMAL_TEXT_MARGIN_RIGHT = AutoSizeUtils.dp2px(AbsMogoApplication.getApp(),60); + private static int SHORT_TEXT_MARGIN_LEFT = AutoSizeUtils.dp2px(AbsMogoApplication.getApp(),60);; + private static int SHORT_TEXT_MARGIN_RIGHT = AutoSizeUtils.dp2px(AbsMogoApplication.getApp(),70);; private int textMarginLeft = NORMAL_TEXT_MARGIN_LEFT; private int textMarginRight = NORMAL_TEXT_MARGIN_RIGHT; @@ -123,8 +128,11 @@ public class SlidePanelView extends View { textGradient.setLocalMatrix(gradientMatrix); textPaint.setShader(textGradient); textPaint.getFontMetrics(blockTextMetrics); - - bmBlock = BitmapFactory.decodeResource(getResources(), R.drawable.bus_base_slide_block); + int size = AutoSizeUtils.dp2px(getContext(), 120); + BitmapFactory.Options opts = new BitmapFactory.Options(); + opts.inDensity = (int) AutoSizeConfig.getInstance().getInitDensity(); + bmBlock = BitmapFactory.decodeResource(getResources(), R.drawable.bus_base_slide_block,opts); + bmBlock = Bitmap.createScaledBitmap(bmBlock, size, size, true); blockWidth = bmBlock.getWidth(); } diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_no_line_icon.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_no_line_icon.png deleted file mode 100755 index fc20dca73c..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_no_line_icon.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_base_icon_not_in_autopilot.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_base_icon_not_in_autopilot.png deleted file mode 100644 index 927296d690..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_base_icon_not_in_autopilot.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_base_slide_block.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_base_slide_block.png deleted file mode 100644 index ed7b293b90..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_base_slide_block.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_disable_autopilot_icon.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_disable_autopilot_icon.png deleted file mode 100644 index 170f254cd1..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_disable_autopilot_icon.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_icon_arrived_station.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_icon_arrived_station.png deleted file mode 100644 index 8a065b66dd..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_icon_arrived_station.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_icon_arriving_station.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_icon_arriving_station.png deleted file mode 100644 index 4ed57a0e30..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_icon_arriving_station.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_light_green_nor.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_light_green_nor.png deleted file mode 100644 index bc9fed952d..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_light_green_nor.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_light_red_nor.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_light_red_nor.png deleted file mode 100644 index 8732508ded..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_light_red_nor.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_lightyellow_nor.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_lightyellow_nor.png deleted file mode 100644 index bae01408fd..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_lightyellow_nor.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_line_panel_bg.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_line_panel_bg.png deleted file mode 100755 index 3166d20e37..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_line_panel_bg.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_line_panel_bg_1.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_line_panel_bg_1.png deleted file mode 100755 index 09a9c252da..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_line_panel_bg_1.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_loading_autopilot_icon.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_loading_autopilot_icon.png deleted file mode 100644 index f21a1081f1..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_loading_autopilot_icon.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_no_line_icon.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_no_line_icon.png deleted file mode 100755 index fc20dca73c..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_no_line_icon.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_och_dot_line.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_och_dot_line.png deleted file mode 100644 index a720a532ea..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_och_dot_line.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_right_autopilot_icon.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_right_autopilot_icon.png deleted file mode 100644 index cc2b18083d..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_right_autopilot_icon.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_selected_btn.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_selected_btn.png deleted file mode 100644 index 3f05565483..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_selected_btn.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_setting_btn_bg.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_setting_btn_bg.png deleted file mode 100644 index ba41bf3a53..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_setting_btn_bg.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_switch_line_close.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_switch_line_close.png deleted file mode 100644 index 370b61de38..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_switch_line_close.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_switch_map_long.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_switch_map_long.png deleted file mode 100755 index cf3e5a3778..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_switch_map_long.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_switch_map_medium.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_switch_map_medium.png deleted file mode 100755 index bdc2725468..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_switch_map_medium.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_unselect_btn.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_unselect_btn.png deleted file mode 100644 index 0114bb4f2b..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_unselect_btn.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_wrong_autopilot_icon.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_wrong_autopilot_icon.png deleted file mode 100644 index 0c8988acb3..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/bus_wrong_autopilot_icon.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/end_maker_icon.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/end_maker_icon.png deleted file mode 100755 index 8acf113151..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/end_maker_icon.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_ai_normal.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_ai_normal.png deleted file mode 100755 index e98738b192..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_ai_normal.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_ai_select.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_ai_select.png deleted file mode 100755 index d3e0107c02..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_ai_select.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_arrow_blue_bus.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_arrow_blue_bus.png deleted file mode 100755 index 026c36086f..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_arrow_blue_bus.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_arrow_green_bus.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_arrow_green_bus.png deleted file mode 100755 index 06bebc7013..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_arrow_green_bus.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_arrow_grey_bus.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_arrow_grey_bus.png deleted file mode 100755 index f4f9b2bca2..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_arrow_grey_bus.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_bad_case_normal.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_bad_case_normal.png deleted file mode 100755 index c0a978fc2b..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_bad_case_normal.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_bad_case_select.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_bad_case_select.png deleted file mode 100755 index ebacf3a11a..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_bad_case_select.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_no_bus_line.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_no_bus_line.png deleted file mode 100755 index fc20dca73c..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_no_bus_line.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_point_blue_bus.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_point_blue_bus.png deleted file mode 100755 index dc4c4f6f0d..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_point_blue_bus.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_point_green_bus.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_point_green_bus.png deleted file mode 100755 index ed3b871338..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_point_green_bus.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_point_grey_bus.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_point_grey_bus.png deleted file mode 100755 index d43e34bb26..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_point_grey_bus.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_station_start_end.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_station_start_end.png deleted file mode 100644 index 04580a8f0d..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/icon_station_start_end.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/press_start_status.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/press_start_status.png deleted file mode 100755 index af32c20cb5..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/press_start_status.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/start_failure.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/start_failure.png deleted file mode 100755 index 5737f93ad8..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/start_failure.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/start_maker_icon.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/start_maker_icon.png deleted file mode 100644 index 9eca61e199..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/start_maker_icon.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/start_success.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/start_success.png deleted file mode 100755 index 84246fd323..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1600/start_success.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi/bus_switch_map_medium.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi/bus_switch_map_medium.png old mode 100644 new mode 100755 diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi/img_bus_status_bg.png b/OCH/mogo-och-bus/src/main/res/drawable-xhdpi/img_bus_status_bg.png deleted file mode 100644 index 27cb9285d3..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi/img_bus_status_bg.png and /dev/null differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable/bus_base_icon_in_autopilot.png b/OCH/mogo-och-bus/src/main/res/drawable/bus_base_icon_in_autopilot.png new file mode 100644 index 0000000000..75c26c3d71 Binary files /dev/null and b/OCH/mogo-och-bus/src/main/res/drawable/bus_base_icon_in_autopilot.png differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_base_icon_not_in_autopilot.png b/OCH/mogo-och-bus/src/main/res/drawable/bus_base_icon_not_in_autopilot.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_base_icon_not_in_autopilot.png rename to OCH/mogo-och-bus/src/main/res/drawable/bus_base_icon_not_in_autopilot.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable/bus_base_notice_box_bg.9.png b/OCH/mogo-och-bus/src/main/res/drawable/bus_base_notice_box_bg.9.png new file mode 100644 index 0000000000..8b4b579b56 Binary files /dev/null and b/OCH/mogo-och-bus/src/main/res/drawable/bus_base_notice_box_bg.9.png differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_base_slide_block.png b/OCH/mogo-och-bus/src/main/res/drawable/bus_base_slide_block.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_base_slide_block.png rename to OCH/mogo-och-bus/src/main/res/drawable/bus_base_slide_block.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_disable_autopilot_icon.png b/OCH/mogo-och-bus/src/main/res/drawable/bus_disable_autopilot_icon.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_disable_autopilot_icon.png rename to OCH/mogo-och-bus/src/main/res/drawable/bus_disable_autopilot_icon.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable/bus_dot_line.png b/OCH/mogo-och-bus/src/main/res/drawable/bus_dot_line.png new file mode 100644 index 0000000000..186001352c Binary files /dev/null and b/OCH/mogo-och-bus/src/main/res/drawable/bus_dot_line.png differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable/bus_ic_autopilot.png b/OCH/mogo-och-bus/src/main/res/drawable/bus_ic_autopilot.png new file mode 100644 index 0000000000..be978145dc Binary files /dev/null and b/OCH/mogo-och-bus/src/main/res/drawable/bus_ic_autopilot.png differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_icon_arrived_station.png b/OCH/mogo-och-bus/src/main/res/drawable/bus_icon_arrived_station.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_icon_arrived_station.png rename to OCH/mogo-och-bus/src/main/res/drawable/bus_icon_arrived_station.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_icon_arriving_station.png b/OCH/mogo-och-bus/src/main/res/drawable/bus_icon_arriving_station.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_icon_arriving_station.png rename to OCH/mogo-och-bus/src/main/res/drawable/bus_icon_arriving_station.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable/bus_icon_not_arrive_station.png b/OCH/mogo-och-bus/src/main/res/drawable/bus_icon_not_arrive_station.png new file mode 100644 index 0000000000..e0bb24c526 Binary files /dev/null and b/OCH/mogo-och-bus/src/main/res/drawable/bus_icon_not_arrive_station.png differ diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_light_green_nor.png b/OCH/mogo-och-bus/src/main/res/drawable/bus_light_green_nor.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_light_green_nor.png rename to OCH/mogo-och-bus/src/main/res/drawable/bus_light_green_nor.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_light_red_nor.png b/OCH/mogo-och-bus/src/main/res/drawable/bus_light_red_nor.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_light_red_nor.png rename to OCH/mogo-och-bus/src/main/res/drawable/bus_light_red_nor.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_lightyellow_nor.png b/OCH/mogo-och-bus/src/main/res/drawable/bus_lightyellow_nor.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_lightyellow_nor.png rename to OCH/mogo-och-bus/src/main/res/drawable/bus_lightyellow_nor.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_line_panel_bg.png b/OCH/mogo-och-bus/src/main/res/drawable/bus_line_panel_bg.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_line_panel_bg.png rename to OCH/mogo-och-bus/src/main/res/drawable/bus_line_panel_bg.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_line_panel_bg_1.png b/OCH/mogo-och-bus/src/main/res/drawable/bus_line_panel_bg_1.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_line_panel_bg_1.png rename to OCH/mogo-och-bus/src/main/res/drawable/bus_line_panel_bg_1.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_loading_autopilot_icon.png b/OCH/mogo-och-bus/src/main/res/drawable/bus_loading_autopilot_icon.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_loading_autopilot_icon.png rename to OCH/mogo-och-bus/src/main/res/drawable/bus_loading_autopilot_icon.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_och_dot_line.png b/OCH/mogo-och-bus/src/main/res/drawable/bus_och_dot_line.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_och_dot_line.png rename to OCH/mogo-och-bus/src/main/res/drawable/bus_och_dot_line.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable/bus_operation_status_bg.xml b/OCH/mogo-och-bus/src/main/res/drawable/bus_operation_status_bg.xml index 753d85e3ec..4d612cb98f 100644 --- a/OCH/mogo-och-bus/src/main/res/drawable/bus_operation_status_bg.xml +++ b/OCH/mogo-och-bus/src/main/res/drawable/bus_operation_status_bg.xml @@ -8,7 +8,7 @@ android:angle="315" /> \ No newline at end of file diff --git a/OCH/mogo-och-bus/src/main/res/drawable/bus_operation_status_select_bg.xml b/OCH/mogo-och-bus/src/main/res/drawable/bus_operation_status_select_bg.xml index 835c1fbaff..f617cd9fce 100644 --- a/OCH/mogo-och-bus/src/main/res/drawable/bus_operation_status_select_bg.xml +++ b/OCH/mogo-och-bus/src/main/res/drawable/bus_operation_status_select_bg.xml @@ -8,7 +8,7 @@ android:angle="225" /> \ No newline at end of file diff --git a/OCH/mogo-och-bus/src/main/res/drawable/bus_panel_anchor_bkg.xml b/OCH/mogo-och-bus/src/main/res/drawable/bus_panel_anchor_bkg.xml index 38fc28d893..21b39b7e37 100644 --- a/OCH/mogo-och-bus/src/main/res/drawable/bus_panel_anchor_bkg.xml +++ b/OCH/mogo-och-bus/src/main/res/drawable/bus_panel_anchor_bkg.xml @@ -1,5 +1,5 @@ - + \ No newline at end of file diff --git a/OCH/mogo-och-bus/src/main/res/drawable/bus_panel_bkg.xml b/OCH/mogo-och-bus/src/main/res/drawable/bus_panel_bkg.xml index d7937835a0..69539ed40f 100644 --- a/OCH/mogo-och-bus/src/main/res/drawable/bus_panel_bkg.xml +++ b/OCH/mogo-och-bus/src/main/res/drawable/bus_panel_bkg.xml @@ -2,17 +2,17 @@ - + + android:bottom="3dp" + android:left="3dp" + android:right="3dp" + android:top="3dp"> - + diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_right_autopilot_icon.png b/OCH/mogo-och-bus/src/main/res/drawable/bus_right_autopilot_icon.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_right_autopilot_icon.png rename to OCH/mogo-och-bus/src/main/res/drawable/bus_right_autopilot_icon.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_selected_btn.png b/OCH/mogo-och-bus/src/main/res/drawable/bus_selected_btn.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_selected_btn.png rename to OCH/mogo-och-bus/src/main/res/drawable/bus_selected_btn.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_setting_btn_bg.png b/OCH/mogo-och-bus/src/main/res/drawable/bus_setting_btn_bg.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/bus_setting_btn_bg.png rename to OCH/mogo-och-bus/src/main/res/drawable/bus_setting_btn_bg.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable/bus_setting_tip_red_cir_bg.xml b/OCH/mogo-och-bus/src/main/res/drawable/bus_setting_tip_red_cir_bg.xml index 0f456d52c7..203971340e 100644 --- a/OCH/mogo-och-bus/src/main/res/drawable/bus_setting_tip_red_cir_bg.xml +++ b/OCH/mogo-och-bus/src/main/res/drawable/bus_setting_tip_red_cir_bg.xml @@ -1,8 +1,8 @@ - - + + - + diff --git a/OCH/mogo-och-bus/src/main/res/drawable/bus_switch_line_btn_commit.xml b/OCH/mogo-och-bus/src/main/res/drawable/bus_switch_line_btn_commit.xml index 43f6d7af60..e94992d507 100644 --- a/OCH/mogo-och-bus/src/main/res/drawable/bus_switch_line_btn_commit.xml +++ b/OCH/mogo-och-bus/src/main/res/drawable/bus_switch_line_btn_commit.xml @@ -1,7 +1,7 @@ - + + android:bottomLeftRadius="130dp" + android:bottomRightRadius="30dp" + android:topLeftRadius="30dp" + android:topRightRadius="130dp" /> \ No newline at end of file diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/end_maker_icon.png b/OCH/mogo-och-bus/src/main/res/drawable/end_maker_icon.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/end_maker_icon.png rename to OCH/mogo-och-bus/src/main/res/drawable/end_maker_icon.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_ai_normal.png b/OCH/mogo-och-bus/src/main/res/drawable/icon_ai_normal.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_ai_normal.png rename to OCH/mogo-och-bus/src/main/res/drawable/icon_ai_normal.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_ai_select.png b/OCH/mogo-och-bus/src/main/res/drawable/icon_ai_select.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_ai_select.png rename to OCH/mogo-och-bus/src/main/res/drawable/icon_ai_select.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_arrow_blue_bus.png b/OCH/mogo-och-bus/src/main/res/drawable/icon_arrow_blue_bus.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_arrow_blue_bus.png rename to OCH/mogo-och-bus/src/main/res/drawable/icon_arrow_blue_bus.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_arrow_green_bus.png b/OCH/mogo-och-bus/src/main/res/drawable/icon_arrow_green_bus.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_arrow_green_bus.png rename to OCH/mogo-och-bus/src/main/res/drawable/icon_arrow_green_bus.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_arrow_grey_bus.png b/OCH/mogo-och-bus/src/main/res/drawable/icon_arrow_grey_bus.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_arrow_grey_bus.png rename to OCH/mogo-och-bus/src/main/res/drawable/icon_arrow_grey_bus.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_bad_case_normal.png b/OCH/mogo-och-bus/src/main/res/drawable/icon_bad_case_normal.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_bad_case_normal.png rename to OCH/mogo-och-bus/src/main/res/drawable/icon_bad_case_normal.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_bad_case_select.png b/OCH/mogo-och-bus/src/main/res/drawable/icon_bad_case_select.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_bad_case_select.png rename to OCH/mogo-och-bus/src/main/res/drawable/icon_bad_case_select.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_no_bus_line.png b/OCH/mogo-och-bus/src/main/res/drawable/icon_no_bus_line.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_no_bus_line.png rename to OCH/mogo-och-bus/src/main/res/drawable/icon_no_bus_line.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_point_blue_bus.png b/OCH/mogo-och-bus/src/main/res/drawable/icon_point_blue_bus.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_point_blue_bus.png rename to OCH/mogo-och-bus/src/main/res/drawable/icon_point_blue_bus.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_point_green_bus.png b/OCH/mogo-och-bus/src/main/res/drawable/icon_point_green_bus.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_point_green_bus.png rename to OCH/mogo-och-bus/src/main/res/drawable/icon_point_green_bus.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_point_grey_bus.png b/OCH/mogo-och-bus/src/main/res/drawable/icon_point_grey_bus.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_point_grey_bus.png rename to OCH/mogo-och-bus/src/main/res/drawable/icon_point_grey_bus.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_station_start_end.png b/OCH/mogo-och-bus/src/main/res/drawable/icon_station_start_end.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/icon_station_start_end.png rename to OCH/mogo-och-bus/src/main/res/drawable/icon_station_start_end.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable/img_bus_status_bg.9.png b/OCH/mogo-och-bus/src/main/res/drawable/img_bus_status_bg.9.png deleted file mode 100644 index 0af2b9db73..0000000000 Binary files a/OCH/mogo-och-bus/src/main/res/drawable/img_bus_status_bg.9.png and /dev/null differ diff --git a/OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_no_order_data.png b/OCH/mogo-och-bus/src/main/res/drawable/no_order_data.png similarity index 100% rename from OCH/mogo-och-bus-passenger/src/main/res/drawable-sw320dp-xhdpi/bus_p_no_order_data.png rename to OCH/mogo-och-bus/src/main/res/drawable/no_order_data.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/press_start_status.png b/OCH/mogo-och-bus/src/main/res/drawable/press_start_status.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/press_start_status.png rename to OCH/mogo-och-bus/src/main/res/drawable/press_start_status.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/start_failure.png b/OCH/mogo-och-bus/src/main/res/drawable/start_failure.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/start_failure.png rename to OCH/mogo-och-bus/src/main/res/drawable/start_failure.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/start_maker_icon.png b/OCH/mogo-och-bus/src/main/res/drawable/start_maker_icon.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/start_maker_icon.png rename to OCH/mogo-och-bus/src/main/res/drawable/start_maker_icon.png diff --git a/OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/start_success.png b/OCH/mogo-och-bus/src/main/res/drawable/start_success.png similarity index 100% rename from OCH/mogo-och-bus/src/main/res/drawable-xhdpi-2560x1440/start_success.png rename to OCH/mogo-och-bus/src/main/res/drawable/start_success.png diff --git a/OCH/mogo-och-bus/src/main/res/layout/activity_bus_switch_line.xml b/OCH/mogo-och-bus/src/main/res/layout/activity_bus_switch_line.xml index e5d7b2d7f5..703490ed83 100644 --- a/OCH/mogo-och-bus/src/main/res/layout/activity_bus_switch_line.xml +++ b/OCH/mogo-och-bus/src/main/res/layout/activity_bus_switch_line.xml @@ -30,8 +30,8 @@ @@ -44,7 +44,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" - android:layout_marginLeft="28px" + android:layout_marginLeft="28dp" android:layout_toRightOf="@+id/bus_autopilot_btn_iv" android:text="自动驾驶" android:textColor="@color/bus_autopilot_text_color_normal" @@ -67,7 +67,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" layout="@layout/bus_test_bar_view" - android:visibility="gone" + android:visibility="visible" app:layout_constraintTop_toBottomOf="@id/module_mogo_och_station_panel_container" app:layout_constraintLeft_toLeftOf="@id/module_mogo_och_station_panel_container" tools:visibility="visible"/> @@ -90,8 +90,8 @@ + android:layout_width="@dimen/dp_60" + android:layout_height="60dp" /> @@ -137,8 +137,8 @@ app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintLeft_toRightOf="@id/bus_switch_model_layout"> @@ -156,8 +156,8 @@ app:layout_constraintLeft_toRightOf="@id/module_mogo_och_setting_layout"> @@ -175,8 +175,8 @@ app:layout_constraintLeft_toRightOf="@id/module_mogo_och_badcase_rl"> @@ -206,7 +206,7 @@ android:layout_height="wrap_content" android:background="#f00" android:text="Disable" - android:textSize="30sp" + android:textSize="@dimen/dp_60" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" /> @@ -216,7 +216,7 @@ android:layout_height="wrap_content" android:background="#0f0" android:text="Enable" - android:textSize="30sp" + android:textSize="@dimen/dp_60" app:layout_constraintRight_toRightOf="@id/btnAutopilotDisable" app:layout_constraintTop_toBottomOf="@id/btnAutopilotDisable" /> @@ -226,7 +226,7 @@ android:layout_height="wrap_content" android:background="#00f" android:text="Running" - android:textSize="30sp" + android:textSize="@dimen/dp_60" app:layout_constraintRight_toRightOf="@id/btnAutopilotDisable" app:layout_constraintTop_toBottomOf="@id/btnAutopilotEnable" /> @@ -236,7 +236,7 @@ android:layout_height="wrap_content" android:background="#f00" android:text="Arrived" - android:textSize="30sp" + android:textSize="@dimen/dp_60" app:layout_constraintRight_toRightOf="@id/btnAutopilotDisable" app:layout_constraintTop_toBottomOf="@id/btnAutopilotRunning" />