[项目结构、扫码枪添加手机号]
This commit is contained in:
yangyakun
2024-08-08 10:44:47 +08:00
parent e519886a58
commit 579d706cbf
376 changed files with 604 additions and 1130 deletions

View File

@@ -1,49 +0,0 @@
package com.mogo.och.shuttle.passenger.manager.scnner
import android.text.TextUtils
import com.mogo.commons.debug.DebugConfig
import com.mogo.commons.storage.SharedPrefsMgr
import com.mogo.commons.utils.MogoAnalyticUtils
import com.mogo.eagle.core.data.app.AppConfigInfo
import com.mogo.eagle.core.data.deva.chain.ChainConstant
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.eagle.core.utilcode.util.DateTimeUtils
import com.zhjt.service.chain.ChainLog
object ScannerChainLogManager {
private val TAG = ScannerChainLogManager::class.java.simpleName
const val EVENT_KEY_INFE_WITH_CHANGE = "event_key_och_scanner_info"
/**
* @param Info 事件
* @param changeInfo 数据
*/
@ChainLog(
linkChainLog = ChainConstant.CHAIN_TYPE_OCH,
linkCode = ChainConstant.CHAIN_SOURCE_OCH,
nodeAliasCode = ChainConstant.CHAIN_CODE_OCH_COMMON_DISTANCE,
paramIndexes = [0,1]
)
@JvmStatic
fun writeChainLog(info: String, changeInfo: String,upload:Boolean = true,eventID:String=EVENT_KEY_INFE_WITH_CHANGE) {
try {
d(SceneConstant.M_OCHCOMMON + TAG, info+changeInfo)
if(upload) {
val plateNum = AppConfigInfo.plateNumber
val params = HashMap<String, Any>()
params["sn"] = SharedPrefsMgr.getInstance().sn
params["env"] = DebugConfig.getNetMode()
params["plate_number"] = if (TextUtils.isEmpty(plateNum)) "" else plateNum
params["time"] = DateTimeUtils.getTimeText(DateTimeUtils.yyyy_MM_dd_HH_mm_ss)
params[info] = changeInfo
MogoAnalyticUtils.track(eventID, params)
}
}catch (e:Exception){
e.printStackTrace()
}
}
}

View File

