修复出车逻辑,会调用一下重置站点接口,来清除缓存获取最新站点信息
This commit is contained in:
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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();
|
||||
|
||||
@@ -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<OchBusRoutesResponse>(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();
|
||||
}
|
||||
} );
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user