From f3096209a6912a7332a1da1f4980e0867257701e Mon Sep 17 00:00:00 2001 From: yangyakun Date: Wed, 5 Feb 2025 18:30:56 +0800 Subject: [PATCH] =?UTF-8?q?[6.10.0]=20[fea]=20[offline=20=E6=94=AF?= =?UTF-8?q?=E6=8C=81]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/mogo/och/biz/login/LoginProvider.kt | 1 + .../com/mogo/och/biz/login/LoginServiceManager.kt | 13 +++++++++++-- .../java/com/mogo/och/biz/login/model/LoginModel.kt | 7 ++++++- .../module/manager/socket/lan/bean/DataBean.kt | 1 + .../com/mogo/och/facade/route/FacadeProvider.kt | 7 +++++++ .../mogo/och/offline/ui/bizswitch/SwitchBizView.kt | 2 +- 6 files changed, 27 insertions(+), 4 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 5044a84db0..c2cbb6303e 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 @@ -52,6 +52,7 @@ class LoginProvider : LoginService { if (LoginServiceManager.checkAllEnv(it.project,it.env)) { d(tag,"从司机屏获取账号信息:${it}") val driverLoginInfo = GsonUtils.fromJson(it.loginInfo, LoginInfo::class.java) + FunctionBuildConfig.isOffLine = it.isOffline LoginServiceManager.setLoginInfo(driverLoginInfo) } } diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/LoginServiceManager.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/LoginServiceManager.kt index 9f2486544c..4930cbb816 100644 --- a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/LoginServiceManager.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/LoginServiceManager.kt @@ -193,6 +193,10 @@ object LoginServiceManager { fun loginOut() { d(tag, "loginOut ") FunctionBuildConfig.ochdebug = false + if(FunctionBuildConfig.isOffLine) { + FunctionBuildConfig.isOffLine = false + sendLogin2Client(1) + } LoginModel.logout() } @@ -338,7 +342,12 @@ object LoginServiceManager { fun setLoginStatusType(loginStatus: EnumLoginStatus) { d(tag, "setLoginStatus:${this.loginStatus}---->${loginStatus}") - this.loginStatus = loginStatus + if(FunctionBuildConfig.isOffLine){ + this.loginStatus = EnumLoginStatus.Login + sendLogin2Client(1) + }else{ + this.loginStatus = loginStatus + } } @@ -481,7 +490,7 @@ object LoginServiceManager { } }else{ val toJson = GsonUtils.toJson(loginInfo) - val msg = LoginInfo2Client(toJson,ProjectUtils.getProjectType(),EnvUtils.getEnvType()) + val msg = LoginInfo2Client(toJson,ProjectUtils.getProjectType(),EnvUtils.getEnvType(),FunctionBuildConfig.isOffLine) LanSocketManager.sendMsgToClient(msg) } 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 c6e0ddfa53..58d2461994 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 @@ -283,7 +283,12 @@ object LoginModel { } fun gotoOfflineMode() { - + FunctionBuildConfig.isOffLine = true + var loginInfo = LoginServiceManager.getLoginInfo() + if(loginInfo==null){ + loginInfo = LoginInfo() + } + LoginServiceManager.setLoginInfo(loginInfo) } } \ No newline at end of file diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/socket/lan/bean/DataBean.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/socket/lan/bean/DataBean.kt index 1e97cb60e7..14dcef17eb 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/socket/lan/bean/DataBean.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/socket/lan/bean/DataBean.kt @@ -138,6 +138,7 @@ data class LoginInfo2Client( val loginInfo: String, val project: Project, val env: Env, + val isOffline:Boolean ) : BaseDPMsg(DPMsgType.TYPE_LOGIN_INFO.type,targetScreenTypes = mutableListOf(ScreenType.Passenger)) // 车辆类型 diff --git a/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeProvider.kt b/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeProvider.kt index 2c09e0df49..19527630d0 100644 --- a/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeProvider.kt +++ b/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeProvider.kt @@ -108,6 +108,13 @@ abstract class FacadeProvider : IMoGoFunctionProvider, ILoginCallback { OchChainLogManager.writeChainLog("音量设置后","最大声音量:${maxVolume}------当前音量:${volumeafter}----目的音量:${tartgetVolume}") } } + if (FunctionBuildConfig.isOffLine) { + if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) { + return getFragmentByServeName(OchCommonConst.OFFLINE_DRIVER) + } else if (AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) { + return getFragmentByServeName(OchCommonConst.SHUTTLE_PASSENGER_WEAKNET) + } + } if (AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode) ||AppIdentityModeUtils.isShuttle(FunctionBuildConfig.appIdentityMode) ||AppIdentityModeUtils.isScheduled(FunctionBuildConfig.appIdentityMode)) { diff --git a/OCH/offline/driver/src/main/java/com/mogo/och/offline/ui/bizswitch/SwitchBizView.kt b/OCH/offline/driver/src/main/java/com/mogo/och/offline/ui/bizswitch/SwitchBizView.kt index 7bfd775dbe..303b914624 100644 --- a/OCH/offline/driver/src/main/java/com/mogo/och/offline/ui/bizswitch/SwitchBizView.kt +++ b/OCH/offline/driver/src/main/java/com/mogo/och/offline/ui/bizswitch/SwitchBizView.kt @@ -75,7 +75,7 @@ class SwitchBizView: WindowRelativeLayout, SwtichBizModel.SwtichLineViewCallback CallerLogger.d(TAG,"开始展示 lading 时间:${startLoading}") loading_biz.visibility = VISIBLE swtichLine.visibility = GONE - queryTimeout = RxUtils.createSubscribe(10_1000) { + queryTimeout = RxUtils.createSubscribe(10_000) { OchChainLogManager.writeChainLog("Loading超时","loading 展示了10s") CallerLogger.d(TAG,"Loading超时:loading 展示了10s") viewModel?.queryRuningTask()