[Taxi无人化] refactor: 乘客屏轨迹lineId使用order中信息,避免本地计算距离和时间时 起终点和lindId从不同地方获取数据不一致问题;

This commit is contained in:
aibingbing
2023-09-06 20:37:18 +08:00
parent ee9c764ce7
commit 9eadadef99
3 changed files with 7 additions and 6 deletions

View File

@@ -55,6 +55,8 @@ public class TaxiPassengerOrdersInServiceQueryRespBean extends BaseData {
public SiteBean orderEndSite;//站点-终点
public List<Long> planningLines;//预加载的line
public Long orderLine;//送驾的lineId
@Override
public boolean equals(Object o) {
if (this == o) return true;

View File

@@ -204,7 +204,7 @@ object TaxiPassengerModel {
if (data.data != null && data.data.order != null) {
// 1.1. 当存在进行中单时对本地currentOrder进行更新
val currentOrder = data.data.order
currentLineId = data.data.lineId
currentLineId = data.data.order.orderLine
currentTrajectoryInfo = data.data.trajectoryInfoByQuery
if (currentOCHOrder == null) {
currentOCHOrder = currentOrder

View File

@@ -71,14 +71,13 @@ object TaxiPassengerServiceManager {
mOCHTaxiServiceApi.queryOrdersInAndWaitService(sn = driverSn) //获取到司机端的sn
.flatMap { ordersInServiceQueryResp: TaxiPassengerOrdersInServiceQueryRespBean ->
if (ordersInServiceQueryResp.data == null
|| ordersInServiceQueryResp.data.lineId == -1L
|| ordersInServiceQueryResp.data.order == null
|| ordersInServiceQueryResp.data.order.orderLine == null
) {
if (ordersInServiceQueryResp.data != null) {
ordersInServiceQueryResp.data.trajectoryInfoByQuery = null
}
ordersInServiceQueryResp?.data?.trajectoryInfoByQuery = null
return@flatMap Observable.just(ordersInServiceQueryResp)
}
val lineId = ordersInServiceQueryResp.data.lineId
val lineId = ordersInServiceQueryResp.data.order.orderLine
return@flatMap mOCHTaxiServiceApi.getTrajectoryInfoByLineIds(lineIds = listOf(lineId))
.map { trajectoryInfoResp: TaxiPassengerGetTrajectoryByLineIdRespBean? ->
val lineInfoByQuery = trajectoryInfoResp?.getTrajectoryInfoByLineId(lineId)