[Taxi Passenger v1.1.0] 1、部分UI调整 2、订单逻辑更改

This commit is contained in:
wangmingjun
2022-03-18 18:49:12 +08:00
parent 11c6f2cf2b
commit 5492f781ed
27 changed files with 473 additions and 349 deletions

View File

@@ -149,6 +149,7 @@ public class TaxiPassengerModel implements IOCHTaxiPassengerNaviChangedCallback
if (DebugConfig.getCarMachineType() != DebugConfig.CAR_MACHINE_TYPE_SELF_INNOVATE) {
apis.getLocationInfoApi().start();
}
startOrStopOrderLoop();
}
/**
@@ -270,7 +271,7 @@ public class TaxiPassengerModel implements IOCHTaxiPassengerNaviChangedCallback
}
}
} else {
// 1.2. 当无进行中订单时如果本地也无则跳过如果本地仍存在currentOrder查询此单完成or取消并通知ui更
// 1.2. 当无进行中订单时如果本地也无则跳过如果本地仍存在currentOrder查询此单完成or取消并通知ui更
if (mCurrentOCHOrder != null) {
queryCurOrderStatus();
}
@@ -299,13 +300,18 @@ public class TaxiPassengerModel implements IOCHTaxiPassengerNaviChangedCallback
if (data.data.orderStatus == TaxiPassengerOrderStatusEnum.Cancel.getCode()
|| data.data.orderStatus == TaxiPassengerOrderStatusEnum.JourneyCompleted.getCode()
|| data.data.orderStatus == TaxiPassengerOrderStatusEnum.None.getCode()) {
if (mOrderStatusCallbackMap.size() > 0) {
for (IOCHTaxiPassengerOrderStatusCallback callback :mOrderStatusCallbackMap.values()){
callback.onCurrentOrderStatusChanged(data.data);
}
}
clearCurrentOCHOrder();
} else {
updateNativeCurrentOrder(data.data);
}
if (mOrderStatusCallbackMap.size() > 0) {
for (IOCHTaxiPassengerOrderStatusCallback callback :mOrderStatusCallbackMap.values()){
callback.onCurrentOrderStatusChanged(mCurrentOCHOrder);
if (mOrderStatusCallbackMap.size() > 0) {
for (IOCHTaxiPassengerOrderStatusCallback callback :mOrderStatusCallbackMap.values()){
callback.onCurrentOrderStatusChanged(mCurrentOCHOrder);
}
}
}
}
@@ -367,9 +373,6 @@ public class TaxiPassengerModel implements IOCHTaxiPassengerNaviChangedCallback
endLon, endLat,
carLocation.getLongitude(), carLocation.getLatitude());
mCurrentOCHOrder.decreaseTravelDistance(distance);
// if (mOrderStatusCallback != null && distance >= 0) {
// mOrderStatusCallback.onCurrentOrderDistToEndChanged((long) distance, 0);
// }
}
}
@@ -448,9 +451,6 @@ public class TaxiPassengerModel implements IOCHTaxiPassengerNaviChangedCallback
apis.getLocationInfoApi().provideLocation(mogoLocation);
//位置变化时通过围栏判断是否到达x点
if (location != null && checkCurrentOCHOrder()) {
// if (getCurOrderStatus() == OrderStatusEnum.OnTheWayToStartStation) {
// judgeStartStation(location);
// } else
if (getCurOrderStatus() == TaxiPassengerOrderStatusEnum.OnTheWayToEndStation) {
calculateTravelDistance(location);
}
@@ -580,12 +580,6 @@ public class TaxiPassengerModel implements IOCHTaxiPassengerNaviChangedCallback
TaxiPassengerNaviToDestinationModel.getInstance(mContext).initAMapNavi(startNaviLatLng, endNaviLatLng);
TaxiPassengerNaviToDestinationModel.getInstance(mContext).setOCHTaciNaviChangedCallback(this);
}
// else {
// NaviLatLng startNaviLatLng = new NaviLatLng(40.200478,116.741377);
// NaviLatLng endNaviLatLng = new NaviLatLng(40.200863,116.732574);
// TaxiPassengerNaviToDestinationModel.getInstance(mContext).initAMapNavi(startNaviLatLng, endNaviLatLng);
// TaxiPassengerNaviToDestinationModel.getInstance(mContext).setOCHTaciNaviChangedCallback(this);
// }
}
@Override

View File

@@ -152,7 +152,7 @@ public class TaxiPassengerNaviToDestinationModel implements AMapNaviListener {
public void onCalculateRouteFailure(AMapCalcRouteResult result) {
//路线计算失败
//多路径算路成功回调
if (errorCount.get() < 5){
if (errorCount.get() < 20){
errorCount.getAndIncrement();
if (mNaviChangedCallback != null){
mNaviChangedCallback.reInitNaviAmap(isPlay,true);

View File

@@ -9,7 +9,6 @@ import com.mogo.eagle.core.network.RequestOptions;
import com.mogo.eagle.core.network.SubscribeImpl;
import com.mogo.eagle.core.utilcode.mogo.logger.Logger;
import com.mogo.module.common.MogoApisHandler;
import com.mogo.och.taxi.passenger.bean.TaxiPassengerCarHeartbeatReqBean;
import com.mogo.och.taxi.passenger.bean.TaxiPassengerOrderQueryReqBean;
import com.mogo.och.taxi.passenger.bean.TaxiPassengerOrderQueryRespBean;
import com.mogo.och.taxi.passenger.bean.TaxiPassengerOrdersInServiceQueryRespBean;
@@ -47,8 +46,8 @@ public class TaxiPassengerServiceManager {
* @return
*/
private String getDriverAppSn(){
// return CallerTelematicManager.INSTANCE.getServerToken();
return "X2020211111NG0XNFK";
return CallerTelematicManager.INSTANCE.getServerToken();
// return "X202021061514D29A1C2A926002";
}
/**

View File

@@ -2,7 +2,6 @@ package com.mogo.och.taxi.passenger.presenter;
import android.location.Location;
import android.os.Looper;
import android.util.Log;
import androidx.annotation.NonNull;
import androidx.lifecycle.LifecycleOwner;
@@ -120,7 +119,6 @@ public class BaseTaxiPassengerPresenter extends Presenter<TaxiPassengerBaseFragm
@Override
public void onCurrentOrderStatusChanged(TaxiPassengerOrderQueryRespBean.Result order) {
Log.d(TAG,"order = "+order.toString());
if (mCurrentPassengerOrder == null){
mCurrentPassengerOrder = order; //当前无订单
updateOrderView(order);
@@ -136,6 +134,7 @@ public class BaseTaxiPassengerPresenter extends Presenter<TaxiPassengerBaseFragm
}
private void updateOrderView(TaxiPassengerOrderQueryRespBean.Result order) {
Logger.d(TAG,"updateOrderView = "+order.orderStatus);
if (TaxiPassengerOrderStatusEnum.Cancel.getCode() == order.orderStatus){
mView.showOrHideServingOrderFragment(false);
recoverNaviInfo();
@@ -151,12 +150,14 @@ public class BaseTaxiPassengerPresenter extends Presenter<TaxiPassengerBaseFragm
runOnUIThread(() ->{
AIAssist.getInstance(getContext()).speakTTSVoice(getContext().getString(R.string.taxi_p_arrive_end_tts));
});
TaxiPassengerNaviToDestinationModel.getInstance(getContext()).destroyAmaNavi();
mView.showOrHideServingOrderFragment(false);
mView.showOrHideArrivedEndLayout(true,order.endSiteAddr);
return;
}
if (TaxiPassengerOrderStatusEnum.JourneyCompleted.getCode() == order.orderStatus){
mView.showOrHideArrivedEndLayout(false,"");
mCurrentPassengerOrder = null;
return;
}
}

View File

@@ -72,6 +72,7 @@ public class TaxiPassengerBaseFragment extends MvpFragment<TaxiPassengerBaseFrag
mTrafficLightView = findViewById(R.id.traffic_light_view);
CallerHmiManager.INSTANCE.setProxyTrafficLightView(mTrafficLightView);
mV2XNotificationView = new TaxiPassengerV2XNotificationView(getContext());
CallerHmiManager.INSTANCE.setProxyNotificationView(mV2XNotificationView);
@@ -114,7 +115,7 @@ public class TaxiPassengerBaseFragment extends MvpFragment<TaxiPassengerBaseFrag
@Override
public void onResume() {
super.onResume();
mPresenter.startOrStopOrderLoop();
// mPresenter.startOrStopOrderLoop();
// showOrHideServingOrderFragment(true);
}
@@ -209,9 +210,7 @@ public class TaxiPassengerBaseFragment extends MvpFragment<TaxiPassengerBaseFrag
FragmentTransaction transaction = getChildFragmentManager().beginTransaction();
if (isShow){
if(ochServingOrderFragment == null){
ochServingOrderFragment = new TaxiPassengerServingOrderFragment().newInstance();
}
ochServingOrderFragment = new TaxiPassengerServingOrderFragment().newInstance();
if (ochServingOrderFragment.isAdded()){
transaction.show(ochServingOrderFragment);
return;

View File

@@ -4,7 +4,6 @@ import android.content.Context;
import android.graphics.Color;
import android.os.Bundle;
import android.util.AttributeSet;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
@@ -172,7 +171,7 @@ public class TaxiPassengerMapDirectionView
@Override
public void onLocationChanged(@Nullable MogoLocation location) {
Logger.d(TAG, "onCarLocationChanged2 :" + location.getLatitude()+":"+location.getLongitude());
// Logger.d(TAG, "onCarLocationChanged2 :" + location.getLatitude()+":"+location.getLongitude());
if (location == null){
return;
}
@@ -180,7 +179,7 @@ public class TaxiPassengerMapDirectionView
//更新车辆位置
if (mCarMarker != null) {
Log.d(TAG, "location.getBearing() = " + location.getBearing());
// Log.d(TAG, "location.getBearing() = " + location.getBearing());
mCarMarker.setRotateAngle(360 - location.getBearing());
mCarMarker.setPosition(currentLatLng);
mCarMarker.setToTop();

View File

@@ -0,0 +1,110 @@
package com.mogo.och.taxi.passenger.ui;
import android.content.Context;
import android.content.res.TypedArray;
import android.graphics.Canvas;
import android.graphics.Path;
import android.os.Build;
import android.util.AttributeSet;
import android.view.View;
import androidx.appcompat.widget.AppCompatImageView;
import com.mogo.och.taxi.passenger.R;
/**
* @author: wangmingjun
* @date: 2021/9/29
*/
public class TaxiPassengerRadiuImageView extends AppCompatImageView {
private float width, height;
private int defaultRadius = 0;
private int radius;
private int leftTopRadius;
private int rightTopRadius;
private int rightBottomRadius;
private int leftBottomRadius;
public TaxiPassengerRadiuImageView(Context context) {
this(context, null);
init(context, null);
}
public TaxiPassengerRadiuImageView(Context context, AttributeSet attrs) {
this(context, attrs, 0);
init(context, attrs);
}
public TaxiPassengerRadiuImageView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
init(context, attrs);
}
private void init(Context context, AttributeSet attrs) {
if (Build.VERSION.SDK_INT < 18) {
setLayerType(View.LAYER_TYPE_SOFTWARE, null);
}
// 读取配置
TypedArray array = context.obtainStyledAttributes(attrs, R.styleable.RoundCornerImageView);
radius = array.getDimensionPixelOffset(R.styleable.RoundCornerImageView_taxi_passenger_radius, defaultRadius);
leftTopRadius = array.getDimensionPixelOffset(R.styleable.RoundCornerImageView_taxi_passenger_left_top_radius, defaultRadius);
rightTopRadius = array.getDimensionPixelOffset(R.styleable.RoundCornerImageView_taxi_passenger_right_top_radius, defaultRadius);
rightBottomRadius = array.getDimensionPixelOffset(R.styleable.RoundCornerImageView_taxi_passenger_right_bottom_radius, defaultRadius);
leftBottomRadius = array.getDimensionPixelOffset(R.styleable.RoundCornerImageView_taxi_passenger_left_bottom_radius, defaultRadius);
if (defaultRadius == leftTopRadius) {
leftTopRadius = radius;
}
if (defaultRadius == rightTopRadius) {
rightTopRadius = radius;
}
if (defaultRadius == rightBottomRadius) {
rightBottomRadius = radius;
}
if (defaultRadius == leftBottomRadius) {
leftBottomRadius = radius;
}
array.recycle();
}
@Override
protected void onLayout(boolean changed, int left, int top, int right, int bottom) {
super.onLayout(changed, left, top, right, bottom);
width = getWidth();
height = getHeight();
}
@Override
protected void onDraw(Canvas canvas) {
//这里做下判断,只有图片的宽高大于设置的圆角距离的时候才进行裁剪
int maxLeft = Math.max(leftTopRadius, leftBottomRadius);
int maxRight = Math.max(rightTopRadius, rightBottomRadius);
int minWidth = maxLeft + maxRight;
int maxTop = Math.max(leftTopRadius, rightTopRadius);
int maxBottom = Math.max(leftBottomRadius, rightBottomRadius);
int minHeight = maxTop + maxBottom;
if (width >= minWidth && height > minHeight) {
Path path = new Path();
//右上,右下,左下,左上
path.moveTo(leftTopRadius, 0);
path.lineTo(width - rightTopRadius, 0);
path.quadTo(width, 0, width, rightTopRadius);
path.lineTo(width, height - rightBottomRadius);
path.quadTo(width, height, width - rightBottomRadius, height);
path.lineTo(leftBottomRadius, height);
path.quadTo(0, height, 0, height - leftBottomRadius);
path.lineTo(0, leftTopRadius);
path.quadTo(0, 0, leftTopRadius, 0);
canvas.clipPath(path);
}
super.onDraw(canvas);
}
}

