Merge remote-tracking branch 'origin/dev_robotaxi-d-app-module_2100_220816_2.10.0' into dev_robotaxi-d-app-module_2100_220816_2.10.0

This commit is contained in:
“donghongyu-mackbook”
2022-08-25 10:52:43 +08:00
15 changed files with 96 additions and 34 deletions

View File

@@ -0,0 +1,24 @@
package com.mogo.och.bus.bean;
import com.mogo.cloud.passport.MoGoAiCloudClientConfig;
public
/**
* @author congtaowang
* @since 2021/3/22
*
* 小巴车重置路线状态请求参数
*/
class BusResetLineStatusRequest {
private String sn;
public BusResetLineStatusRequest() {
this.sn = MoGoAiCloudClientConfig.getInstance().getSn();
}
public String getSn() {
return sn;
}
}

View File

@@ -452,18 +452,16 @@ public class BusOrderModel {
, new IBusServiceCallback<BusRoutesResponse>() {
@Override
public void onSuccess(BusRoutesResponse o) {
CallerLogger.INSTANCE.d(M_BUS + TAG, "获取到小巴路线数据: " + o);
CallerLogger.INSTANCE.d(M_BUS + TAG, "结束当前路线成功: " + o);
isGoingToNextStation = false;
if (o.getResult() == null || o.getResult().getSites() == null || o.getResult().getSites().isEmpty()) {
return;
if (o.code == 0){ // 重置成功
queryBusRoutes();
}
renderBusStationsStatus(o.getResult());
}
@Override
public void onFail(String failMsg) {
// 重复请求小巴路线,直至成功
queryBusStationDelay();
ToastUtils.showShort(failMsg);
}
});

View File

@@ -11,6 +11,7 @@ import com.mogo.eagle.core.network.RequestOptions;
import com.mogo.eagle.core.network.SubscribeImpl;
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger;
import com.mogo.och.bus.bean.BusQueryLinesResponse;
import com.mogo.och.bus.bean.BusResetLineStatusRequest;
import com.mogo.och.bus.bean.BusRoutePlanningUpdateReqBean;
import com.mogo.och.bus.bean.BusRoutesResponse;
import com.mogo.och.bus.bean.CarHeartbeatReqBean;
@@ -88,11 +89,11 @@ public class BusServiceManager {
* @param callback
*/
public void resetCurrentLineStatus(Context context, int lineId, IBusServiceCallback<BusRoutesResponse> callback){
// mService.switchLine(MoGoAiCloudClientConfig.getInstance().getServiceAppId()
// ,MoGoAiCloudClientConfig.getInstance().getToken(),new BusResetDrivingLineRequest(lineId))
// .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
// .subscribe(getSubscribeImpl(context,callback,"debugResetStationStatus"));
// TODO 需要重置接口
mService.resetCurrentLineStatus(MoGoAiCloudClientConfig.getInstance().getServiceAppId()
,MoGoAiCloudClientConfig.getInstance().getToken()
,new BusResetLineStatusRequest())
.subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
.subscribe(getSubscribeImpl(context,callback,"resetCurrentLineStatus"));
}
/**
@@ -203,7 +204,8 @@ public class BusServiceManager {
public void queryBusLines(Context context, IBusServiceCallback<BusQueryLinesResponse> callback){
mService.queryBusLines(MoGoAiCloudClientConfig.getInstance().getServiceAppId()
,MoGoAiCloudClientConfig.getInstance().getToken(),MoGoAiCloudClientConfig.getInstance().getSn())
,MoGoAiCloudClientConfig.getInstance().getToken()
,MoGoAiCloudClientConfig.getInstance().getSn())
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(getSubscribeImpl(context,callback,"queryBusLines"));

View File

@@ -3,6 +3,7 @@ import com.mogo.eagle.core.data.BaseData;
import com.mogo.och.bus.bean.BusOperationStatusRequest;
import com.mogo.och.bus.bean.BusOrdersResponse;
import com.mogo.och.bus.bean.BusQueryLinesResponse;
import com.mogo.och.bus.bean.BusResetLineStatusRequest;
import com.mogo.och.bus.bean.BusRoutePlanningUpdateReqBean;
import com.mogo.och.bus.bean.BusRoutesResponse;
import com.mogo.och.bus.bean.CarHeartbeatReqBean;
@@ -148,5 +149,9 @@ public interface IBusApiService {
@Headers( {"Content-type:application/json;charset=UTF-8"} )
@POST( "/autopilot-car-hailing/location/v2/driver/bus/saveLineCoordinate" )
Observable<BaseData> updateOrderRoute(@Header ("appId") String appId, @Header("ticket") String ticket, @Body BusRoutePlanningUpdateReqBean data);
@Headers( {"Content-type:application/json;charset=UTF-8"} )
@POST("/autopilot-car-hailing/operation/v1/driver/bus/line/resetStart")
Observable<BusRoutesResponse> resetCurrentLineStatus(@Header ("appId") String appId, @Header("ticket") String ticket, @Body BusResetLineStatusRequest data);
}

View File

@@ -189,10 +189,7 @@ public class TaxiModel {
CallerLogger.INSTANCE.d(M_TAXI + TAG, "Undeliverable exception");
}
});
if (NetworkUtils.isConnected(mContext)) {
queryCarStatus();
}
queryCarStatus();
}
public void release() {
@@ -276,7 +273,9 @@ public class TaxiModel {
//更新view
CallerLogger.INSTANCE.d(M_TAXI + TAG, "changeCarStatus:" + StatusManager.getLoginStatus());
startOrStopOrderLoop(StatusManager.isLogin());
mCarStatusCallback.onCarLoginStatusChange(StatusManager.isLogin());
if(mCarStatusCallback!=null) {
mCarStatusCallback.onCarLoginStatusChange(StatusManager.isLogin());
}
String role = "";
if (TaxiDriverRoleEnum.DEMO.getCode() == data.data.purpose) {
role = TaxiConst.DEMO_USER;
@@ -297,20 +296,26 @@ public class TaxiModel {
} else {
ToastUtils.showShort(mContext.getString(R.string.request_error_tip));
}
// queryCarStatus();
queryCarStatus();
if(mCarStatusCallback!=null) {
mCarStatusCallback.onCarLoginStatusChange(StatusManager.isLogin());
}
}
@Override
public void onFail(int code, String msg) {
ToastUtils.showShort(code + "," + msg);
// queryCarStatus();
queryCarStatus();
if(mCarStatusCallback!=null) {
mCarStatusCallback.onCarLoginStatusChange(StatusManager.isLogin());
}
}
});
}
//更新出车收车状态
public void updateCarStatus() {
if (StatusManager.getLoginStatus().equals(TaxiLoginStatusEnum.None)) {
if(!StatusManager.isLogin()){
queryCarStatus();
return;
}
@@ -1308,10 +1313,23 @@ public class TaxiModel {
queryOrderRouteList(mCurrentOCHOrder.orderNo);
}
Logger.d(M_TAXI + TAG, "--------mRoutePoints.size---------- " + mRoutePoints.size());
if (mRoutePoints.size() > 0){
reportTotalDisAndTime();
}
//开启实时计算剩余距离,剩余时间,预计时间
startOrStopCalculateRouteInfo(true);
}
private void reportTotalDisAndTime() {
float lastSumLength = CoordinateCalculateRouteUtil.calculateRouteSumLength(mRoutePoints);
double lastTime = lastSumLength / TaxiConst.TAXI_AVERAGE_SPEED * 3.6; //秒
if (mOrderStatusCallback != null) {
mOrderStatusCallback.onCurrentOrderDistToEndChanged((long) lastSumLength, (long) lastTime);
}
reportOrderRemain((long) lastSumLength, (long) lastTime);
}
/**
* 实时计算当前剩余里程和时间
*/

View File

@@ -41,6 +41,8 @@ public class TaxiPresenter extends Presenter<TaxiFragment> implements ITaxiADASS
private static final String TAG = TaxiPresenter.class.getSimpleName();
private boolean isFirstShow = true;
public TaxiPresenter(TaxiFragment view) {
super(view);
TaxiModel.getInstance().init(AbsMogoApplication.getApp());
@@ -61,6 +63,16 @@ public class TaxiPresenter extends Presenter<TaxiFragment> implements ITaxiADASS
TaxiModel.getInstance().release();
}
@Override
public void onResume(@NonNull LifecycleOwner owner) {
super.onResume(owner);
if(isFirstShow){
isFirstShow = false;
}else {
TaxiModel.getInstance().queryCarStatus();
}
}
private void initListeners() {
TaxiModel.getInstance().setADASStatusCallback(this);
TaxiModel.getInstance().setCarStatusCallback(this);

View File

@@ -85,7 +85,7 @@
android:gravity="center_vertical"
android:imeOptions="actionDone"
android:paddingStart="30px"
android:maxLength="8"
android:maxLength="4"
android:layout_width="518px"
android:layout_height="136px"/>

View File

@@ -37,6 +37,7 @@ if (!isAndroidTestBuild()) {
//白名单中的类不进行替换
white_list = [
'leakcanary.*',
'com.loc.*'
]
}
}

View File

@@ -32,7 +32,7 @@ buildscript {
classpath "com.bytedance.android.byteX:base-plugin:0.3.0"
classpath "com.mogo.cloud:hook:${HOOK_LOG_VERSION}"
classpath 'com.volcengine:apm_insight_plugin:1.4.1'
classpath 'com.mogo.thread.opt:plg:1.0.8'
classpath 'com.mogo.thread.opt:plg:2.0.1'
classpath 'com.mogo.cloud:systrace:1.0.1'
classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.18'

View File

@@ -89,6 +89,7 @@ import com.mogo.module.common.enums.*
import com.zhjt.mogo_core_function_devatools.badcase.consts.BadCaseConfig
import kotlinx.android.synthetic.main.fragment_hmi.*
import kotlinx.android.synthetic.main.view_auto_pilot_check.view.*
import kotlinx.android.synthetic.main.view_och_bus_operation.view.*
import kotlinx.coroutines.*
import mogo_msg.MogoReportMsg
import org.greenrobot.eventbus.EventBus
@@ -338,6 +339,7 @@ import java.util.*
override fun setBusOperationView(view: IOchBusView) {
busOperationStatus = view
busOperationStatus?.showBusOperation()
}
/**

View File

@@ -1,14 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<!-- <corners android:radius="@dimen/module_mogo_och_autopilot_status_bg_corner" />-->
<gradient
android:startColor="#323C6F"
android:endColor="#323C6F"
android:startColor="#6D7BAF"
android:endColor="#3B4577"
android:angle="315"
/>
<size
android:width="120px"
android:height="120px"
android:width="150px"
android:height="150px"
/>
</shape>

View File

@@ -6,6 +6,7 @@
android:layout_height="wrap_content"
android:layout_marginTop="40px"
android:paddingBottom="40px"
android:visibility="gone"
tools:ignore="DuplicateIds">
<View

View File

@@ -60,9 +60,9 @@
<dimen name="hmi_traffic_light_time_size">60px</dimen>
<dimen name="hmi_traffic_light_source_size">32px</dimen>
<dimen name="och_bus_operation_status_bg_width">112px</dimen>
<dimen name="och_bus_operation_status_bg_height">112px</dimen>
<dimen name="module_mogo_och_autopilot_status_text_size">40px</dimen>
<dimen name="och_bus_operation_status_bg_width">150px</dimen>
<dimen name="och_bus_operation_status_bg_height">150px</dimen>
<dimen name="module_mogo_och_autopilot_status_text_size">42px</dimen>
<dimen name="module_mogo_och_margin_left">40px</dimen>
<dimen name="module_mogo_och_margin_bottom">46px</dimen>

View File

@@ -60,9 +60,9 @@
<dimen name="hmi_traffic_light_time_size">60px</dimen>
<dimen name="hmi_traffic_light_source_size">32px</dimen>
<dimen name="och_bus_operation_status_bg_width">100px</dimen>
<dimen name="och_bus_operation_status_bg_height">100px</dimen>
<dimen name="module_mogo_och_autopilot_status_text_size">30px</dimen>
<dimen name="och_bus_operation_status_bg_width">150px</dimen>
<dimen name="och_bus_operation_status_bg_height">150px</dimen>
<dimen name="module_mogo_och_autopilot_status_text_size">42px</dimen>
<dimen name="module_mogo_och_margin_left">40px</dimen>
<dimen name="module_mogo_och_margin_bottom">46px</dimen>
</resources>

View File

@@ -60,7 +60,7 @@ HOOK_LOG_VERSION=1.6.1
SERVICE_CHAIN_VERSION=1.1.0
################ 外部依赖引用 ################
# loglib
LOGLIB_VERSION=1.3.31
LOGLIB_VERSION=1.3.38
######## MogoAiCloudSDK Version ########
# 网络请求LOGLIB_VERSION
MOGO_NETWORK_VERSION=1.4.3.17