[6.4.0]
[乘客屏切换主Fragment]
This commit is contained in:
@@ -8,6 +8,7 @@ import com.mogo.commons.debug.DebugConfig
|
||||
import com.mogo.eagle.core.data.config.FunctionBuildConfig
|
||||
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
|
||||
import com.mogo.och.biz.login.callback.ILoginViewCallback
|
||||
import com.mogo.och.biz.login.model.LoginStatusDefaultModel
|
||||
import com.mogo.och.biz.login.ui.LoginFragment
|
||||
@@ -130,7 +131,9 @@ class LoginProvider : LoginService {
|
||||
BusinessEnum.Charter -> "后台配置为:包车模式、请检查应用或配置"
|
||||
else -> "后台配置为:未知模式${businessType}、请检查应用或配置"
|
||||
}
|
||||
(loginFragment as ILoginViewCallback).showErrorInfo(reaseon)
|
||||
UiThreadHandler.post({
|
||||
(loginFragment as ILoginViewCallback).showErrorInfo(reaseon)
|
||||
},UiThreadHandler.MODE.QUEUE)
|
||||
}
|
||||
return false
|
||||
}
|
||||
@@ -181,14 +184,23 @@ class LoginProvider : LoginService {
|
||||
|
||||
val businessTypeSupply = checkBusinessMine(businessType)
|
||||
|
||||
if (loginFragment is ILoginViewCallback) {
|
||||
(loginFragment as ILoginViewCallback).checkAllEnv(projectType,envType,vehicleType,businessType)
|
||||
if(isProjectSupply&&envTypeSupply&&vehicleTypeSupply&&businessTypeSupply){
|
||||
|
||||
}else{
|
||||
if (loginFragment is ILoginViewCallback) {
|
||||
UiThreadHandler.post({
|
||||
(loginFragment as ILoginViewCallback).checkAllEnv(projectType,envType,vehicleType,businessType)
|
||||
},UiThreadHandler.MODE.QUEUE)
|
||||
}
|
||||
}
|
||||
|
||||
return isProjectSupply&&envTypeSupply&&vehicleTypeSupply&&businessTypeSupply
|
||||
}
|
||||
|
||||
fun checkBusinessMine(businessType: BusinessType) :Boolean{
|
||||
if(businessType==BusinessType.none){
|
||||
return true
|
||||
}
|
||||
FunctionBuildConfig.supportBusiness.forEach {
|
||||
if (businessType.name == it) {
|
||||
return true
|
||||
|
||||
@@ -116,7 +116,9 @@ class LoginPassengerFragment : MvpFragment<LoginPassengerFragment?, LoginPasseng
|
||||
|
||||
info.append("、支持的业务类型有:")
|
||||
when (businessType) {
|
||||
BusinessType.none -> info.append("没有登录")
|
||||
BusinessType.none -> {
|
||||
return
|
||||
}
|
||||
BusinessType.bus -> info.append("小巴车")
|
||||
BusinessType.shuttle -> info.append("接驳车")
|
||||
BusinessType.charter -> info.append("包车")
|
||||
|
||||
@@ -41,6 +41,13 @@ class ErrorInfoView : ConstraintLayout, ErrorInfoViewModel.IErrorInfoViewCallbac
|
||||
private fun initView() {
|
||||
LayoutInflater.from(context).inflate(R.layout.biz_login_errorinfo_view, this, true)
|
||||
|
||||
|
||||
if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode) &&
|
||||
AppIdentityModeUtils.isPassenger((FunctionBuildConfig.appIdentityMode))
|
||||
) {
|
||||
actv_see.visibility = GONE
|
||||
}
|
||||
|
||||
actv_see.onClick {
|
||||
viewModel?.cancleCountDown()
|
||||
actv_countdown.text = "10s"
|
||||
|
||||
@@ -20,9 +20,11 @@
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/actv_error_head"
|
||||
android:layout_width="@dimen/dp_818"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_120"
|
||||
android:layout_marginStart="@dimen/dp_60"
|
||||
android:layout_marginEnd="@dimen/dp_60"
|
||||
android:gravity="center"
|
||||
android:textColor="@android:color/white"
|
||||
android:textSize="@dimen/dp_46"
|
||||
@@ -34,7 +36,9 @@
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/actv_error_body"
|
||||
android:layout_width="@dimen/dp_818"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_marginStart="@dimen/dp_60"
|
||||
android:layout_marginEnd="@dimen/dp_60"
|
||||
android:layout_height="0dp"
|
||||
android:gravity="center"
|
||||
android:textColor="@android:color/white"
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
package com.mogo.och.common.module.biz.lansocket
|
||||
|
||||
import com.mogo.commons.debug.DebugConfig
|
||||
import com.mogo.eagle.core.data.config.FunctionBuildConfig
|
||||
import com.mogo.eagle.core.function.api.telematic.IReceivedMsgListener
|
||||
import com.mogo.eagle.core.function.call.telematic.CallerTelematicListenerManager
|
||||
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.Logger
|
||||
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.LoginStatusManager
|
||||
import com.mogo.och.common.module.manager.socket.lan.ILanMessageListener
|
||||
import com.mogo.och.common.module.manager.socket.lan.LanSocketManager
|
||||
@@ -17,8 +16,6 @@ import com.mogo.och.common.module.manager.socket.lan.bean.EnvCheck
|
||||
import com.mogo.och.common.module.manager.socket.lan.bean.EnvType
|
||||
import com.mogo.och.common.module.manager.socket.lan.bean.ProjectType
|
||||
import com.mogo.och.common.module.manager.socket.lan.bean.VehicleType
|
||||
import com.mogo.och.common.module.utils.Project
|
||||
import com.mogo.och.common.module.utils.ProjectUtils
|
||||
import kotlin.properties.Delegates
|
||||
|
||||
object LoginLanPassengerSocket : IReceivedMsgListener {
|
||||
@@ -53,9 +50,7 @@ object LoginLanPassengerSocket : IReceivedMsgListener {
|
||||
vehicleType: VehicleType,
|
||||
businessType: BusinessType
|
||||
): Boolean {
|
||||
|
||||
LoginStatusManager.checkAllEnv(projectType, envType, vehicleType, businessType)
|
||||
return false
|
||||
return LoginStatusManager.checkAllEnv(projectType, envType, vehicleType, businessType)
|
||||
}
|
||||
|
||||
// 环境监测+业务展示和跳转
|
||||
@@ -67,7 +62,26 @@ object LoginLanPassengerSocket : IReceivedMsgListener {
|
||||
override fun onMsgReceived(obj: Array<in ChangeBusinessType>) {
|
||||
if (obj.isNotEmpty()) {
|
||||
val first = obj.first() as ChangeBusinessType
|
||||
checkEnv(first.projectType, first.envType, first.vehicleType, first.businessType)
|
||||
val checkEnv = checkEnv(
|
||||
first.projectType,
|
||||
first.envType,
|
||||
first.vehicleType,
|
||||
first.businessType
|
||||
)
|
||||
if(checkEnv){
|
||||
when (first.businessType) {
|
||||
BusinessType.none -> {
|
||||
LoginStatusManager.setBusinessType(BusinessEnum.None.code)
|
||||
return LoginStatusManager.setLoginStatus(LoginStatusEnum.Logout)
|
||||
}
|
||||
BusinessType.bus -> LoginStatusManager.setBusinessType(BusinessEnum.Bus.code)
|
||||
BusinessType.shuttle -> LoginStatusManager.setBusinessType(BusinessEnum.Shuttle.code)
|
||||
BusinessType.charter -> LoginStatusManager.setBusinessType(BusinessEnum.Charter.code)
|
||||
BusinessType.taxi -> LoginStatusManager.setBusinessType(BusinessEnum.Taxi.code)
|
||||
BusinessType.taxiunmanned ->LoginStatusManager.setBusinessType(BusinessEnum.Taxi.code)
|
||||
}
|
||||
LoginStatusManager.setLoginStatus(LoginStatusEnum.Login)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -65,7 +65,7 @@ object LanSocketManager : IReceivedMsgListener {
|
||||
}
|
||||
}
|
||||
}catch (e:Exception){
|
||||
|
||||
e.printStackTrace()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -17,6 +17,7 @@ import com.mogo.eagle.core.function.hmi.ui.setting.ToggleDebugView
|
||||
import com.mogo.eagle.core.function.hmi.ui.widget.StatusBarView
|
||||
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
|
||||
import com.mogo.och.common.module.biz.lansocket.LoginLanDriverSocket
|
||||
import com.mogo.och.common.module.biz.lansocket.LoginLanPassengerSocket
|
||||
import com.mogo.och.common.module.constant.OchCommonConst
|
||||
@@ -60,8 +61,9 @@ abstract class FacadeProvider : IMoGoFunctionProvider, ILoginCallback {
|
||||
private fun showFragment() {
|
||||
val supportFragmentManager: FragmentManager? = activity?.supportFragmentManager
|
||||
val fragment = if (LoginStatusManager.isLogin()) {
|
||||
val fragment = getFragment()
|
||||
injectStatusBar()
|
||||
getFragment()
|
||||
fragment
|
||||
} else {
|
||||
removeStatusBar()
|
||||
CallerHmiManager.hideToolsView()
|
||||
@@ -140,7 +142,9 @@ abstract class FacadeProvider : IMoGoFunctionProvider, ILoginCallback {
|
||||
|
||||
override fun onStatusChange(currentStatus: LoginStatusEnum) {
|
||||
d(TAG, "登录状态发生改变 ${currentStatus}")
|
||||
showFragment()
|
||||
UiThreadHandler.post {
|
||||
showFragment()
|
||||
}
|
||||
}
|
||||
|
||||
override fun onBusinessChange(businessEnum: BusinessEnum) {
|
||||
|
||||
Reference in New Issue
Block a user