View File

@@ -10,11 +10,11 @@ import android.view.View;
import android.view.animation.Animation;
import android.view.animation.RotateAnimation;
import android.widget.ImageView;
import android.widget.SeekBar;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.RequiresApi;
import androidx.appcompat.widget.AppCompatSeekBar;
import com.mogo.commons.mvp.MvpFragment;
import com.mogo.eagle.core.data.map.MogoLatLng;
@@ -66,10 +66,10 @@ public class TaxiPassengerServingOrderFragment extends
private float lastBearing = 0;
private RotateAnimation rotateAnimation;
private SeekBar mProgressSeekBar;
private AppCompatSeekBar mProgressSeekBar;
private TextView mProgessDes;
private TaxiPassengerCardView mSpeedLayoutBg;
private TaxiPassengerRadiuImageView mSpeedLayoutBg;
private int mLimitingVelocity = 0;// 返回的道路限速值
@@ -107,6 +107,7 @@ public class TaxiPassengerServingOrderFragment extends
mMapArrowIcon = findViewById(R.id.taxi_p_arrow_nor);
mProgressSeekBar = findViewById(R.id.taxi_p_seekbar);
mProgressSeekBar.setFocusableInTouchMode(false);
mProgessDes = findViewById(R.id.taxi_p_progress_des);
mSpeedLayoutBg = findViewById(R.id.taxi_p_speed_bg);
@@ -341,9 +342,12 @@ public class TaxiPassengerServingOrderFragment extends
@RequiresApi(api = Build.VERSION_CODES.N)
private void updateDriveProcessLoading(int progressLoading,String currentRoadName) {
mProgessDes.setText(currentRoadName);
int progressInt = SharedPrefsMgr.getInstance(getContext()).getInt(TaxiPassengerConst.SP_KEY_ORDER_SUM_DIS,0) - progressLoading;
Logger.d(TAG,"progressInt = "+progressInt);
mProgressSeekBar.setProgress(
SharedPrefsMgr.getInstance(getContext()).getInt(TaxiPassengerConst.SP_KEY_ORDER_SUM_DIS,0) - progressLoading
progressInt
, true);
mProgressSeekBar.jumpDrawablesToCurrentState();
}
@@ -467,13 +471,13 @@ public class TaxiPassengerServingOrderFragment extends
*/
private void updateSpeedView(float newSpeed) {
int speed = (int) (Math.abs(newSpeed) * 3.6F); // 倒车时工控机反馈定位信息中speed为负值
Logger.d(TAG,"mLimitingVelocity = "+mLimitingVelocity);
if (speed < mLimitingVelocity) {
mTPSpeedTv.setText(getSpeedTextStyle(String.valueOf(speed), true));
mSpeedLayoutBg.setBackgroundResource(R.drawable.taxi_p_speed_light_green_bg);
} else {
// Logger.d(TAG,"mLimitingVelocity = "+mLimitingVelocity);
if (mLimitingVelocity > 0 && speed >= mLimitingVelocity) {
mTPSpeedTv.setText(getSpeedTextStyle(String.valueOf(speed), false));
mSpeedLayoutBg.setBackgroundResource(R.drawable.taxi_p_speed_light_red_bg);
mSpeedLayoutBg.setImageResource(R.drawable.taxi_p_speed_light_red_bg);
} else {
mTPSpeedTv.setText(getSpeedTextStyle(String.valueOf(speed), true));
mSpeedLayoutBg.setImageResource(R.drawable.taxi_p_speed_light_green_bg);
}
}
@@ -518,7 +522,7 @@ public class TaxiPassengerServingOrderFragment extends
*/
private void startIvCompass(float bearing) {
bearing = 360 - bearing;
Log.d(TAG, "startIvCompass: " + bearing);
// Log.d(TAG, "startIvCompass: " + bearing);
rotateAnimation = new RotateAnimation(lastBearing, bearing, Animation.RELATIVE_TO_SELF
, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
rotateAnimation.setFillAfter(true);

Binary file not shown.

After

Width:  |  Height:  |  Size: 495 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1004 B

After

Width:  |  Height:  |  Size: 256 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 495 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1004 B

After

Width:  |  Height:  |  Size: 256 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -3,6 +3,8 @@
<corners android:bottomRightRadius="40px"
android:bottomLeftRadius="40px"/>
<gradient
android:startColor="#26263A5B"
android:angle="315"
android:type="linear"
android:startColor="#001B2B47"
android:endColor="#80263A5B"/>
</shape>

View File

@@ -1,17 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 背景图 -->
<item android:id="@android:id/background">
<item android:id="@android:id/background"
android:height="@dimen/dp_7"
android:gravity="center_vertical">
<shape>
<corners android:radius="20dp"/>
<solid android:color="#00e2e2e2" />
<solid android:color="#1A3FA5FF"/>
</shape>
</item>
<item android:id="@android:id/progress">
<item android:id="@android:id/progress"
android:height="@dimen/dp_7"
android:gravity="center_vertical">
<clip>
<shape>
<corners android:radius="20dp"/>
<solid android:color="#84D4FF" /> <!-- #3FA5FF #84D4FF 渐变-->
<gradient
android:angle="0"
android:type="linear"
android:startColor="#1A3FA5FF"
android:endColor="#84D4FF"/>
</shape>
</clip>
</item>

View File

@@ -1,303 +1,322 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="@dimen/taxi_p_order_panel_width"
android:layout_height="match_parent">
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="@dimen/taxi_p_order_panel_width"
android:layout_height="@dimen/taxi_p_order_panel_height"
android:layout_marginTop="@dimen/dp_55"
android:background="@drawable/taxi_passenger_order_bg"
<androidx.cardview.widget.CardView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:cardBackgroundColor="@android:color/transparent"
app:cardCornerRadius="@dimen/dp_40"
app:cardElevation="@dimen/dp_15"
app:cardPreventCornerOverlap="false"
app:cardUseCompatPadding="true"
app:contentPaddingLeft="@dimen/dp_10"
android:layout_marginTop="@dimen/dp_40"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent">
<com.mogo.och.taxi.passenger.ui.TaxiPassengerCardView
android:id="@+id/taxi_p_speed_bg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:taxi_right_top_radius="@dimen/dp_40"
app:taxi_left_top_radius="@dimen/dp_40"
android:background="@drawable/taxi_p_speed_light_green_bg"/>
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/taxi_p_order_stations"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_96"
android:background="#2661A2DC"
android:paddingTop="@dimen/dp_24"
android:paddingBottom="@dimen/dp_24"
android:layout_width="@dimen/taxi_p_order_panel_width"
android:layout_height="@dimen/taxi_p_order_panel_height"
android:background="@drawable/taxi_passenger_order_bg"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent">
<TextView
android:id="@+id/taxi_p_order_status_start_station_tv"
<com.mogo.och.taxi.passenger.ui.TaxiPassengerRadiuImageView
android:id="@+id/taxi_p_speed_bg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="68px"
android:ellipsize="end"
android:maxLines="1"
android:text="--"
android:textColor="#FFFFFF"
android:textSize="30px"
android:src="@drawable/taxi_p_speed_light_green_bg"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent" />
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:taxi_passenger_left_top_radius="@dimen/dp_40"
app:taxi_passenger_right_top_radius="@dimen/dp_40" />
<ImageView
android:id="@+id/taxi_p_blue_dot"
android:layout_width="wrap_content"
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/taxi_p_order_stations"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginRight="20px"
android:background="@drawable/taxi_p_blue_circle_bg"
app:layout_constraintBottom_toBottomOf="@+id/taxi_p_order_status_start_station_tv"
app:layout_constraintRight_toLeftOf="@+id/taxi_p_order_status_start_station_tv"
app:layout_constraintTop_toTopOf="@+id/taxi_p_order_status_start_station_tv" />
android:layout_marginTop="@dimen/dp_96"
android:background="#2661A2DC"
android:paddingTop="@dimen/dp_24"
android:paddingBottom="@dimen/dp_24"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent">
<TextView
android:id="@+id/taxi_p_order_status_start_station_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="68px"
android:ellipsize="end"
android:maxLines="1"
android:text="--"
android:textColor="#FFFFFF"
android:textSize="30px"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<ImageView
android:id="@+id/taxi_p_blue_dot"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="20px"
android:background="@drawable/taxi_p_blue_circle_bg"
app:layout_constraintBottom_toBottomOf="@+id/taxi_p_order_status_start_station_tv"
app:layout_constraintRight_toLeftOf="@+id/taxi_p_order_status_start_station_tv"
app:layout_constraintTop_toTopOf="@+id/taxi_p_order_status_start_station_tv" />
<TextView
android:id="@+id/taxi_p_order_status_end_station_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10px"
android:ellipsize="end"
android:maxLines="1"
android:text="--"
android:textColor="#FFFFFF"
android:textSize="30px"
app:layout_constraintLeft_toLeftOf="@+id/taxi_p_order_status_start_station_tv"
app:layout_constraintTop_toBottomOf="@+id/taxi_p_order_status_start_station_tv" />
<ImageView
android:id="@+id/taxi_p_yellow_dot"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="20px"
android:background="@drawable/taxi_p_yellow_circle_bg"
app:layout_constraintBottom_toBottomOf="@+id/taxi_p_order_status_end_station_tv"
app:layout_constraintRight_toLeftOf="@+id/taxi_p_order_status_end_station_tv"
app:layout_constraintTop_toTopOf="@+id/taxi_p_order_status_end_station_tv" />
<ImageView
android:id="@+id/grab_order_end_dotLine"
android:layout_width="wrap_content"
android:layout_height="0px"
android:scaleType="fitXY"
android:src="@drawable/taxi_p_dot_line"
app:layout_constraintBottom_toTopOf="@+id/taxi_p_yellow_dot"
app:layout_constraintLeft_toLeftOf="@+id/taxi_p_blue_dot"
app:layout_constraintRight_toRightOf="@+id/taxi_p_blue_dot"
app:layout_constraintTop_toBottomOf="@+id/taxi_p_blue_dot" />
</androidx.constraintlayout.widget.ConstraintLayout>
<LinearLayout
android:id="@+id/taxi_p_order_remain"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="24px"
android:orientation="horizontal"
android:paddingLeft="@dimen/dp_48"
android:paddingRight="@dimen/dp_44"
android:weightSum="3"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toBottomOf="@+id/taxi_p_order_stations">
<RelativeLayout
android:id="@+id/taxi_p_order_rl1"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
app:layout_constraintRight_toLeftOf="@+id/taxi_p_order_rl2"
app:layout_constraintTop_toTopOf="parent">
<LinearLayout
android:id="@+id/taxi_p_order_remain_distance_ll"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:orientation="horizontal">
<TextView
android:id="@+id/taxi_p_order_remain_distance"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:includeFontPadding="false"
android:text="0"
android:textColor="#84D4FF"
android:textSize="42px"
android:textStyle="bold" />
<TextView
android:id="@+id/taxi_p_order_remain_distance_unit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/taxi_p_order_remain_distance_title"
android:layout_marginLeft="@dimen/dp_6"
android:layout_toRightOf="@+id/taxi_p_order_remain_distance"
android:includeFontPadding="false"
android:text="KM"
android:textColor="#FFFFFF"
android:textSize="20px" />
</LinearLayout>
<TextView
android:id="@+id/taxi_p_order_remain_distance_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/taxi_p_order_remain_distance_ll"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/dp_10"
android:includeFontPadding="false"
android:text="距离"
android:textColor="#8FB3EF"
android:textSize="20px" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/taxi_p_order_rl2"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
app:layout_constraintRight_toLeftOf="@+id/taxi_p_order_rl3"
app:layout_constraintTop_toTopOf="parent">
<LinearLayout
android:id="@+id/taxi_p_order_remain_distance_ll2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:orientation="horizontal">
<TextView
android:id="@+id/taxi_p_order_remain_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:includeFontPadding="false"
android:text="0"
android:textColor="#84D4FF"
android:textSize="42px"
android:textStyle="bold" />
<TextView
android:id="@+id/taxi_p_order_remain_time_unit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/taxi_p_order_remain_time_title"
android:layout_marginLeft="@dimen/dp_6"
android:layout_toRightOf="@+id/taxi_p_order_remain_time"
android:includeFontPadding="false"
android:text="分钟"
android:textColor="#FFFFFF"
android:textSize="20px" />
</LinearLayout>
<TextView
android:id="@+id/taxi_p_order_remain_time_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/taxi_p_order_remain_distance_ll2"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/dp_10"
android:includeFontPadding="false"
android:text="剩余"
android:textColor="#8FB3EF"
android:textSize="20px" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/taxi_p_order_rl3"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent">
<TextView
android:id="@+id/taxi_p_order_remain_arrive_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:includeFontPadding="false"
android:text="0"
android:textColor="#84D4FF"
android:textSize="42px"
android:textStyle="bold" />
<TextView
android:id="@+id/taxi_p_order_remain_arrive_time_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/taxi_p_order_remain_arrive_time"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/dp_10"
android:includeFontPadding="false"
android:text="到达"
android:textColor="#8FB3EF"
android:textSize="20px" />
</RelativeLayout>
</LinearLayout>
<com.mogo.och.taxi.passenger.ui.TaxiPassengerMapDirectionView
android:id="@+id/taxi_p_order_map_view"
android:layout_width="match_parent"
android:layout_height="@dimen/taxi_p_order_map_height"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent" />
<View
android:layout_width="match_parent"
android:layout_height="@dimen/dp_124"
android:background="@drawable/taxi_p_panel_bottom_bg"
app:layout_constraintBottom_toBottomOf="parent" />
<androidx.appcompat.widget.AppCompatSeekBar
android:id="@+id/taxi_p_seekbar"
android:layout_width="@dimen/dp_250"
android:layout_height="wrap_content"
android:layout_marginBottom="20px"
android:fadingEdge="horizontal"
android:focusable="true"
android:maxHeight="@dimen/dp_14"
android:minHeight="@dimen/dp_14"
android:paddingStart="0dp"
android:paddingEnd="0dp"
android:progressDrawable="@drawable/taxi_p_seekbar_calculator_layer"
android:splitTrack="false"
android:thumb="@drawable/taxi_p_seekbar_point_icon"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="@id/taxi_p_progress_des" />
<TextView
android:id="@+id/taxi_p_order_status_end_station_tv"
android:id="@+id/taxi_p_progress_des"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10px"
android:ellipsize="end"
android:maxLines="1"
android:text="--"
android:textColor="#FFFFFF"
android:textSize="30px"
app:layout_constraintLeft_toLeftOf="@+id/taxi_p_order_status_start_station_tv"
app:layout_constraintTop_toBottomOf="@+id/taxi_p_order_status_start_station_tv" />
android:layout_marginLeft="@dimen/dp_30"
android:paddingRight="@dimen/dp_10"
android:textColor="@android:color/white"
android:textSize="@dimen/taxi_p_progress_des_size"
android:textStyle="italic"
android:typeface="monospace"
app:layout_constraintBottom_toTopOf="@+id/taxi_p_seekbar"
app:layout_constraintLeft_toLeftOf="parent" />
<ImageView
android:id="@+id/taxi_p_yellow_dot"
android:id="@+id/taxi_p_arrow_nor"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="20px"
android:background="@drawable/taxi_p_yellow_circle_bg"
app:layout_constraintBottom_toBottomOf="@+id/taxi_p_order_status_end_station_tv"
app:layout_constraintRight_toLeftOf="@+id/taxi_p_order_status_end_station_tv"
app:layout_constraintTop_toTopOf="@+id/taxi_p_order_status_end_station_tv" />
<ImageView
android:id="@+id/grab_order_end_dotLine"
android:layout_width="wrap_content"
android:layout_height="0px"
android:scaleType="fitXY"
android:src="@drawable/taxi_p_dot_line"
app:layout_constraintBottom_toTopOf="@+id/taxi_p_yellow_dot"
app:layout_constraintLeft_toLeftOf="@+id/taxi_p_blue_dot"
app:layout_constraintRight_toRightOf="@+id/taxi_p_blue_dot"
app:layout_constraintTop_toBottomOf="@+id/taxi_p_blue_dot" />
android:layout_marginRight="@dimen/dp_44"
android:layout_marginBottom="@dimen/dp_10"
android:src="@drawable/taxi_p_arrow_nor"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintRight_toRightOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
<LinearLayout
android:id="@+id/taxi_p_order_remain"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="24px"
android:orientation="horizontal"
android:paddingLeft="@dimen/dp_48"
android:paddingRight="@dimen/dp_44"
android:weightSum="3"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toBottomOf="@+id/taxi_p_order_stations">
<RelativeLayout
android:id="@+id/taxi_p_order_rl1"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
app:layout_constraintRight_toLeftOf="@+id/taxi_p_order_rl2"
app:layout_constraintTop_toTopOf="parent">
<LinearLayout
android:id="@+id/taxi_p_order_remain_distance_ll"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:orientation="horizontal">
<TextView
android:id="@+id/taxi_p_order_remain_distance"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="0"
android:textColor="#84D4FF"
android:includeFontPadding="false"
android:textSize="42px"
android:textStyle="bold" />
<TextView
android:id="@+id/taxi_p_order_remain_distance_unit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/taxi_p_order_remain_distance_title"
android:layout_marginLeft="@dimen/dp_6"
android:layout_toRightOf="@+id/taxi_p_order_remain_distance"
android:text="KM"
android:textColor="#FFFFFF"
android:includeFontPadding="false"
android:textSize="20px" />
</LinearLayout>
<TextView
android:id="@+id/taxi_p_order_remain_distance_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/taxi_p_order_remain_distance_ll"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/dp_10"
android:text="距离"
android:includeFontPadding="false"
android:textColor="#8FB3EF"
android:textSize="20px" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/taxi_p_order_rl2"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
app:layout_constraintRight_toLeftOf="@+id/taxi_p_order_rl3"
app:layout_constraintTop_toTopOf="parent">
<LinearLayout
android:id="@+id/taxi_p_order_remain_distance_ll2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:orientation="horizontal">
<TextView
android:id="@+id/taxi_p_order_remain_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="0"
android:textColor="#84D4FF"
android:includeFontPadding="false"
android:textSize="42px"
android:textStyle="bold" />
<TextView
android:id="@+id/taxi_p_order_remain_time_unit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/taxi_p_order_remain_time_title"
android:layout_marginLeft="@dimen/dp_6"
android:layout_toRightOf="@+id/taxi_p_order_remain_time"
android:text="分钟"
android:textColor="#FFFFFF"
android:includeFontPadding="false"
android:textSize="20px" />
</LinearLayout>
<TextView
android:id="@+id/taxi_p_order_remain_time_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/taxi_p_order_remain_distance_ll2"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/dp_10"
android:text="剩余"
android:includeFontPadding="false"
android:textColor="#8FB3EF"
android:textSize="20px" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/taxi_p_order_rl3"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent">
<TextView
android:id="@+id/taxi_p_order_remain_arrive_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:text="0"
android:includeFontPadding="false"
android:textColor="#84D4FF"
android:textSize="42px"
android:textStyle="bold" />
<TextView
android:id="@+id/taxi_p_order_remain_arrive_time_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/taxi_p_order_remain_arrive_time"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/dp_10"
android:text="到达"
android:includeFontPadding="false"
android:textColor="#8FB3EF"
android:textSize="20px" />
</RelativeLayout>
</LinearLayout>
<com.mogo.och.taxi.passenger.ui.TaxiPassengerMapDirectionView
android:id="@+id/taxi_p_order_map_view"
android:layout_width="match_parent"
android:layout_height="@dimen/taxi_p_order_map_height"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent" />
<SeekBar
android:id="@+id/taxi_p_seekbar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:thumbOffset="0dp"
android:focusable="true"
style="@style/CustomSeekbarStyle"
android:layout_marginBottom="36px"
android:layout_marginLeft="34px"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintBottom_toBottomOf="parent"/>
<TextView
android:id="@+id/taxi_p_progress_des"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintLeft_toLeftOf="@+id/taxi_p_seekbar"
app:layout_constraintBottom_toTopOf="@+id/taxi_p_seekbar"
android:textColor="@android:color/white"
android:textSize="@dimen/taxi_p_progress_des_size"
android:textStyle="italic"
android:typeface="monospace"
android:layout_marginBottom="@dimen/dp_15"/>
<ImageView
android:id="@+id/taxi_p_arrow_nor"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="@dimen/dp_44"
android:layout_marginBottom="@dimen/dp_10"
android:src="@drawable/taxi_p_arrow_nor"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintRight_toRightOf="parent" />
<View
android:layout_width="match_parent"
android:layout_height="@dimen/dp_124"
app:layout_constraintBottom_toBottomOf="parent"
android:background="@drawable/taxi_p_map_bottom_shape"/>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.cardview.widget.CardView>
<LinearLayout
android:id="@+id/taxi_p_speed_ll"
android:layout_width="match_parent"
android:layout_width="@dimen/taxi_p_order_panel_width"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginLeft="@dimen/dp_20"
android:elevation="10dp"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent">
@@ -305,7 +324,7 @@
android:id="@+id/taxi_p_speed_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp_28"
android:layout_marginLeft="@dimen/dp_30"
android:shadowColor="@color/taxi_p_speed_color"
android:shadowDx="0"
android:shadowDy="1"

View File

@@ -99,8 +99,8 @@
android:id="@+id/module_mogo_och_navi_panel_container"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="40px"
android:layout_marginTop="180px"
android:layout_marginTop="@dimen/dp_150"
android:layout_marginRight="@dimen/dp_30"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"/>
@@ -118,8 +118,8 @@
android:id="@+id/taxi_p_arrive_end_bg"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/taxi_p_arrive_end_panel_bg"
android:visibility="gone">
android:visibility="gone"
android:background="@drawable/taxi_p_arrive_end_panel_bg">
<TextView
android:id="@+id/arrived_title"
android:layout_width="wrap_content"
@@ -153,6 +153,7 @@
android:layout_marginTop="@dimen/dp_30"
android:textColor="@color/taxi_p_arrive_end_tip_color"
android:textSize="@dimen/taxi_p_arrived_end_tip_size"
android:includeFontPadding="false"
android:text="@string/taxi_p_arrived_end_tips"/>
<View
android:layout_width="@dimen/dp_18"

View File

@@ -21,6 +21,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/taxi_p_v2x_notification_text_margin_left"
android:paddingRight="@dimen/taxi_p_v2x_notification_text_margin_right"
android:text="预警信息"
android:textColor="#FFFFFF"
android:textSize="@dimen/taxi_p_v2x_notification_text_size"

View File

@@ -47,6 +47,7 @@
<dimen name="taxi_p_v2x_notification_icon_size">120px</dimen>
<dimen name="taxi_p_v2x_notification_text_size">39px</dimen>
<dimen name="taxi_p_v2x_notification_text_margin_left">20px</dimen>
<dimen name="taxi_p_v2x_notification_text_margin_right">30px</dimen>
<dimen name="taxi_p_arrived_end_tv_size">82px</dimen>
<dimen name="taxi_p_arrived_end_tip_size">42px</dimen>

View File

@@ -116,4 +116,6 @@
<dimen name="taxi_p_v2x_notification_icon_size">120px</dimen>
<dimen name="taxi_p_v2x_notification_text_size">39px</dimen>
<dimen name="taxi_p_v2x_notification_text_margin_left">20px</dimen>
<dimen name="taxi_p_v2x_notification_text_margin_right">30px</dimen>
</resources>

View File

@@ -6,22 +6,13 @@
<attr name="taxi_right_bottom_radius" format="dimension" />
<attr name="taxi_left_bottom_radius" format="dimension" />
</declare-styleable>
<!--阴影布局 -->
<declare-styleable name="ShadowLayout">
<!-- 阴影颜色-->
<attr name="shadowColor" format="color"/>
<!-- 圆角大小默认无圆角0-->
<attr name="shadowRadius" format="dimension"/>
<!-- 模糊半径 -->
<attr name="blurRadius" format="dimension" />
<!-- 是否有点击效果-->
<attr name="hasEffect" format="boolean"/>
<attr name="bgColor" format="color"/>
<!-- 水平位移-->
<attr name="xOffset" format="dimension"/>
<!--竖直位移 -->
<attr name="yOffset" format="dimension"/>
<declare-styleable name="RoundCornerImageView">
<attr name="taxi_passenger_radius" format="dimension" />
<attr name="taxi_passenger_left_top_radius" format="dimension" />
<attr name="taxi_passenger_right_top_radius" format="dimension" />
<attr name="taxi_passenger_right_bottom_radius" format="dimension" />
<attr name="taxi_passenger_left_bottom_radius" format="dimension" />
</declare-styleable>
</resources>

View File

@@ -108,6 +108,8 @@
<dimen name="taxi_p_v2x_notification_icon_size">120px</dimen>
<dimen name="taxi_p_v2x_notification_text_size">39px</dimen>
<dimen name="taxi_p_v2x_notification_text_margin_left">20px</dimen>
<dimen name="taxi_p_v2x_notification_text_margin_right">30px</dimen>
<dimen name="taxi_p_arrived_end_tv_size">82px</dimen>
<dimen name="taxi_p_arrived_end_tip_size">42px</dimen>

View File

@@ -21,7 +21,7 @@
<string name="taxi_p_arrive_to_start">准备出发</string>
<string name="taxi_p_start_to_end">正在前往目的地</string>
<string name="taxi_p_arrive_end_tts_200">即将到达目的地,请您收好好随声物品,准备下车</string>
<string name="taxi_p_arrive_end_tts">已达到目的地,请从右侧下车,感谢乘坐蘑菇车联无人驾驶车</string>
<string name="taxi_p_arrive_end_tts">已达到目的地,请从右侧下车,感谢乘坐\'蘑菇车联\'无人驾驶车</string>
<string name="taxi_p_arrived_title">已到达</string>
<string name="taxi_p_arrived_end_tips">感谢您使用蘑菇车联自动驾驶出行服务,期待下次与您相遇</string>
</resources>

View File

@@ -11,12 +11,4 @@
<item name="android:textSize">32px</item>
</style>
<!--自定义seekbarstyle-->
<style name="CustomSeekbarStyle" >
<item name="android:height">20px</item>
<item name="android:width">248px</item>
<item name="android:indeterminateOnly">false</item>
<item name="android:progressDrawable">@drawable/taxi_p_seekbar_calculator_layer</item>
<item name="android:thumb">@drawable/taxi_p_seekbar_point_icon</item>
</style>
</resources>

View File

@@ -231,6 +231,7 @@ public class OCHTaxiFragment extends BaseOchTaxiTabFragment<OCHTaxiFragment, OCH
mPresenter.cancelOrderById(orderNo,reasonType,reason);
}
public void onCurrentOrderCancelDone(){
startOrStopLoadingAnim(false);
if (null == serverOrdersFragment) return;
serverOrdersFragment.onCurrentOrderCancelDone();
}

View File

@@ -90,7 +90,7 @@ WEBSOCKET_VERSION=1.1.7
applicationId=com.mogo.launcer
applicationName=IntelligentPilot
# RoboBus司机端2.5.1RoboTaxi司机端2.5.1RoboTaxi乘客端1.0.0
versionCode=80008
versionCode=8000800
versionName=2.5.5
################# 新架构模块Maven版本管理 #################