@@ -1,257 +0,0 @@
package com.mogo.och.shuttle.passenger.manager.scnner
import android.net.Uri
import com.mogo.commons.AbsMogoApplication
import com.mogo.eagle.core.function.api.telematic.IReceivedMsgListener
import com.mogo.eagle.core.function.call.telematic.CallerTelematicListenerManager
import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.Logger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P
import com.mogo.eagle.core.utilcode.util.GsonUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.common.module.manager.socket.lan.bean.WriteOffDevicesMsg
import com.mogo.och.common.module.manager.socket.lan.bean.WriteOffMsg
import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.manager.socket.lan.LanSocketManager
import com.mogo.support.serialport.client.SerialPortManager
import com.mogo.support.serialport.client.SerialPortManager.SERVICE_STATE
import com.mogo.support.serialport.client.listener.OnDeviceVerificationListener
import com.mogo.support.serialport.client.listener.OnSerialPortListener
import com.mogo.support.serialport.common.verification.UnpackStatus
import com.mogo.support.serialport.common.verification.data.VerificationActiveData
import java.util.concurrent.ConcurrentHashMap
import kotlin.properties.Delegates
object ScannerManager : OnSerialPortListener, OnDeviceVerificationListener(), IReceivedMsgListener {
private val TAG = "ScannerManager"
private var serialPortManager = SerialPortManager()
private val stateChanageListeners: ConcurrentHashMap<String, StateChangeListener> =
ConcurrentHashMap()
private var driverSn:String by Delegates.observable("") { _, oldV, newV ->
if (oldV != newV) {
// sn 发生了改变 需要向司机屏推送当前链接的状态
sendScannerState()
}
}
private var bindStatus: BindStatus by Delegates.observable(BindStatus.NOTHING) { _, oldV, newV ->
if (oldV != newV) {
try {
CallerLogger.d(SceneConstant.M_OCHCOMMON + TAG, "状态发生变化old:${oldV}_new${newV}")
if(newV!=BindStatus.BIND_SUCCEED) {
dispatchMsg(newV)
}
if (stateChanageListeners.size > 0) {
stateChanageListeners.forEach {
it.value.stateChange(newV, openStatus)
}
}
} catch (e: Exception) {
CallerLogger.e(SceneConstant.M_OCHCOMMON + TAG, "扫码枪bind错误")
}
}
}
private var openStatus: OpenStatus by Delegates.observable(OpenStatus.Unopen) { _, oldV, newV ->
if (oldV != newV) {
try {
if (stateChanageListeners.size > 0) {
stateChanageListeners.forEach {
it.value.stateChange(bindStatus, newV)
}
}
} catch (e: Exception) {
CallerLogger.e(SceneConstant.M_OCHCOMMON + TAG, "扫码枪open错误")
}
}
}
init {
//监听司机端消息
CallerTelematicListenerManager.addListener(TAG, this)
}
fun addStateChangeListener(tag: String, listener: StateChangeListener) {
if (stateChanageListeners.containsKey(tag)) {
return
}
stateChanageListeners[tag] = listener
}
fun bindService() {
serialPortManager.bindService(AbsMogoApplication.getApp(), this)//绑定服务
}
override fun onServiceState(serviceState: Int) {
ScannerChainLogManager.writeChainLog(TAG+"bindStatus","绑定服务结果:serviceState:${serviceState}")
when (serviceState) {
SERVICE_STATE.BIND_SUCCEED -> {
CallerLogger.d(M_BUS_P + TAG, "服务绑定成功")
bindStatus = BindStatus.BIND_SUCCEED
serialPortManager.openVerificationDevice(this)
}
SERVICE_STATE.BIND_FAILURE_UNINSTALLED -> {
CallerLogger.d(M_BUS_P + TAG, "服务绑定失败未安装串口服务端APP")
bindStatus = BindStatus.BIND_FAILURE_UNINSTALLED
}
SERVICE_STATE.BIND_FAILURE_NO_PERMISSION_NOT_FOUND -> {
CallerLogger.d(M_BUS_P + TAG, "服务绑定失败:没有绑定权限或找不到服务(如果是此状态,基本上安装后就可以找到,主要就是权限问题)")
bindStatus = BindStatus.BIND_FAILURE_NO_PERMISSION_NOT_FOUND
}
SERVICE_STATE.EXCEPTION -> {
CallerLogger.d(M_BUS_P + TAG, "服务被异常销毁")
bindStatus = BindStatus.EXCEPTION
}
else -> {}
}
}
// 查询串口
override fun onFindSerialPort(paths: Array<out String>?) {
CallerLogger.d(M_BUS_P + TAG, "$paths")
ScannerChainLogManager.writeChainLog(TAG+"onFindSerialPort","查询串口:${paths}")
if(paths==null) {
bindStatus = BindStatus.BIND_FAILURE_NO_PERMISSION_NOT_FOUND
}
}
override fun onSerialPortState(
path: String?,
isOpen: Boolean,
throwableMessage: String?
) {
CallerLogger.d(
M_BUS_P + TAG,
"path ${path}---isOpen${isOpen}--throwableMessage${throwableMessage}"
)
ScannerChainLogManager.writeChainLog(TAG+"onSerialPortState","扫码枪是否打开:path${path}_isOpen${isOpen}_throwableMessage${throwableMessage}")
openStatus = if (isOpen) {
sendMessage2Driver(true,"扫码枪打开成功")
OpenStatus.Open
} else {
sendMessage2Driver(false,"扫码枪打开错误:${throwableMessage}_${path}")
OpenStatus.Unopen
}
}
override fun onActiveDataReceive(data: VerificationActiveData?) {
ScannerChainLogManager.writeChainLog(TAG+"onActiveDataReceive","扫码结果data:${data}")
data?.let {
if(data.unpackStatus==UnpackStatus.SUCCEED){
"数据类型${it.dataType.name}"
CallerLogger.d(M_BUS_P + TAG, "data $it")
if(!StringUtils.isEmpty(it.payload)){
parseParams(it.payload)
}else{
CallerLogger.d(M_BUS_P + TAG, "数据错误")
sendMessage2DriverWriteOffInfo("扫码数据为空")
}
}else{
sendMessage2DriverWriteOffInfo("解包失败")
CallerLogger.d(M_BUS_P + TAG, "解包失败")
}
}
}
private fun parseParams(payload: String?) {
val parse = Uri.parse("${OchCommonConst.getShuttleUrl()}?${payload}")
val queryParameterNames = parse.queryParameterNames
val mutableMapOf = mutableMapOf<String, Any>()
queryParameterNames.forEach {
val queryParameter = parse.getQueryParameter(it)
if(it!=null&&queryParameter!=null){
mutableMapOf[it] = queryParameter
}
}
if(mutableMapOf.isNotEmpty()){
if (stateChanageListeners.size > 0) {
stateChanageListeners.forEach {
it.value.parseData(mutableMapOf,payload)
}
}
}else{
sendMessage2DriverWriteOffInfo("扫码参数数据为空:${payload}")
}
}
/**
* @param isConnectScanner 是否打开设备
*/
private fun sendMessage2Driver(isConnectScanner:Boolean,message:String){
val msg = WriteOffDevicesMsg(isConnectScanner, message)
CallerLogger.d(M_BUS_P + TAG, "sendTaskDetailsToClients = " + GsonUtils.toJson(msg))
if(driverSn.isNotEmpty()) {
LanSocketManager.sendMsgToServer(msg)
}
}
/**
* 打开设备后数据异常
*/
private fun sendMessage2DriverWriteOffInfo(message:String){
val msg = WriteOffMsg(false, "", 0, "", message,"")
CallerLogger.d(M_BUS_P + TAG, "sendTaskDetailsToClients = " + GsonUtils.toJson(msg))
LanSocketManager.sendMsgToServer(msg)
}
override fun onReceivedMsg(type: Int, byteArray: ByteArray) {
}
override fun onReceivedServerSn(sn: String?) {
Logger.d(M_BUS_P + TAG, "司机屏sn$sn")
driverSn = sn?:""
}
/**
* 链接司机屏后向司机屏同步扫码枪状态
*/
private fun sendScannerState() {
if(bindStatus==BindStatus.BIND_SUCCEED&& openStatus==OpenStatus.Open){
sendMessage2Driver(true,"扫码枪打开状态")
}else{
if(bindStatus==BindStatus.BIND_SUCCEED&& openStatus==OpenStatus.Unopen){
sendMessage2Driver(false,"绑定成功、打开失败")
}else{
dispatchMsg(bindStatus)
}
}
}
private fun dispatchMsg(newV: BindStatus) {
when (newV) {
BindStatus.BIND_FAILURE_UNINSTALLED -> {
// 服务绑定失败未安装串口服务端APP
sendMessage2Driver(false,"服务绑定失败未安装串口服务端APP")
}
BindStatus.BIND_FAILURE_NO_PERMISSION_NOT_FOUND -> {
// 服务绑定失败:没有绑定权限或找不到服务(如果是此状态,基本上安装后就可以找到,主要就是权限问题)
sendMessage2Driver(false,"服务绑定失败:没有绑定权限或找不到服务")
}
BindStatus.EXCEPTION -> {
// 扫码枪open错误
sendMessage2Driver(false,"扫码枪打开错误")
}
BindStatus.NOTHING -> {}
else -> {}
}
}
}
enum class BindStatus {
BIND_SUCCEED, BIND_FAILURE_UNINSTALLED ,BIND_FAILURE_NO_PERMISSION_NOT_FOUND,EXCEPTION,NOTHING
}
enum class OpenStatus {
Open, Unopen
}

