[fix]
[订单距离、自动探查]
This commit is contained in:
yangyakun
2024-07-11 17:39:07 +08:00
parent 8fd0816dff
commit 05512619e3
44 changed files with 233 additions and 45 deletions

View File

@@ -1,6 +1,6 @@
package com.mogo.och.common.module.biz.order
import com.mogo.och.common.module.biz.order.BaseOrderBean
import com.mogo.och.data.taxi.BaseOrderBean
interface OrderListener {
// 当前进行单状态变更:新到进行中订单、进行中单状态变更

View File

@@ -1,5 +1,6 @@
package com.mogo.och.common.module.biz.order
import com.mogo.och.data.taxi.BaseOrderBean
import java.util.concurrent.ConcurrentHashMap
object OrderModel {

View File

@@ -0,0 +1,38 @@
package com.mogo.och.common.module.wigets.rodedata
import android.content.Context
import android.util.AttributeSet
import com.mogo.eagle.core.function.hmi.ui.notice.exploration.AutomaticExplorationView
import com.mogo.och.data.taxi.BaseOrderBean
import com.mogo.och.common.module.biz.order.OrderListener
import com.mogo.och.common.module.biz.order.OrderModel
import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum
class OchAutomaticExplorationView @JvmOverloads constructor(
context: Context,
attrs: AttributeSet? = null,
defStyleAttr: Int = 0
) : AutomaticExplorationView(context, attrs, defStyleAttr), OrderListener {
private val TAG = "OchAutomaticExplorationView"
init {
OrderModel.setOrderStatusCallback(TAG,this)
}
override fun onCurrentOrderStatusChanged(order: BaseOrderBean?) {
if(order==null){
}else {
when (order.orderStatus) {
TaxiOrderStatusEnum.None.code -> {}
TaxiOrderStatusEnum.OnTheWayToStart.code -> {}
TaxiOrderStatusEnum.ArriveAtStart.code -> {}
TaxiOrderStatusEnum.UserArriveAtStart.code -> {}
TaxiOrderStatusEnum.OnTheWayToEnd.code -> {}
TaxiOrderStatusEnum.ArriveAtEnd.code -> {}
TaxiOrderStatusEnum.JourneyCompleted.code -> {}
TaxiOrderStatusEnum.Cancel.code -> {}
else -> {}
}
}
}
}

View File

@@ -41,7 +41,9 @@ dependencies {
if (Boolean.valueOf(USE_MAVEN_PACKAGE)) {
api rootProject.ext.dependencies.mogoutils
api rootProject.ext.dependencies.mogo_core_data
}else {
api project(":core:mogo-core-utils")
api project(':core:mogo-core-data')
}
}

View File

@@ -1,4 +1,4 @@
package com.mogo.och.common.module.biz.order;
package com.mogo.och.data.taxi;
public class BaseOrderBean {
public String orderNo;// 订单号

View File

@@ -1,4 +1,4 @@
package com.mogo.och.taxi.bean;
package com.mogo.och.data.taxi;
/**
* Created on 2021/9/7

View File

@@ -1,4 +1,4 @@
package com.mogo.och.taxi.bean;
package com.mogo.och.data.taxi;
import com.mogo.eagle.core.data.BaseData;

View File

@@ -0,0 +1,5 @@
package com.mogo.och.data.taxi
data class QueryCarOrderByNoReqBean(
var sn: String, var orderNo: String
)

View File

@@ -0,0 +1,14 @@
package com.mogo.och.data.taxi
import com.mogo.eagle.core.data.BaseData
data class QueryCarOrderByNoRespBean(var data: Result) : BaseData() {
data class Result(
var sn: String,
var bookingUserPhone: String,
var businessType: String,
var mileage: Float,
var duration: Float,
var passengerSize: Int
):BaseOrderBean()
}

View File

@@ -1,7 +1,7 @@
package com.mogo.och.taxi.bean;
import com.mogo.eagle.core.data.BaseData;
import com.mogo.och.common.module.biz.order.BaseOrderBean;
import com.mogo.och.data.taxi.BaseOrderBean;
import java.util.List;
import java.util.Objects;

View File

@@ -3,7 +3,7 @@ package com.mogo.och.taxi.callback;
import androidx.annotation.NonNull;
import com.mogo.och.taxi.bean.OrderQueryRespBean;
import com.mogo.och.taxi.bean.OrderQueryRouteInfoRespBean;
import com.mogo.och.data.taxi.OrderQueryRouteInfoRespBean;
import java.util.List;

View File

@@ -65,7 +65,7 @@ import com.mogo.och.taxi.bean.DriverServiceDataRespBean;
import com.mogo.och.taxi.bean.OrderGrabRespBean;
import com.mogo.och.taxi.bean.OrderGrabStatusQueryRespBean;
import com.mogo.och.taxi.bean.OrderQueryRespBean;
import com.mogo.och.taxi.bean.OrderQueryRouteInfoRespBean;
import com.mogo.och.data.taxi.OrderQueryRouteInfoRespBean;
import com.mogo.och.taxi.bean.OrderRouteUpdateReqBean;
import com.mogo.och.taxi.bean.OrdersInServiceQueryRespBean;
import com.mogo.och.taxi.bean.OrdersListQueryRespBean;

View File

@@ -9,8 +9,8 @@ import com.mogo.och.taxi.bean.OrderGrabRespBean;
import com.mogo.och.taxi.bean.OrderGrabStatusQueryRespBean;
import com.mogo.och.taxi.bean.OrderQueryReqBean;
import com.mogo.och.taxi.bean.OrderQueryRespBean;
import com.mogo.och.taxi.bean.OrderQueryRouteInfoReqBean;
import com.mogo.och.taxi.bean.OrderQueryRouteInfoRespBean;
import com.mogo.och.data.taxi.OrderQueryRouteInfoReqBean;
import com.mogo.och.data.taxi.OrderQueryRouteInfoRespBean;
import com.mogo.och.taxi.bean.OrderRouteUpdateReqBean;
import com.mogo.och.taxi.bean.OrderStatusUpdateReqBean;
import com.mogo.och.taxi.bean.OrdersInServiceQueryRespBean;

View File

@@ -9,6 +9,8 @@ import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.common.module.network.OchCommonSubscribeImpl
import com.mogo.och.common.module.network.interceptor.transformTry
import com.mogo.och.data.taxi.OrderQueryRouteInfoReqBean
import com.mogo.och.data.taxi.OrderQueryRouteInfoRespBean
import com.mogo.och.taxi.bean.*
import io.reactivex.Observable

View File

@@ -26,7 +26,7 @@ import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager;
import com.mogo.och.common.module.manager.autopilot.line.LineManager;
import com.mogo.och.common.module.voice.VoiceNotice;
import com.mogo.och.taxi.bean.OrderQueryRespBean;
import com.mogo.och.taxi.bean.OrderQueryRouteInfoRespBean;
import com.mogo.och.data.taxi.OrderQueryRouteInfoRespBean;
import com.mogo.och.taxi.callback.ITaxiADASStatusCallback;
import com.mogo.och.taxi.callback.ITaxiControllerStatusCallback;
import com.mogo.och.taxi.callback.ITaxiOrderStatusCallback;

View File

@@ -43,7 +43,7 @@ import com.mogo.och.taxi.R;
import com.mogo.och.taxi.constant.TaxiConst;
import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum;
import com.mogo.och.taxi.bean.OrderQueryRespBean;
import com.mogo.och.taxi.bean.OrderQueryRouteInfoRespBean;
import com.mogo.och.data.taxi.OrderQueryRouteInfoRespBean;
import com.mogo.och.taxi.model.TaxiModel;
import java.util.Calendar;
@@ -430,6 +430,7 @@ public class TaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment
dis = NumberFormatUtil.formatLong( (double) distance/ 1000);
}
dialog.setOrderMileage(distance);
String strHtml2 = "<font color=\"#CAD6FF\">全程 </font>" + "<b><font color=\"#FFFFFF\">" + dis + "</font></b>" + "<font color=\"#CAD6FF\"> 公里</font>"
+ "<font color=\"#CAD6FF\">,总用时 </font>" + "<b><font color=\"#FFFFFF\">" + (int)Math.ceil( (double) duration/ 60) + "</font></b>" + "<font color=\"#CAD6FF\"> 分钟</font>";

View File

@@ -24,7 +24,7 @@ import com.mogo.och.common.module.biz.login.OpenOrderStatusEnum;
import com.mogo.och.taxi.R;
import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum;
import com.mogo.och.taxi.bean.OrderQueryRespBean;
import com.mogo.och.taxi.bean.OrderQueryRouteInfoRespBean;
import com.mogo.och.data.taxi.OrderQueryRouteInfoRespBean;
import com.mogo.och.taxi.model.TaxiModel;
import com.mogo.och.taxi.presenter.TaxiPresenter;
import com.mogo.och.taxi.utils.TPRouteDataTestUtils;

View File

@@ -23,12 +23,11 @@ import com.google.android.material.tabs.TabLayout;
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger;
import com.mogo.och.taxi.R;
import com.mogo.och.taxi.bean.OrderQueryRespBean;
import com.mogo.och.taxi.bean.OrderQueryRouteInfoRespBean;
import com.mogo.och.data.taxi.OrderQueryRouteInfoRespBean;
import java.util.ArrayList;
import java.util.List;
import me.jessyan.autosize.AutoSize;
import me.jessyan.autosize.utils.AutoSizeUtils;
/**

View File

@@ -1,7 +1,7 @@
package com.mogo.och.taxi.passenger.bean;
import com.mogo.eagle.core.data.BaseData;
import com.mogo.och.common.module.biz.order.BaseOrderBean;
import com.mogo.och.data.taxi.BaseOrderBean;
import java.util.List;
import java.util.Objects;

View File

@@ -16,4 +16,5 @@ interface IOCHTaxiPassengerOrderStatusCallback {
fun onDriverHasCheckedPilotCondition(isBoarded: Boolean){}
fun onMessageGo2OverMapview(){}
fun onCurrentOrderDistAndduration(distanceToEnd: Long, durationToEnd: Long)
}

View File

@@ -37,6 +37,7 @@ import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum
import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum.Companion.valueOf
import com.mogo.och.taxi.passenger.network.TaxiPassengerServiceManager
import com.mogo.och.common.module.biz.order.OrderModel
import com.mogo.och.data.taxi.OrderQueryRouteInfoRespBean
import com.mogo.och.taxi.passenger.utils.TaxiPassengerAnalyticsManager
import java.util.concurrent.ConcurrentHashMap
@@ -375,4 +376,23 @@ object TaxiPassengerModel {
TrajectoryAndDistanceManager.setStationPoint(null, null, -1L)
}
fun queryOrderRouteInfo() {
if (currentOCHOrder == null) return
TaxiPassengerServiceManager.queryOrderRouteInfo(
currentOCHOrder!!.orderNo,
object : OchCommonServiceCallback<OrderQueryRouteInfoRespBean> {
override fun onSuccess(data: OrderQueryRouteInfoRespBean) {
if (data.data != null && currentOCHOrder != null ) {
for (callback in mOrderStatusCallbackMap.values) {
callback.onCurrentOrderDistAndduration(data.data.distanceToEnd,data.data.durationToEnd)
}
}
}
override fun onFail(code: Int, msg: String) {}
}
)
}
}

View File

@@ -2,6 +2,8 @@ package com.mogo.och.taxi.passenger.network
import com.mogo.cloud.passport.MoGoAiCloudClientConfig
import com.mogo.commons.storage.SharedPrefsMgr
import com.mogo.och.data.taxi.OrderQueryRouteInfoReqBean
import com.mogo.och.data.taxi.OrderQueryRouteInfoRespBean
import com.mogo.och.taxi.passenger.bean.TaxiPassengerBaseRespBean
import com.mogo.och.taxi.passenger.bean.TaxiPassengerCheckPhoneUpdateOrderReqBean
import com.mogo.och.taxi.passenger.bean.TaxiPassengerOrderQueryReqBean
@@ -90,4 +92,18 @@ internal interface TaxiPassengerServiceApi {
@Header("ticket") ticket: String= SharedPrefsMgr.getInstance().token,
@Body data: TaxiPassengerStartReqBean
): Observable<TaxiPassengerBaseRespBean>
/**
* 查询订单路径规划信息(到上车点、起始点间的距离和预估时间)
* @param data
* @return
*/
@Headers("Content-type:application/json;charset=UTF-8") // @POST( "/autopilot-car-hailing/api/v1/driver/routeInfo/query" )
@POST("/autopilot-car-hailing/order/v2/driver/taxi/routeInfo/query")
fun queryOrderRouteInfo(
@Header("appId") appId: String?,
@Header("ticket") ticket: String?,
@Body data: OrderQueryRouteInfoReqBean?
): Observable<OrderQueryRouteInfoRespBean>
}

View File

@@ -1,8 +1,10 @@
package com.mogo.och.taxi.passenger.network
import android.content.Context
import com.mogo.cloud.passport.MoGoAiCloudClientConfig
import com.mogo.och.taxi.passenger.bean.TaxiPassengerOrdersInServiceQueryRespBean
import com.mogo.commons.AbsMogoApplication
import com.mogo.commons.storage.SharedPrefsMgr
import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager
import com.mogo.och.taxi.passenger.bean.TaxiPassengerBaseRespBean
import com.mogo.och.taxi.passenger.bean.TaxiPassengerCheckPhoneUpdateOrderReqBean
@@ -14,6 +16,8 @@ import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.common.module.network.OchCommonSubscribeImpl
import com.mogo.och.common.module.network.interceptor.transformTry
import com.mogo.och.data.taxi.OrderQueryRouteInfoReqBean
import com.mogo.och.data.taxi.OrderQueryRouteInfoRespBean
import com.mogo.och.taxi.passenger.bean.TaxiPassengerOrderQueryReqBean
import com.mogo.och.taxi.passenger.bean.TaxiPassengerOrderQueryRespBean
@@ -124,5 +128,27 @@ object TaxiPassengerServiceManager {
.subscribe(OchCommonSubscribeImpl(context, callback, "queryOrderById"))
}
/**
* 查询订单路径规划信息(到上车点、起始点间的距离和预估时间)
* @param context
* @param orderNo
* @param callback
*/
@JvmStatic
fun queryOrderRouteInfo(orderNo: String?,
callback: OchCommonServiceCallback<OrderQueryRouteInfoRespBean>?
) {
mOCHTaxiServiceApi.queryOrderRouteInfo(
MoGoAiCloudClientConfig.getInstance().serviceAppId,
SharedPrefsMgr.getInstance().token,
OrderQueryRouteInfoReqBean(
SharedPrefsMgr.getInstance().sn, orderNo
)
)
.transformTry()
.subscribe(OchCommonSubscribeImpl(context, callback, "queryOrderRouteInfo"))
}
}

View File

@@ -14,7 +14,7 @@ import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum
import com.mogo.och.taxi.passenger.model.AutopilotManager
import com.mogo.och.taxi.passenger.model.TaxiPassengerModel
import com.mogo.och.taxi.passenger.ui.TaxiPassengerBaseFragment
import com.mogo.och.common.module.biz.order.BaseOrderBean
import com.mogo.och.data.taxi.BaseOrderBean
import com.mogo.och.common.module.biz.order.OrderListener
import com.mogo.och.common.module.biz.order.OrderModel
@@ -96,6 +96,7 @@ class BaseTaxiPassengerPresenter(view: TaxiPassengerBaseFragment?) :
TaxiOrderStatusEnum.ArriveAtEnd -> {
// 50 到达终点 乘客可以评价
mView?.showOrHideArrivedEndLayout(true)
getOrderRouteInfo()
overMapViewClear()
}
TaxiOrderStatusEnum.JourneyCompleted -> {
@@ -115,6 +116,10 @@ class BaseTaxiPassengerPresenter(view: TaxiPassengerBaseFragment?) :
}
}
private fun getOrderRouteInfo() {
TaxiPassengerModel.queryOrderRouteInfo()
}
private fun overMapViewShow(){
CallerFuncBizManager.bizProvider.getAllV2XEvents()
}
@@ -149,6 +154,10 @@ class BaseTaxiPassengerPresenter(view: TaxiPassengerBaseFragment?) :
mView?.showOverMapView()
}
override fun onCurrentOrderDistAndduration(distanceToEnd: Long, durationToEnd: Long) {
mView?.showDuringAndDistance(distanceToEnd,durationToEnd)
}
companion object {
private val TAG = BaseTaxiPassengerPresenter::class.java.simpleName
}

