From 820d87d10181fe2ecf37d5a597f1f1e74cf29592 Mon Sep 17 00:00:00 2001 From: yangyakun Date: Wed, 23 Oct 2024 15:14:52 +0800 Subject: [PATCH] =?UTF-8?q?[6.7.2]=20[fix]=20[=E6=9C=89=E9=80=89=E6=8B=A9?= =?UTF-8?q?=E7=9A=84=E4=BD=BF=E7=94=A8=E7=BC=93=E5=AD=98]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/mogo/och/biz/login/LoginProvider.kt | 4 +-- .../mogo/och/biz/login/model/LoginModel.kt | 27 ++++++++++++------- .../och/biz/login/presenter/LoginPresenter.kt | 3 ++- .../common/module/biz/login/LoginService.kt | 2 +- .../module/biz/login/LoginStatusManager.kt | 4 +-- .../och/facade/route/FacadeDriverProvider.kt | 3 ++- .../repository/net/bus/BusServiceManager.kt | 2 +- .../net/bussaas/BusShuttleServiceManager.kt | 2 +- .../net/shuttle/ShuttleServiceManager.kt | 2 +- .../shuttlesaas/ShuttleSaasServiceManager.kt | 2 +- 10 files changed, 31 insertions(+), 20 deletions(-) diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/LoginProvider.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/LoginProvider.kt index 7ea43aa64b..10393d6dc3 100644 --- a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/LoginProvider.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/LoginProvider.kt @@ -99,9 +99,9 @@ class LoginProvider : LoginService { } } - override fun queryLoginStatusByNet() { + override fun queryLoginStatusByNet(readCatche:Boolean) { CallerLogger.d(tag, "queryLoginStatusByNet") - LoginModel.queryCarStatus() + LoginModel.queryCarStatus(readCatche) } override fun loginOut() { diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/LoginModel.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/LoginModel.kt index 0aea55136f..df85bc73ed 100644 --- a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/LoginModel.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/LoginModel.kt @@ -48,7 +48,7 @@ import java.util.concurrent.TimeUnit @SuppressLint("StaticFieldLeak") object LoginModel { - private const val TAG = "TaxiLoginModel" + private const val TAG = "LoginModel" private var mContext: Context? = null var iTaxiLoginCallback: ITaxiLoginCallback? = null private var subscribe: Disposable? = null @@ -59,6 +59,7 @@ object LoginModel { d(TAG, "onIntentReceived = %s", intentStr) if (ConnectivityManager.CONNECTIVITY_ACTION == intentStr) { if (NetworkUtils.isConnected(mContext)) { + // 网络链接成功可以先读取本地再获取服务器 queryCarStatus() } } @@ -135,7 +136,8 @@ object LoginModel { if (null != data && 0 == data.code) { // 获取验证码成功 ToastCharterUtils.showToastShort(mContext?.getString(R.string.module_och_taxi_login_login_success)) - queryCarStatus() + // 登录成功需要新的值 + queryCarStatus(false) } else { if (data != null) { ToastCharterUtils.showToastShort(data.code.toString()) @@ -169,20 +171,22 @@ object LoginModel { * 7、网络状态变更后查询 * 8、登录页面关闭后查下状态 */ - fun queryCarStatus() { + fun queryCarStatus(readCatche:Boolean = true) { mContext?.let { + if(readCatche){ val logingInfoJson = OchSPManager.getString(loginInfoKey) val timeText = DateTimeUtils.getTimeText(DateTimeUtils.yyyy_MM_dd) logingInfoJson?.let {logininfo-> if(logininfo.startsWith(timeText)){ val json = logingInfoJson.replace(timeText,"" ) val oldLoginInfo = GsonUtils.fromJson(json, DriverStatusQueryRespBean::class.java) - go2LoginInfo(oldLoginInfo) + go2LoginInfo(oldLoginInfo,"缓存获取") } } + } OchCommonServiceManager.queryDriverServiceStatus(it, object : OchCommonServiceCallback { override fun onSuccess(data: DriverStatusQueryRespBean?) { - go2LoginInfo(data) + go2LoginInfo(data,"接口获取") } override fun onError() { @@ -192,15 +196,17 @@ object LoginModel { ToastCharterUtils.showToastShort(mContext!!.getString(R.string.request_error_tip)) } LoginStatusManager.setLoginError(-10012,"网络错误") + // 依赖参数 subscribe = Observable.timer(5, TimeUnit.SECONDS) - .subscribe { _: Long? -> queryCarStatus() } + .subscribe { _: Long? -> queryCarStatus(readCatche) } } override fun onFail(code: Int, msg: String) { LoginStatusManager.setLoginError(code,"msg:${msg}") ToastUtilsOch.showWithCodeMessage(code, msg) + // 依赖参数 subscribe = Observable.timer(3, TimeUnit.SECONDS) - .subscribe { _: Long? -> queryCarStatus() } + .subscribe { _: Long? -> queryCarStatus(readCatche) } // if (code == OchCommonConst.WAIT_TAKEN) { // // } else { @@ -211,7 +217,9 @@ object LoginModel { } } - private fun go2LoginInfo(data: DriverStatusQueryRespBean?) { + @Synchronized + private fun go2LoginInfo(data: DriverStatusQueryRespBean?, source: String) { + CallerLogger.d(TAG,"设置源:${source}") data?.let { LoginStatusManager.setLoginInfo(data.data) } @@ -258,7 +266,8 @@ object LoginModel { if (null != data && 0 == data.code) { loginFail(false) OchSPManager.remove(loginInfoKey) - queryCarStatus() + // 退出登录成功需要查询新的 + queryCarStatus(false) } } diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/presenter/LoginPresenter.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/presenter/LoginPresenter.kt index 61ef3c31f6..ed54218c96 100644 --- a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/presenter/LoginPresenter.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/presenter/LoginPresenter.kt @@ -112,7 +112,8 @@ class LoginPresenter(view: LoginFragment?) : Presenter(view), IT gotoOfflineMode() return } - LoginModel.queryCarStatus() + // 需要实时查询新的 + LoginModel.queryCarStatus(false) mView?.closeSoftInput() this.phone = phone this.code = code diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginService.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginService.kt index ab10bd835c..f0bd4ae005 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginService.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginService.kt @@ -20,7 +20,7 @@ interface LoginService :CommonService { fun getBusinessType():BusinessEnum - fun queryLoginStatusByNet() + fun queryLoginStatusByNet(readCatche:Boolean=false) /** * 登出 diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginStatusManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginStatusManager.kt index c3af1361b0..dae3228544 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginStatusManager.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginStatusManager.kt @@ -43,8 +43,8 @@ object LoginStatusManager : CallerBase() { } @JvmStatic - fun queryLoginStatusByNet() { - loginService?.queryLoginStatusByNet() + fun queryLoginStatusByNet(readCatche:Boolean=false) { + loginService?.queryLoginStatusByNet(readCatche) } @JvmStatic fun getPurpose(): RoleEnum { diff --git a/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeDriverProvider.kt b/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeDriverProvider.kt index be14092795..eda61eeabd 100644 --- a/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeDriverProvider.kt +++ b/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeDriverProvider.kt @@ -34,7 +34,8 @@ class FacadeDriverProvider : FacadeProvider() { sweeperFacadeProvider.init(context) }else { super.init(context) - LoginStatusManager.queryLoginStatusByNet() + // 初始化先读取客户端 让客户尽快进入 + LoginStatusManager.queryLoginStatusByNet(true) LanSocketManager.load() LoginLanDriverSocket.load() CheckVinManager.load() diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/bus/BusServiceManager.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/bus/BusServiceManager.kt index 738b6f7793..93f1376ea7 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/bus/BusServiceManager.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/bus/BusServiceManager.kt @@ -37,7 +37,7 @@ object BusServiceManager { SharedPrefsMgr.getInstance().token, BusQueryLineStationsRequest() ) .transformTry() - .flatMap(OchCommonNet("queryBusRoutes",false)) + .flatMap(OchCommonNet("mogo/dali bus queryBusRoutes",false)) .flatMap { Observable.just(it.data?: BusRoutesResult()) } diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/bussaas/BusShuttleServiceManager.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/bussaas/BusShuttleServiceManager.kt index 283a3f6c28..fdefc0b791 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/bussaas/BusShuttleServiceManager.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/bussaas/BusShuttleServiceManager.kt @@ -37,7 +37,7 @@ object BusShuttleServiceManager { SharedPrefsMgr.getInstance().token, SharedPrefsMgr.getInstance().getSn(), ) .transformTry() - .flatMap(OchCommonNet("queryBusRoutes",false)) + .flatMap(OchCommonNet("saas bus queryBusRoutes",false)) .flatMap { Observable.just(it.data?: BusRoutesResult()) } diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/shuttle/ShuttleServiceManager.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/shuttle/ShuttleServiceManager.kt index 61ccb73086..c95952a91f 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/shuttle/ShuttleServiceManager.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/shuttle/ShuttleServiceManager.kt @@ -43,7 +43,7 @@ object ShuttleServiceManager { SharedPrefsMgr.getInstance().token, BusQueryLineStationsRequest() ) .transformTry() - .flatMap(OchCommonNet("queryBusRoutes",false)) + .flatMap(OchCommonNet("mogo/dali shuttle queryBusRoutes",false)) .flatMap { Observable.just(it.data?: BusRoutesResult()) } diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/shuttlesaas/ShuttleSaasServiceManager.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/shuttlesaas/ShuttleSaasServiceManager.kt index f91ef3eadd..b23cb8a183 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/shuttlesaas/ShuttleSaasServiceManager.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/repository/net/shuttlesaas/ShuttleSaasServiceManager.kt @@ -41,7 +41,7 @@ object ShuttleSaasServiceManager { SharedPrefsMgr.getInstance().token, BusQueryLineStationsRequest() ) .transformIoTry() - .flatMap(OchCommonNet("queryBusRoutes",false)) + .flatMap(OchCommonNet("saas shuttle queryBusRoutes",false)) .flatMap { Observable.just(it.data?:BusRoutesResult()) }