View File

@@ -1,38 +0,0 @@
package com.mogo.och.shuttle.passenger.manager.scnner
import android.content.Context
import android.util.AttributeSet
import android.view.View
import androidx.appcompat.widget.AppCompatImageView
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.och.common.module.R
class ScannerStateView @JvmOverloads constructor(
context: Context,
attrs: AttributeSet? = null,
defStyleAttr: Int = 0
) : AppCompatImageView(context, attrs, defStyleAttr), StateChangeListener {
private val TAG = "ScannerStateView"
init {
setImageResource(R.drawable.driver_connect_statis)
ScannerManager.addStateChangeListener(TAG,this)
}
override fun stateChange(newBindValue: BindStatus, newOpentValue: OpenStatus) {
CallerLogger.d(SceneConstant.M_BUS_P + TAG, "newBindValue = $newBindValue newOpentValue = $newOpentValue")
when (newOpentValue) {
OpenStatus.Open -> {
//成功打开
visibility = View.GONE
}
OpenStatus.Unopen -> {
// 打开失败
setImageResource(R.drawable.driver_connect_statis)
}
}
}
}

View File

@@ -1,6 +0,0 @@
package com.mogo.och.shuttle.passenger.manager.scnner
interface StateChangeListener {
fun stateChange(newBindValue:BindStatus,newOpentValue:OpenStatus){}
fun parseData(params: MutableMap<String, Any>, payload: String?){}
}

