diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusResetRequest.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusResetRequest.java index b14c7071b6..7dc9da88d1 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusResetRequest.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusResetRequest.java @@ -8,10 +8,14 @@ package com.mogo.och.bus.bean; public class OchBusResetRequest { private String sn; private int siteId; + double lat; + double lon; - public OchBusResetRequest(String sn, int siteId) { + public OchBusResetRequest(String sn, int siteId, double lat, double lon) { this.sn = sn; this.siteId = siteId; + this.lat = lat; + this.lon = lon; } public String getSn() { @@ -22,6 +26,22 @@ public class OchBusResetRequest { this.sn = sn; } + public double getLat() { + return lat; + } + + public void setLat(double lat) { + this.lat = lat; + } + + public double getLon() { + return lon; + } + + public void setLon(double lon) { + this.lon = lon; + } + public int getSiteId() { return siteId; } diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/OchBusFragment.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/OchBusFragment.java index 0ef12a6e36..060a330608 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/OchBusFragment.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/OchBusFragment.java @@ -218,10 +218,11 @@ public class OchBusFragment extends BaseOchFragment< OchBusFragment, OchBusPrese * @param launch true-收车,false-出车 */ public void changeOperationStatus( boolean launch ) { - // 收车的时候重制站点状态 - mPresenter.debugResetStationStatus(); isOperationStatus = launch; if ( launch ) { + // 出车的时候重制站点状态 + mPresenter.debugResetStationStatus(); + tvOperationStatus.setText( "收车" ); showSlidePanle("滑动出发"); showPanel(); diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusPresenter.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusPresenter.java index 4a3e94e9df..e0daa0d3b6 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusPresenter.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusPresenter.java @@ -7,6 +7,7 @@ import android.text.TextUtils; import androidx.annotation.NonNull; import androidx.lifecycle.LifecycleOwner; +import com.mogo.commons.constants.SharedPrefsConstants; import com.mogo.commons.data.BaseData; import com.mogo.commons.mvp.Presenter; import com.mogo.commons.network.SubscribeImpl; @@ -34,6 +35,7 @@ import com.mogo.service.adas.entity.AdasOCHData; import com.mogo.utils.logger.Logger; import com.mogo.utils.network.RequestOptions; import com.mogo.utils.network.utils.GsonUtil; +import com.mogo.utils.storage.SharedPrefsMgr; import java.util.ArrayList; import java.util.List; @@ -244,40 +246,59 @@ public class OchBusPresenter extends Presenter< OchBusFragment > implements IMog */ public void debugResetStationStatus() { Logger.d( TAG, "测试、重置站点状态"); + double lat = 40.1974932972; + double lon = 116.7354579447; - OchBusResetRequest request = new OchBusResetRequest( Utils.getSn(), 1 ); - RequestBody requestBody = RequestBody.create( MediaType.get( "application/json;charset=UTF-8" ), GsonUtil.jsonFromObject( request ) ); - mService.debugResetStationStatus( requestBody ) - .subscribeOn( Schedulers.io() ).observeOn( AndroidSchedulers.mainThread() ) - .subscribe( new SubscribeImpl< OchBusRoutesResponse >( RequestOptions.create( getContext() ) ) { + try { + // 地图SDK定位数据 + String latitude = SharedPrefsMgr.getInstance(getContext()) + .getString(SharedPrefsConstants.LOCATION_LATITUDE); + String longitude = SharedPrefsMgr.getInstance(getContext()) + .getString(SharedPrefsConstants.LOCATION_LONGITUDE); + + lat = Double.parseDouble(latitude); + lon = Double.parseDouble(longitude); + } catch (NumberFormatException e) { + // ADAS 经纬度,需要启动工控机 + lat = MogoApisHandler.getInstance().getApis().getAdasControllerApi().getLastLat(); + lon = MogoApisHandler.getInstance().getApis().getAdasControllerApi().getLastLon(); + + e.printStackTrace(); + } + + OchBusResetRequest request = new OchBusResetRequest(Utils.getSn(), 1, lat, lon); + RequestBody requestBody = RequestBody.create(MediaType.get("application/json;charset=UTF-8"), GsonUtil.jsonFromObject(request)); + mService.debugResetStationStatus(requestBody) + .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()) + .subscribe(new SubscribeImpl(RequestOptions.create(getContext())) { @Override - public void onSuccess( OchBusRoutesResponse o ) { - super.onSuccess( o ); - Logger.d( TAG, "获取到小巴路线数据: " + o ); + public void onSuccess(OchBusRoutesResponse o) { + super.onSuccess(o); + Logger.d(TAG, "获取到小巴路线数据: " + o); isGoingToNextStation = false; - if ( o.getResult() == null || o.getResult().getSite() == null || o.getResult().getSite().isEmpty() ) { + if (o.getResult() == null || o.getResult().getSite() == null || o.getResult().getSite().isEmpty()) { return; } - renderBusStationsStatus( o.getResult().getSite() ); + renderBusStationsStatus(o.getResult().getSite()); } @Override - public void onError( Throwable e ) { - super.onError( e ); - Logger.e( TAG, e, "获取小巴路线图失败" ); + public void onError(Throwable e) { + super.onError(e); + Logger.e(TAG, e, "获取小巴路线图失败"); // 重复请求小巴路线,直至成功 queryBusStationDelay(); } @Override - public void onError( String message, int code ) { - super.onError( message, code ); - Logger.e( TAG, "获取小巴路线失败 code: " + code + " msg: " + message ); + public void onError(String message, int code) { + super.onError(message, code); + Logger.e(TAG, "获取小巴路线失败 code: " + code + " msg: " + message); // 重复请求小巴路线,直至成功 queryBusStationDelay(); } - } ); + }); } /**