From 8e71da1211ce9855789b769efb066c53ba6405f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=AE=8F=E5=AE=87?= Date: Mon, 12 Jul 2021 18:59:20 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=87=BA=E8=BD=A6=E9=80=BB?= =?UTF-8?q?=E8=BE=91,=E4=BC=9A=E8=B0=83=E7=94=A8=E4=B8=80=E4=B8=8B?= =?UTF-8?q?=E9=87=8D=E7=BD=AE=E7=AB=99=E7=82=B9=E6=8E=A5=E5=8F=A3,?= =?UTF-8?q?=E6=9D=A5=E6=B8=85=E9=99=A4=E7=BC=93=E5=AD=98=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E6=9C=80=E6=96=B0=E7=AB=99=E7=82=B9=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mogo/och/bus/bean/OchBusResetRequest.java | 22 +++++++- .../mogo/och/bus/fragment/OchBusFragment.java | 5 +- .../och/bus/presenter/OchBusPresenter.java | 55 +++++++++++++------ 3 files changed, 62 insertions(+), 20 deletions(-) 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(); } - } ); + }); } /**