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 f33025bda7..7f41edb2a8 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 @@ -19,8 +19,8 @@ import com.mogo.och.biz.login.bean.TaxiLoginRespBean import com.mogo.och.biz.login.bean.TaxiLogoutReqBean import com.mogo.och.biz.login.callback.ITaxiLoginCallback import com.mogo.och.biz.login.net.OchCommonServiceManager -import com.mogo.och.biz.login.net.OchCommonServiceManager.logout import com.mogo.och.biz.login.net.OchCommonServiceManager.queryDriverServiceStatus +import com.mogo.och.common.module.biz.login.BusinessEnum import com.mogo.och.common.module.biz.login.LoginStatusEnum import com.mogo.och.common.module.biz.login.LoginStatusEnum.Companion.valueOf import com.mogo.och.common.module.biz.login.LoginStatusManager @@ -208,7 +208,7 @@ object LoginModel { // 登出 fun logout(mLatitude: Double, mLongitude: Double) { val location4Login = TaxiLogoutReqBean.Location4Login(mLatitude, mLongitude) - logout( + OchCommonServiceManager.logout( mContext!!, location4Login, object : OchCommonServiceCallback { override fun onSuccess(data: BaseData) { @@ -228,6 +228,9 @@ object LoginModel { override fun onFail(code: Int, msg: String) { ToastUtilsOch.showWithCodeMessage(code, msg) + if(!LoginStatusManager.isLogin()){ + LoginStatusManager.invokeLBusinessTypeChangeDebug(BusinessEnum.None) + } } }) } 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 b42c284043..35ad76da5a 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 @@ -154,16 +154,31 @@ abstract class FacadeProvider : IMoGoFunctionProvider, ILoginCallback { } override fun onBusinessChangeDebug(businessEnum: BusinessEnum) { - onBusinessChange(businessEnum) - val supportFragmentManager: FragmentManager? = activity?.supportFragmentManager - val fragment = getFragment() - injectStatusBar() - d(TAG, "切换 fragment:${fragment}") - LoginStatusManager.resetFragment() - if (supportFragmentManager != null) { - val back = supportFragmentManager.beginTransaction() - back.replace(containerId, fragment, fragment.tag) - back.commit() + if(businessEnum==BusinessEnum.None){ + removeStatusBar() + CallerHmiManager.hideToolsView() + ToggleDebugView.toggleDebugView.dismiss() + SopView.sopView.dismiss() + commonService?.resetFragment() + val fragment = LoginStatusManager.getFragment() + val supportFragmentManager: FragmentManager? = activity?.supportFragmentManager + if (supportFragmentManager != null) { + val back = supportFragmentManager.beginTransaction() + back.replace(containerId, fragment, fragment.tag) + back.commitAllowingStateLoss() + } + }else { + onBusinessChange(businessEnum) + val supportFragmentManager: FragmentManager? = activity?.supportFragmentManager + val fragment = getFragment() + injectStatusBar() + d(TAG, "切换 fragment:${fragment}") + LoginStatusManager.resetFragment() + if (supportFragmentManager != null) { + val back = supportFragmentManager.beginTransaction() + back.replace(containerId, fragment, fragment.tag) + back.commitAllowingStateLoss() + } } }