diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/MogoOCHTaxiModel.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/MogoOCHTaxiModel.java index c044046c82..8c0d302ec0 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/MogoOCHTaxiModel.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/MogoOCHTaxiModel.java @@ -29,6 +29,7 @@ import com.mogo.utils.network.utils.GsonUtil; import com.mogo.utils.storage.SharedPrefsMgr; import java.util.ArrayList; +import java.util.List; import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.schedulers.Schedulers; @@ -314,6 +315,9 @@ class MogoOCHTaxiModel { * @param data */ private void convertCurrentOrder( OCHTaxiOrderResponse2 data ) { + if (data.data == null){ + return; + } if ( mCurrentOCHOrder == null ) { mCurrentOCHOrder = new OCHTaxiOrderResponse(); } @@ -325,18 +329,23 @@ class MogoOCHTaxiModel { mCurrentOCHOrder.orderType = data.data.orderType; mCurrentOCHOrder.drivingRoutes = new ArrayList<>(); OCHTaxiOrderResponse.OCHTaxiStation startStation = new OCHTaxiOrderResponse.OCHTaxiStation(); - startStation.lon = data.data.startStationCoordinate.get( 0 ); - startStation.lat = data.data.startStationCoordinate.get( 1 ); - startStation.siteId = data.data.startStationId; - startStation.siteName = data.data.startStation; - mCurrentOCHOrder.drivingRoutes.add( startStation ); + List< Double > startStationCoordinate = data.data.startStationCoordinate; + if (startStationCoordinate != null && startStationCoordinate.size()>1){ + startStation.lon = startStationCoordinate.get( 0 ); + startStation.lat = startStationCoordinate.get( 1 ); + startStation.siteId = data.data.startStationId; + startStation.siteName = data.data.startStation; + mCurrentOCHOrder.drivingRoutes.add( startStation ); + } OCHTaxiOrderResponse.OCHTaxiStation endStation = new OCHTaxiOrderResponse.OCHTaxiStation(); - endStation.lon = data.data.endStationCoordinate.get( 0 ); - endStation.lat = data.data.endStationCoordinate.get( 1 ); - endStation.siteId = data.data.endStationId; - endStation.siteName = data.data.endStation; - mCurrentOCHOrder.drivingRoutes.add( endStation ); - + List< Double > endStationCoordinate = data.data.endStationCoordinate; + if (endStationCoordinate != null && endStationCoordinate.size()>1){ + endStation.lon = endStationCoordinate.get( 0 ); + endStation.lat = endStationCoordinate.get( 1 ); + endStation.siteId = data.data.endStationId; + endStation.siteName = data.data.endStation; + mCurrentOCHOrder.drivingRoutes.add( endStation ); + } cacheOrderInfo2Native( mCurrentOCHOrder ); }