[6.4.4] Bus B1乘客屏弱网处理

This commit is contained in:
wangmingjun
2024-05-29 09:43:04 +08:00
parent 54d4434eb9
commit ea57d64e6c

View File

@@ -39,18 +39,10 @@ import com.mogo.och.bus.passenger.callback.*
import com.mogo.och.bus.passenger.constant.BusPassengerConst import com.mogo.och.bus.passenger.constant.BusPassengerConst
import com.mogo.och.bus.passenger.network.BusPassengerServiceManager import com.mogo.och.bus.passenger.network.BusPassengerServiceManager
import com.mogo.och.bus.passenger.network.BusPassengerServiceManager.driverAppSn import com.mogo.och.bus.passenger.network.BusPassengerServiceManager.driverAppSn
import com.mogo.och.common.module.manager.socket.lan.bean.AppConnectMsg
import com.mogo.och.common.module.manager.socket.lan.bean.BaseDPMsg
import com.mogo.och.common.module.manager.socket.lan.bean.DPMsgType
import com.mogo.och.common.module.manager.socket.cloud.OCHSocketMessageManager
import com.mogo.och.common.module.manager.socket.cloud.OCHSocketMessageManager.pushAppOperationalMsgBox
import com.mogo.och.common.module.constant.OchCommonConst import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.manager.autopilot.autopilot.ArrivedStation import com.mogo.och.common.module.manager.autopilot.autopilot.ArrivedStation
import com.mogo.och.common.module.manager.autopilot.autopilot.IOchAutopilotStatusListener 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.manager.autopilot.autopilot.OchAutoPilotStatusListenerManager
import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.common.module.manager.socket.cloud.AbnormalFactorsLoopManager.startLoopAbnormalFactors
import com.mogo.och.common.module.manager.socket.cloud.AbnormalFactorsLoopManager.stopLoopAbnormalFactors
import com.mogo.och.common.module.manager.distance.IDistanceListener import com.mogo.och.common.module.manager.distance.IDistanceListener
import com.mogo.och.common.module.manager.distance.ITrajectoryListener import com.mogo.och.common.module.manager.distance.ITrajectoryListener
import com.mogo.och.common.module.manager.distance.TrajectoryAndDistanceManager.addDistanceListener import com.mogo.och.common.module.manager.distance.TrajectoryAndDistanceManager.addDistanceListener
@@ -59,11 +51,21 @@ import com.mogo.och.common.module.manager.distance.TrajectoryAndDistanceManager.
import com.mogo.och.common.module.manager.distance.TrajectoryAndDistanceManager.suspendCalculate import com.mogo.och.common.module.manager.distance.TrajectoryAndDistanceManager.suspendCalculate
import com.mogo.och.common.module.manager.loop.BizLoopManager import com.mogo.och.common.module.manager.loop.BizLoopManager
import com.mogo.och.common.module.manager.loop.LoopInfo import com.mogo.och.common.module.manager.loop.LoopInfo
import com.mogo.och.common.module.manager.socket.cloud.AbnormalFactorsLoopManager.startLoopAbnormalFactors
import com.mogo.och.common.module.manager.socket.cloud.AbnormalFactorsLoopManager.stopLoopAbnormalFactors
import com.mogo.och.common.module.manager.socket.cloud.OCHSocketMessageManager
import com.mogo.och.common.module.manager.socket.cloud.OCHSocketMessageManager.pushAppOperationalMsgBox
import com.mogo.och.common.module.manager.socket.lan.bean.AppConnectMsg
import com.mogo.och.common.module.manager.socket.lan.bean.BaseDPMsg
import com.mogo.och.common.module.manager.socket.lan.bean.DPMsgType
import com.mogo.och.common.module.manager.socket.lan.bean.TaskDetailsMsg
import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.common.module.utils.DateTimeUtil import com.mogo.och.common.module.utils.DateTimeUtil
import com.mogo.och.common.module.utils.OCHThreadPoolManager import com.mogo.och.common.module.utils.OCHThreadPoolManager
import com.mogo.och.common.module.utils.PinYinUtil import com.mogo.och.common.module.utils.PinYinUtil
import com.mogo.och.data.bean.BusRoutesResult import com.mogo.och.data.bean.BusRoutesResult
import com.mogo.och.data.bean.BusStationBean import com.mogo.och.data.bean.BusStationBean
import com.mogo.och.data.bean.BusTransferData
import io.reactivex.schedulers.Schedulers import io.reactivex.schedulers.Schedulers
import java.util.concurrent.ConcurrentHashMap import java.util.concurrent.ConcurrentHashMap
@@ -165,12 +167,7 @@ object BusPassengerModel {
override fun onSuccess(data: PM2RoutesResponse) { override fun onSuccess(data: PM2RoutesResponse) {
if (data.result == null) { if (data.result == null) {
d(M_BUS_P + TAG, "order = queryDriverSiteByCoordinate = null") d(M_BUS_P + TAG, "order = queryDriverSiteByCoordinate = null")
if (routesResult != null) { clearLocalRouteResult()
routesResult = null
mNextStationIndex = 0
}
cleanStation("queryDriverSiteByCoordinate")
mRouteLineInfoCallback?.showNoTaskView()
return return
} }
if (routesResult != null && data.result.equals(routesResult)) { if (routesResult != null && data.result.equals(routesResult)) {
@@ -202,7 +199,11 @@ object BusPassengerModel {
}) })
} }
private fun updatePassengerRouteInfo(result: BusRoutesResult) { private fun updatePassengerRouteInfo(result: BusRoutesResult?) {
if (result == null) {
clearLocalRouteResult()
return
}
if (mRouteLineInfoCallback != null) { if (mRouteLineInfoCallback != null) {
d( d(
M_BUS_P + TAG, M_BUS_P + TAG,
@@ -434,6 +435,24 @@ object BusPassengerModel {
OCHSocketMessageManager.OPERATION_SYSTEM OCHSocketMessageManager.OPERATION_SYSTEM
) )
} }
}else if (baseMsg != null && baseMsg.type == DPMsgType.TYPE_TASK_DETAILS.type){
val msg = GsonUtils.fromJson(String(byteArray), TaskDetailsMsg::class.java)
if (msg == null || msg.msg?.isEmpty() == true){
clearLocalRouteResult()
return
}
val (loginStatus, result) = GsonUtils.fromJson<BusTransferData>(
msg.msg,
BusTransferData::class.java
)
if (msg != null && mDriverStatusCallback != null) {
mDriverStatusCallback!!.changeOperationStatus(loginStatus == 1)
}
if (result != null) { //已司机端传来的为准
routesResult = result
updatePassengerRouteInfo(routesResult)
}
} }
} }
} }
@@ -528,4 +547,15 @@ object BusPassengerModel {
setStationPoint(null, null, -1L) setStationPoint(null, null, -1L)
} }
private fun clearLocalRouteResult() {
if (routesResult != null) {
routesResult = null
}
mNextStationIndex = 0
cleanStation("queryDriverSiteByCoordinate")
if (mRouteLineInfoCallback != null) {
mRouteLineInfoCallback!!.showNoTaskView()
}
}
} }