View File

@@ -476,6 +476,10 @@ class TaxiPassengerBaseFragment() :
evaluate.visibility = View.VISIBLE
}
fun showDuringAndDistance(distanceToEnd: Long, durationToEnd: Long) {
arrivedView.dialog.setOrderMileage(distanceToEnd.toFloat())
}
companion object {
@JvmField

View File

@@ -2,7 +2,7 @@ package com.mogo.och.taxi.passenger.ui.checkstartautopilot
import androidx.lifecycle.ViewModel
import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum
import com.mogo.och.common.module.biz.order.BaseOrderBean
import com.mogo.och.data.taxi.BaseOrderBean
import com.mogo.och.common.module.biz.order.OrderListener
import com.mogo.och.common.module.biz.order.OrderModel

View File

@@ -9,7 +9,7 @@ import com.mogo.och.taxi.passenger.R
import com.mogo.och.taxi.passenger.callback.IOCHTaxiPassengerOrderStatusCallback
import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum
import com.mogo.och.taxi.passenger.model.TaxiPassengerModel
import com.mogo.och.common.module.biz.order.BaseOrderBean
import com.mogo.och.data.taxi.BaseOrderBean
import com.mogo.och.common.module.biz.order.OrderListener
import com.mogo.och.common.module.biz.order.OrderModel
import kotlin.math.ceil

View File

@@ -7,7 +7,7 @@ import com.mogo.och.common.module.manager.audition.AuditionManager
import com.mogo.och.common.module.manager.autopilot.autopilot.IOchAutopilotStatusListener
import com.mogo.och.common.module.manager.autopilot.autopilot.OchAutoPilotStatusListenerManager
import com.mogo.och.common.module.utils.RxUtils
import com.mogo.och.common.module.biz.order.BaseOrderBean
import com.mogo.och.data.taxi.BaseOrderBean
import com.mogo.och.common.module.biz.order.OrderListener
import com.mogo.och.common.module.biz.order.OrderModel
import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum

View File

@@ -1,7 +1,7 @@
package com.mogo.och.unmanned.taxi.bean
import com.mogo.eagle.core.data.BaseData
import com.mogo.och.common.module.biz.order.BaseOrderBean
import com.mogo.och.data.taxi.BaseOrderBean
import com.mogo.och.unmanned.taxi.constant.TaskStatusEnum
import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum
@@ -230,21 +230,6 @@ data class OrderCompletedReqBean(
var sn: String, var orderNo: String
)
data class QueryCarOrderByNoReqBean(
var sn: String, var orderNo: String
)
data class QueryCarOrderByNoRespBean(var data: Result) : BaseData() {
data class Result(
var sn: String,
var bookingUserPhone: String,
var businessType: String,
var mileage: Float,
var duration: Float,
var passengerSize: Int
):BaseOrderBean()
}
/**
* 轨迹路线
*/

View File

@@ -3,6 +3,8 @@ package com.mogo.och.unmanned.taxi.network
import com.mogo.cloud.passport.MoGoAiCloudClientConfig
import com.mogo.commons.storage.SharedPrefsMgr
import com.mogo.eagle.core.data.BaseData
import com.mogo.och.data.taxi.QueryCarOrderByNoReqBean
import com.mogo.och.data.taxi.QueryCarOrderByNoRespBean
import com.mogo.och.unmanned.taxi.bean.ArriveSiteReqBean
import com.mogo.och.unmanned.taxi.bean.CancelOrderReqBean
import com.mogo.och.unmanned.taxi.bean.TrajectoryListRespBean
@@ -10,8 +12,6 @@ import com.mogo.och.unmanned.taxi.bean.JumpPassengerCheckReqBean
import com.mogo.och.unmanned.taxi.bean.OrderCompletedReqBean
import com.mogo.och.unmanned.taxi.bean.PrepareTaskReqBean
import com.mogo.och.unmanned.taxi.bean.PrepareTaskRespBean
import com.mogo.och.unmanned.taxi.bean.QueryCarOrderByNoReqBean
import com.mogo.och.unmanned.taxi.bean.QueryCarOrderByNoRespBean
import com.mogo.och.unmanned.taxi.bean.QueryCurrentTaskRespBean
import com.mogo.och.unmanned.taxi.bean.StartServiceReqBean
import com.mogo.och.unmanned.taxi.bean.StartServiceRespBean

View File

@@ -8,14 +8,14 @@ import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.common.module.network.OchCommonSubscribeImpl
import com.mogo.och.common.module.network.interceptor.transformTry
import com.mogo.och.data.taxi.QueryCarOrderByNoReqBean
import com.mogo.och.data.taxi.QueryCarOrderByNoRespBean
import com.mogo.och.unmanned.taxi.bean.ArriveSiteReqBean
import com.mogo.och.unmanned.taxi.bean.CancelOrderReqBean
import com.mogo.och.unmanned.taxi.bean.JumpPassengerCheckReqBean
import com.mogo.och.unmanned.taxi.bean.OrderCompletedReqBean
import com.mogo.och.unmanned.taxi.bean.PrepareTaskReqBean
import com.mogo.och.unmanned.taxi.bean.PrepareTaskRespBean
import com.mogo.och.unmanned.taxi.bean.QueryCarOrderByNoReqBean
import com.mogo.och.unmanned.taxi.bean.QueryCarOrderByNoRespBean
import com.mogo.och.unmanned.taxi.bean.QueryCurrentTaskRespBean
import com.mogo.och.unmanned.taxi.bean.StartServiceReqBean
import com.mogo.och.unmanned.taxi.bean.StartServiceRespBean

View File

@@ -185,6 +185,7 @@ class TaxiCurrentTaskFragment : BaseFragment(),
}
is TaskWithOrderUIState.UpdateOrderTripInfo -> {
dialog?.setOrderMileage(taskAndOrderUiState.mileage)
taskOtherInfo.text =
TaskUtils.getCurrentTaskTotalAndDurationHtml(
taskAndOrderUiState.mileage,

View File

@@ -71,6 +71,7 @@ import com.mogo.och.unmanned.taxi.callback.ITaxiTaskWithOrderCallback
import com.mogo.och.unmanned.taxi.constant.TaskStatusEnum
import com.mogo.och.unmanned.taxi.constant.TaskTypeEnum
import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum
import com.mogo.och.data.taxi.QueryCarOrderByNoRespBean
import com.mogo.och.unmanned.taxi.constant.TaxiUnmannedConst
import com.mogo.och.unmanned.taxi.constant.TaxiUnmannedConst.Companion.BUSINESSTYPE
import com.mogo.och.unmanned.taxi.network.TaxiTaskWithOrderServiceManager

View File

@@ -1,7 +1,7 @@
package com.mogo.och.unmanned.passenger.bean;
import com.mogo.eagle.core.data.BaseData;
import com.mogo.och.common.module.biz.order.BaseOrderBean;
import com.mogo.och.data.taxi.BaseOrderBean;
import java.util.List;
import java.util.Objects;

View File

@@ -11,4 +11,5 @@ interface IOCHTaxiPassengerOrderStatusCallback {
fun onCurrentOrderDistToEndChanged(meters: Long, timeInSecond: Long,stationDistance:Int){}
fun onMessageGo2OverMapview(){}
fun onCurrentOrderDistAndduration(mileage: Float, duration: Float)
}

View File

@@ -32,6 +32,7 @@ import com.mogo.och.common.module.voice.VoiceNotice
import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum
import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum.Companion.valueOf
import com.mogo.och.common.module.biz.order.OrderModel
import com.mogo.och.data.taxi.QueryCarOrderByNoRespBean
import com.mogo.och.unmanned.passenger.bean.TaxiPassengerBaseRespBean
import com.mogo.och.unmanned.passenger.bean.TaxiPassengerGetTrajectoryByLineIdRespBean
import com.mogo.och.unmanned.passenger.bean.TaxiPassengerOrderQueryRespBean
@@ -426,6 +427,7 @@ object TaxiPassengerModel {
TaxiOrderStatusEnum.ArriveAtEnd -> {
AutopilotManager.clearAutopilotControlParameters()
queryOrderRouteInfo()
//startOrStopQueryOrderRemaining(false)
CallerOrderListenerManager.invokeOrderStatus(false)
clearStation()
@@ -451,6 +453,25 @@ object TaxiPassengerModel {
}
}
fun queryOrderRouteInfo() {
if (currentOCHOrder == null) return
TaxiPassengerServiceManager.queryOrderRouteInfo(
currentOCHOrder!!.orderNo,
object : OchCommonServiceCallback<QueryCarOrderByNoRespBean> {
override fun onSuccess(data: QueryCarOrderByNoRespBean) {
if (data.data != null && currentOCHOrder != null ) {
for (callback in mOrderStatusCallbackMap.values) {
callback.onCurrentOrderDistAndduration(data.data.mileage,data.data.duration)
}
}
}
override fun onFail(code: Int, msg: String) {}
}
)
}
private fun setStation() {
if (currentOCHOrder != null && currentLineId != null) {
val startStation = MogoLocation()

View File

@@ -2,6 +2,8 @@ package com.mogo.och.unmanned.passenger.network
import com.mogo.cloud.passport.MoGoAiCloudClientConfig
import com.mogo.commons.storage.SharedPrefsMgr
import com.mogo.och.data.taxi.QueryCarOrderByNoReqBean
import com.mogo.och.data.taxi.QueryCarOrderByNoRespBean
import com.mogo.och.unmanned.passenger.bean.TaxiPassengerBaseRespBean
import com.mogo.och.unmanned.passenger.bean.TaxiPassengerCheckPhoneUpdateOrderReqBean
import com.mogo.och.unmanned.passenger.bean.TaxiPassengerGetTrajectoryByLineIdRespBean
@@ -88,4 +90,12 @@ internal interface TaxiPassengerServiceApi {
@Header("ticket") ticket: String= SharedPrefsMgr.getInstance().token,
@Body data: TaxiPassengerStartReqBean
): Observable<TaxiPassengerBaseRespBean>
@Headers("Content-type:application/json;charset=UTF-8")
@POST("/och-taxi-cabin/api/business/v1/queryCarOrder")
fun queryOrderRouteInfo(
@Header("appId") appId: String = MoGoAiCloudClientConfig.getInstance().serviceAppId,
@Header("ticket") ticket: String = SharedPrefsMgr.getInstance().token,
@Body data: QueryCarOrderByNoReqBean?
): Observable<QueryCarOrderByNoRespBean>
}

View File

@@ -2,6 +2,7 @@ package com.mogo.och.unmanned.passenger.network
import android.content.Context
import com.mogo.commons.AbsMogoApplication
import com.mogo.commons.storage.SharedPrefsMgr
import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager
import com.mogo.eagle.core.network.MoGoRetrofitFactory
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
@@ -10,6 +11,8 @@ import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.common.module.network.OchCommonSubscribeImpl
import com.mogo.och.common.module.network.interceptor.transformTry
import com.mogo.och.data.taxi.QueryCarOrderByNoReqBean
import com.mogo.och.data.taxi.QueryCarOrderByNoRespBean
import com.mogo.och.unmanned.passenger.bean.TaxiPassengerBaseRespBean
import com.mogo.och.unmanned.passenger.bean.TaxiPassengerCheckPhoneUpdateOrderReqBean
import com.mogo.och.unmanned.passenger.bean.TaxiPassengerGetTrajectoryByLineIdRespBean
@@ -152,6 +155,22 @@ object TaxiPassengerServiceManager {
.transformTry()
.subscribe(OchCommonSubscribeImpl(context, callback, "queryOrderById"))
}
/**
* 根据订单号查询订单, 主要是拿完成或者被乘客取消的订单状态
*/
@JvmStatic
fun queryOrderRouteInfo(
orderNo: String,
callback: OchCommonServiceCallback<QueryCarOrderByNoRespBean>?
) {
if (beforeNet()) {
return
}
mOCHTaxiServiceApi.queryOrderRouteInfo(
data = QueryCarOrderByNoReqBean(SharedPrefsMgr.getInstance().sn, orderNo)
).transformTry()
.subscribe(OchCommonSubscribeImpl(context, callback, "queryCarOrderByOrderNo"))
}
}

View File

@@ -10,7 +10,7 @@ import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.och.common.module.manager.autopilot.OCHAdasAbilityManager
import com.mogo.och.unmanned.passenger.bean.TaxiPassengerOrdersInServiceQueryRespBean
import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum
import com.mogo.och.common.module.biz.order.BaseOrderBean
import com.mogo.och.data.taxi.BaseOrderBean
import com.mogo.och.common.module.biz.order.OrderListener
import com.mogo.och.common.module.biz.order.OrderModel
import com.mogo.och.unmanned.passenger.callback.IOCHTaxiPassengerOrderStatusCallback
@@ -145,6 +145,10 @@ class BaseTaxiPassengerPresenter(view: TaxiPassengerBaseFragment?) :
mView?.showOverMapView()
}
override fun onCurrentOrderDistAndduration(mileage: Float, duration: Float) {
mView?.showDuringAndDistance(mileage,duration)
}
companion object {
private val TAG = BaseTaxiPassengerPresenter::class.java.simpleName
}

View File

@@ -496,6 +496,10 @@ class TaxiPassengerBaseFragment() :
arrivedView.preLoadImages()
}
fun showDuringAndDistance(mileage: Float, duration: Float) {
arrivedView.dialog.setOrderMileage(mileage)
}
companion object {
@JvmField

View File

@@ -2,7 +2,7 @@ package com.mogo.och.unmanned.passenger.ui.checkstartautopilot
import androidx.lifecycle.ViewModel
import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum
import com.mogo.och.common.module.biz.order.BaseOrderBean
import com.mogo.och.data.taxi.BaseOrderBean
import com.mogo.och.common.module.biz.order.OrderListener
import com.mogo.och.common.module.biz.order.OrderModel

View File

@@ -7,7 +7,7 @@ import com.mogo.och.common.module.utils.DateTimeUtil
import com.mogo.och.common.module.utils.NumberFormatUtil
import com.mogo.och.unmanned.taxi.passenger.R
import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum
import com.mogo.och.common.module.biz.order.BaseOrderBean
import com.mogo.och.data.taxi.BaseOrderBean
import com.mogo.och.common.module.biz.order.OrderListener
import com.mogo.och.common.module.biz.order.OrderModel
import com.mogo.och.unmanned.passenger.callback.IOCHTaxiPassengerOrderStatusCallback

View File

@@ -30,7 +30,7 @@ import com.mogo.eagle.core.utilcode.util.ThreadUtils
* 自动探查
* 鹰眼6.5.0需求
*/
class AutomaticExplorationView @JvmOverloads constructor(
open class AutomaticExplorationView @JvmOverloads constructor(
context: Context,
attrs: AttributeSet? = null,
defStyleAttr: Int = 0

View File

@@ -15,7 +15,7 @@ import java.util.Random
* 行程总结View
* 鹰眼6.5.0需求
*/
class ItinerarySummaryDialog(context: Context, isDriver: Boolean, theme: Int) :
open class ItinerarySummaryDialog(context: Context, isDriver: Boolean, theme: Int) :
Dialog(context, theme) {
private val mContext: Context
@@ -108,4 +108,8 @@ class ItinerarySummaryDialog(context: Context, isDriver: Boolean, theme: Int) :
}
fun setOrderMileage(mileage: Float) {
TODO("Not yet implemented")
}
}