View File

@@ -4,14 +4,14 @@ import com.mogo.commons.AbsMogoApplication
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P
import com.mogo.eagle.core.utilcode.util.GsonUtils
import com.mogo.eagle.core.utilcode.util.RegexUtils
import com.mogo.och.common.module.manager.socket.lan.bean.WriteOffMsg
import com.mogo.och.common.module.manager.socket.lan.LanSocketManager
import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.shuttle.passenger.bean.request.PassengerWriteOffRequest
import com.mogo.och.shuttle.passenger.bean.response.PassengerWriteOffResponse
import com.mogo.och.shuttle.passenger.manager.scnner.ScannerChainLogManager
import com.mogo.och.shuttle.passenger.manager.scnner.ScannerManager
import com.mogo.och.shuttle.passenger.manager.scnner.StateChangeListener
import com.mogo.och.common.module.manager.scnner.ScannerManager
import com.mogo.och.common.module.manager.scnner.StateChangeListener
import com.mogo.och.shuttle.passenger.network.PassengerServiceManager
object TicketModel : StateChangeListener {
@@ -19,7 +19,6 @@ object TicketModel : StateChangeListener {
private const val TAG = "TicketModel"
init {
ScannerManager.bindService()
ScannerManager.addStateChangeListener(TAG, this)
}
@@ -30,15 +29,22 @@ object TicketModel : StateChangeListener {
override fun parseData(params: MutableMap<String, Any>, payload: String?) {
val orderNo = params["orderNo"]
val uid = params["uid"]
val phone = params["phone"]
if(orderNo is String && uid is String){
writeOffTicket(orderNo,uid)
var phoneNum = ""
if(phone is String){
if (RegexUtils.isMobileExact(phone)) {
phoneNum = phone
}
}
writeOffTicket(orderNo,uid,phoneNum)
}else{
// 通知司机屏二维码错误
sendMessage2Driver("参数错误:${payload}")
sendMessage2Driver("参数错误:${payload}","")
}
}
private fun writeOffTicket(orderNo: String, uid: String) {
private fun writeOffTicket(orderNo: String, uid: String, phoneNum: String) {
val passengerWriteOffRequest = PassengerWriteOffRequest(orderNo, uid)
PassengerServiceManager.writeOffTicket(AbsMogoApplication.getApp(),
passengerWriteOffRequest,
@@ -53,25 +59,26 @@ object TicketModel : StateChangeListener {
override fun onFail(code: Int, msg: String?) {
CallerLogger.d(M_BUS_P + TAG, "核销失败 ${code}-----${msg}")
when (code) {
6002 -> {sendMessage2Driver("同一订单核销间隔时间需大于2分钟")}
1009 -> {sendMessage2Driver("车票所选乘车日期非今日")}
1005 -> {sendMessage2Driver("车辆未登录、或没有任务")}
1006 -> {sendMessage2Driver("车票路线信息与当前车辆执行任务的路线信息不符合")}
1008 -> {sendMessage2Driver("车票剩余可用次数为0")}
6001 -> {sendMessage2Driver("二维码已过期")}
1012 -> {sendMessage2Driver("当前用户下单路线非当前的车辆所属公司")}
6002 -> {sendMessage2Driver("同一订单核销间隔时间需大于2分钟",phoneNum)}
1009 -> {sendMessage2Driver("车票所选乘车日期非今日",phoneNum)}
1005 -> {sendMessage2Driver("车辆未登录、或没有任务",phoneNum)}
1006 -> {sendMessage2Driver("车票路线信息与当前车辆执行任务的路线信息不符合",phoneNum)}
1008 -> {sendMessage2Driver("车票剩余可用次数为0",phoneNum)}
6001 -> {sendMessage2Driver("二维码已过期",phoneNum)}
1012 -> {sendMessage2Driver("当前用户下单路线非当前的车辆所属公司",phoneNum)}
else -> {
when (msg) {
"6002" -> {sendMessage2Driver("同一订单核销间隔时间需大于2分钟")}
"1009" -> {sendMessage2Driver("车票所选乘车日期非今日")}
"1005" -> {sendMessage2Driver("车辆未登录、或没有任务")}
"1006" -> {sendMessage2Driver("车票路线信息与当前车辆执行任务的路线信息不符合")}
"1008" -> {sendMessage2Driver("车票剩余可用次数为0")}
"6001" -> {sendMessage2Driver("二维码已过期")}
"1012" -> {sendMessage2Driver("当前用户下单路线非当前的车辆所属公司")}
"6002" -> {sendMessage2Driver("同一订单核销间隔时间需大于2分钟",phoneNum)}
"1009" -> {sendMessage2Driver("车票所选乘车日期非今日",phoneNum)}
"1005" -> {sendMessage2Driver("车辆未登录、或没有任务",phoneNum)}
"1006" -> {sendMessage2Driver("车票路线信息与当前车辆执行任务的路线信息不符合",phoneNum)}
"1008" -> {sendMessage2Driver("车票剩余可用次数为0",phoneNum)}
"6001" -> {sendMessage2Driver("二维码已过期",phoneNum)}
"1012" -> {sendMessage2Driver("当前用户下单路线非当前的车辆所属公司",phoneNum)}
else -> {
sendMessage2Driver(msg?:"")
sendMessage2Driver(msg?:"",phoneNum)
}
}
}
@@ -79,24 +86,21 @@ object TicketModel : StateChangeListener {
}
override fun onError(message: String) {
ScannerChainLogManager.writeChainLog(TAG +"onError","/och-vehicle/api/scanner/device/writeOff接口请求错误orderNo${orderNo}__uid${uid}__reaseon:${message}")
sendMessage2Driver("网络错误")
sendMessage2Driver("网络错误",phoneNum)
}
}
)
}
private fun sendMessage2Driver(message:String){
val msg = WriteOffMsg(false, "", 0, "", message,"")
private fun sendMessage2Driver(message:String,phone:String){
val msg = WriteOffMsg(false, phone, 0, "", "验票失败,${message}","")
CallerLogger.d(M_BUS_P + TAG, "sendTaskDetailsToClients = " + GsonUtils.toJson(msg))
LanSocketManager.sendMsgToServer(msg)
ScannerChainLogManager.writeChainLog(TAG +"sendMessage2Driver","核验失败message:${message}")
}
private fun sendMessage2DriverSuccess(message: PassengerWriteOffResponse.Result,orderNo: String){
val msg = WriteOffMsg(true, message.phone, message.ticketSize, message.ticketName, "",orderNo)
CallerLogger.d(M_BUS_P + TAG, "sendTaskDetailsToClients = " + GsonUtils.toJson(msg))
LanSocketManager.sendMsgToServer(msg)
ScannerChainLogManager.writeChainLog(TAG +"sendMessage2DriverSuccess","核验成功message:${message}")
}

View File

@@ -1,13 +1,14 @@
package com.mogo.och.shuttle.passenger.network
import android.content.Context
import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager.getServerToken
import com.mogo.cloud.passport.MoGoAiCloudClientConfig
import com.mogo.eagle.core.network.MoGoRetrofitFactory
import com.mogo.commons.storage.SharedPrefsMgr
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.eagle.core.utilcode.util.ToastUtils
import com.mogo.och.common.module.biz.lansocket.LoginLanPassengerSocket
import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager
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
@@ -16,7 +17,6 @@ import com.mogo.och.shuttle.passenger.bean.request.PassengerWriteOffRequest
import com.mogo.och.shuttle.passenger.bean.response.PassengerOperationStatusResponse
import com.mogo.och.shuttle.passenger.bean.response.PassengerRoutesResponse
import com.mogo.och.shuttle.passenger.bean.response.PassengerWriteOffResponse
import com.mogo.och.shuttle.passenger.manager.scnner.ScannerChainLogManager
/**
* Created on 2022/3/31
@@ -31,19 +31,6 @@ object PassengerServiceManager {
MoGoRetrofitFactory.getInstance(OchCommonConst.getShuttleUrl()).create(
ServiceApi::class.java)
/**
* 获取Bus司机端的sn
* @return
*/
val driverAppSn: String
get() {
val serverToken = getServerToken()
if (serverToken != driverSnCache && serverToken.isNotEmpty()) {
driverSnCache = serverToken
}
return driverSnCache
}
/**
* 查询绑定行驶的小巴车路线
* @param context
@@ -57,7 +44,7 @@ object PassengerServiceManager {
MoGoAiCloudClientConfig.getInstance().serviceAppId,
SharedPrefsMgr.getInstance().token,
PassengerQueryLineRequest(
driverAppSn
LoginLanPassengerSocket.driverSn
)
).transformTry()
.subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverSiteByCoordinate",false))
@@ -76,7 +63,7 @@ object PassengerServiceManager {
mShuttleBusPassengerServiceApi.queryDriverOperationStatus(
MoGoAiCloudClientConfig.getInstance().serviceAppId,
SharedPrefsMgr.getInstance().token,
driverAppSn
LoginLanPassengerSocket.driverSn
)
.transformTry()
.subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverOperationStatus"))
@@ -94,10 +81,10 @@ object PassengerServiceManager {
ticketInfo: PassengerWriteOffRequest,
callback: OchCommonServiceCallback<PassengerWriteOffResponse>?,
) {
ticketInfo.sn = driverAppSn
if(StringUtils.isEmpty(driverAppSn)){
ticketInfo.sn = LoginLanPassengerSocket.driverSn
if(StringUtils.isEmpty(LoginLanPassengerSocket.driverSn)){
ToastUtils.showShort("请链接司机屏${ticketInfo.uid}")
ScannerChainLogManager.writeChainLog(TAG +"onError","无司机屏sn请处理")
OchChainLogManager.writeChainLogScanner(TAG +"onError","无司机屏sn请处理")
return
}
mShuttleBusPassengerServiceApi.writeOffTicket(

View File

@@ -24,6 +24,7 @@ import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant;
import com.mogo.eagle.core.utilcode.util.GsonUtils;
import com.mogo.eagle.core.utilcode.util.StringUtils;
import com.mogo.eagle.core.utilcode.util.ToastUtils;
import com.mogo.och.common.module.biz.lansocket.LoginLanPassengerSocket;
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.location.OchLocationManager;
@@ -199,18 +200,18 @@ public class BusPassengerModel {
@Override
public void onError() {
CallerLogger.d( M_BUS_P + TAG, "queryDriverSiteByCoordinate = onError ="
+ ", sn = " +PassengerServiceManager.INSTANCE.getDriverAppSn());
+ ", sn = " + LoginLanPassengerSocket.INSTANCE.getDriverSn());
queryDriverByLocalDriver();
}
@Override
public void onFail(int code, String msg) {
CallerLogger.d( M_BUS_P + TAG, "queryDriverSiteByCoordinate = %s", msg
+ ", sn = " +PassengerServiceManager.INSTANCE.getDriverAppSn());
+ ", sn = " +LoginLanPassengerSocket.INSTANCE.getDriverSn());
if (code == 1003){
queryDriverOperationDelay();
}
if (PassengerServiceManager.INSTANCE.getDriverAppSn().isEmpty()){
if (LoginLanPassengerSocket.INSTANCE.getDriverSn().isEmpty()){
//此处拦截是为了防止过程中乘客屏和司机端断连拿不到司机端sn, 造成请求失败去刷新了界面
return;
}

View File

@@ -27,6 +27,7 @@ import com.mogo.eagle.core.utilcode.util.GsonUtils
import com.mogo.eagle.core.utilcode.util.NetworkUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.eagle.core.utilcode.util.ToastUtils
import com.mogo.och.common.module.biz.lansocket.LoginLanPassengerSocket
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.manager.autopilot.autopilot.IOchAutopilotStatusListener
@@ -373,7 +374,7 @@ class PM2DrivingModel private constructor() {
CallerLogger.d(
SceneConstant.Companion.M_BUS_P + TAG,
"queryDriverSiteByCoordinate = onError ="
+ ", sn = " + PassengerServiceManager.driverAppSn
+ ", sn = " + LoginLanPassengerSocket.driverSn
)
queryDriverByLocalDriver()
}
@@ -384,7 +385,7 @@ class PM2DrivingModel private constructor() {
queryDriverOperationDelay()
cleanStation("queryDriverSiteByCoordinate 1003")
}
if (PassengerServiceManager.driverAppSn.isEmpty()){
if (LoginLanPassengerSocket.driverSn.isEmpty()){
return
}
if (code == 1003) {