From 8290cc4b0cee95597d1059a2cb935755b35ea719 Mon Sep 17 00:00:00 2001 From: yangyakun Date: Thu, 12 Dec 2024 18:15:30 +0800 Subject: [PATCH] =?UTF-8?q?[6.8.4]=20[fea]=20[=E5=88=A0=E9=99=A4BusinessEn?= =?UTF-8?q?um]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/mogo/och/biz/login/LoginProvider.kt | 8 +- .../mogo/och/biz/login/model/LoginModel.kt | 4 +- .../biz/login/ui/debugview/BusinessView.kt | 12 +-- .../biz/lansocket/LoginLanPassengerSocket.kt | 15 ++-- .../common/module/biz/login/BusinessEnum.kt | 30 ------- .../module/biz/login/ILoginCallback.java | 5 +- .../common/module/biz/login/LoginService.kt | 3 +- .../module/biz/login/LoginStatusManager.kt | 9 +- .../manager/socket/lan/bean/DataBean.kt | 2 +- .../och/common/module/utils/FlavorUtils.kt | 88 +++++++++++-------- .../mogo/och/facade/route/FacadeProvider.kt | 83 ++++++++--------- app/config/productWithVehicle.json | 6 +- .../utilcode/mogo/AppIdentityModeUtils.kt | 52 +++++++++-- 13 files changed, 165 insertions(+), 152 deletions(-) delete mode 100644 OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/BusinessEnum.kt 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 f2ff3972c5..f689914e4c 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 @@ -10,6 +10,7 @@ import com.mogo.eagle.core.data.config.HdMapBuildConfig import com.mogo.eagle.core.data.enums.Carmodel import com.mogo.eagle.core.function.call.och.CallerEagleBaseFunctionCall4OchManager import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils +import com.mogo.eagle.core.utilcode.mogo.Product 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 @@ -17,7 +18,6 @@ import com.mogo.och.biz.login.model.LoginModel import com.mogo.och.biz.login.ui.LoginFragment import com.mogo.och.biz.login.ui.LoginPassengerFragment import com.mogo.och.common.module.constant.OchCommonConst -import com.mogo.och.common.module.biz.login.BusinessEnum import com.mogo.och.common.module.biz.login.LoginInfo import com.mogo.och.common.module.biz.login.LoginService import com.mogo.och.common.module.biz.login.LoginStatusManager @@ -43,7 +43,7 @@ class LoginProvider : LoginService { private val tag = LoginProvider::class.java.simpleName private var loginFragment: Fragment?=null private var loginStatus: LoginStatusEnum = LoginStatusEnum.None - private var businessEnum: BusinessEnum = BusinessEnum.None + private var businessEnum = Product.NONE private var openOrderStatusEnum: OpenOrderStatusEnum = OpenOrderStatusEnum.None private var carModel: Carmodel = Carmodel.T2 private var loginInfo: LoginInfo? = null @@ -220,12 +220,12 @@ class LoginProvider : LoginService { override fun setBusinessType(type: Int) { CallerLogger.d(tag, "setBusinessType:${type}") if (businessEnum.code != type) { - this.businessEnum = BusinessEnum.valueOf(type) + this.businessEnum = Product.valueOf(type) LoginStatusManager.invokeLBusinessTypeChange(this.businessEnum) } } - override fun getBusinessType(): BusinessEnum { + override fun getBusinessType(): Product { CallerLogger.d(tag, "getBusinessType") return businessEnum } 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 9c0cac26b2..542d805d98 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 @@ -11,6 +11,7 @@ import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.commons.utils.MogoAnalyticUtils import com.mogo.eagle.core.data.BaseData import com.mogo.eagle.core.data.config.FunctionBuildConfig +import com.mogo.eagle.core.utilcode.mogo.Product import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant @@ -25,7 +26,6 @@ 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.bridge.autopilot.location.OchLocationManager -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 @@ -306,7 +306,7 @@ object LoginModel { override fun onFail(code: Int, msg: String) { ToastUtilsOch.showWithCodeMessage(code, msg) if(!LoginStatusManager.isLogin()){ - LoginStatusManager.invokeLBusinessTypeChangeDebug(BusinessEnum.None) + LoginStatusManager.invokeLBusinessTypeChangeDebug(Product.NONE) } } }) diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/ui/debugview/BusinessView.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/ui/debugview/BusinessView.kt index 6d820655c6..3038696373 100644 --- a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/ui/debugview/BusinessView.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/ui/debugview/BusinessView.kt @@ -9,8 +9,8 @@ import androidx.lifecycle.findViewTreeViewModelStoreOwner import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.function.hmi.ui.setting.ToggleDebugView import com.mogo.eagle.core.utilcode.kotlin.onClick +import com.mogo.eagle.core.utilcode.mogo.Product import com.mogo.och.biz.R -import com.mogo.och.common.module.biz.login.BusinessEnum import com.mogo.och.common.module.biz.login.LoginStatusManager import kotlinx.android.synthetic.main.biz_login_business_view.view.actv_business_bus import kotlinx.android.synthetic.main.biz_login_business_view.view.actv_business_charter @@ -55,14 +55,14 @@ class BusinessView : ConstraintLayout, BusinessViewModel.IErrorInfoViewCallback viewModel?.setDistanceCallback(this) - actv_business_shuttle.onClick { swtichBusiness(BusinessEnum.Shuttle) } - actv_business_bus.onClick { swtichBusiness(BusinessEnum.Bus) } - actv_business_taxi.onClick { swtichBusiness(BusinessEnum.Taxi) } - actv_business_charter.onClick { swtichBusiness(BusinessEnum.Charter) } + actv_business_shuttle.onClick { swtichBusiness(Product.SHUTTLE) } + actv_business_bus.onClick { swtichBusiness(Product.BUS) } + actv_business_taxi.onClick { swtichBusiness(Product.TAXI) } + actv_business_charter.onClick { swtichBusiness(Product.CHARTER) } actv_debugview.onClick { ToggleDebugView.toggleDebugView.toggle(context) } } - private fun swtichBusiness(businessEnum: BusinessEnum) { + private fun swtichBusiness(businessEnum: Product) { LoginStatusManager.invokeLBusinessTypeChangeDebug(businessEnum) visibility = GONE } diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/lansocket/LoginLanPassengerSocket.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/lansocket/LoginLanPassengerSocket.kt index b2f90d1d35..70693262c0 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/lansocket/LoginLanPassengerSocket.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/lansocket/LoginLanPassengerSocket.kt @@ -3,10 +3,10 @@ package com.mogo.och.common.module.biz.lansocket 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.Product import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.Logger import com.mogo.eagle.core.utilcode.util.UiThreadHandler -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.logchainanalytic.OchChainLogManager @@ -126,15 +126,16 @@ object LoginLanPassengerSocket : IReceivedMsgListener, CallerBase { - LoginStatusManager.setBusinessType(BusinessEnum.None.code) + LoginStatusManager.setBusinessType(Product.NONE.code) CallerLogger.d(TAG, "乘客屏 收到消息 司机屏没有登录:${LoginStatusEnum.Logout}") 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) + BusinessType.bus -> LoginStatusManager.setBusinessType(Product.BUS.code) + BusinessType.shuttle -> LoginStatusManager.setBusinessType(Product.SHUTTLE.code) + BusinessType.charter -> LoginStatusManager.setBusinessType(Product.CHARTER.code) + BusinessType.taxi -> LoginStatusManager.setBusinessType(Product.TAXI.code) + BusinessType.taxiunmanned ->LoginStatusManager.setBusinessType(Product.TAXI.code) + BusinessType.scheduled ->LoginStatusManager.setBusinessType(Product.SCHEDULED.code) } status.append(", 切换后:${LoginStatusManager.getBusInessType().name}>") LoginStatusManager.changeStatus(status.toString()) diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/BusinessEnum.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/BusinessEnum.kt deleted file mode 100644 index e5661b914c..0000000000 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/BusinessEnum.kt +++ /dev/null @@ -1,30 +0,0 @@ -package com.mogo.och.common.module.biz.login - -/** - * Created on 2022/08/19 - * - * - * 0 初始状态, - * 10 已登录, - * 20 已登出, - */ -enum class BusinessEnum(val code: Int) { - None( 0 ), - Taxi( 9), - Bus( 10), - Shuttle( 11), - Charter( 13), - SCHEDULED(14); - - companion object { - @JvmStatic - fun valueOf(code: Int): BusinessEnum { - for (value in values()) { - if (value.code == code) { - return value - } - } - return None - } - } -} \ No newline at end of file diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/ILoginCallback.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/ILoginCallback.java index c6e380d262..7a6305e6c3 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/ILoginCallback.java +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/ILoginCallback.java @@ -1,6 +1,7 @@ package com.mogo.och.common.module.biz.login; import com.mogo.eagle.core.data.enums.Carmodel; +import com.mogo.eagle.core.utilcode.mogo.Product; public interface ILoginCallback { @@ -8,11 +9,11 @@ public interface ILoginCallback { default void onCarModelChange(Carmodel currentStatus){} - default void onBusinessChange(BusinessEnum businessEnum){} + default void onBusinessChange(Product businessEnum){} default void onOpenOrderStatusEnumChange(OpenOrderStatusEnum businessEnum){} - default void onBusinessChangeDebug(BusinessEnum businessEnum){} + default void onBusinessChangeDebug(Product businessEnum){} default void onLoginErrorInfo(int code,String msg){} 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 80420625e9..26a38ae9b1 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 @@ -1,6 +1,7 @@ package com.mogo.och.common.module.biz.login import com.mogo.eagle.core.data.enums.Carmodel +import com.mogo.eagle.core.utilcode.mogo.Product import com.mogo.och.common.module.biz.provider.CommonService import com.mogo.och.common.module.manager.socket.lan.bean.BusinessType import com.mogo.och.common.module.manager.socket.lan.bean.EnvType @@ -20,7 +21,7 @@ interface LoginService :CommonService { fun setLoginStatus(status: Int) fun setBusinessType(type: Int) - fun getBusinessType():BusinessEnum + fun getBusinessType(): Product 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 5a34579154..ed65bed05d 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 @@ -6,6 +6,7 @@ import androidx.fragment.app.Fragment import com.alibaba.android.arouter.launcher.ARouter import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.enums.Carmodel +import com.mogo.eagle.core.utilcode.mogo.Product import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.och.common.module.constant.OchCommonConst import com.mogo.och.common.module.manager.loop.BizLoopManager @@ -74,11 +75,11 @@ object LoginStatusManager : CallerBase() { loginService?.setBusinessType(type) } - fun getBusInessType():BusinessEnum{ + fun getBusInessType():Product{ loginService?.let { return it.getBusinessType() } - return BusinessEnum.None + return Product.NONE } @JvmStatic @@ -153,13 +154,13 @@ object LoginStatusManager : CallerBase() { } } - fun invokeLBusinessTypeChange(currentStatus: BusinessEnum) { + fun invokeLBusinessTypeChange(currentStatus: Product) { M_LISTENERS.forEach { val listener = it.value listener.onBusinessChange(currentStatus) } } - fun invokeLBusinessTypeChangeDebug(currentStatus: BusinessEnum) { + fun invokeLBusinessTypeChangeDebug(currentStatus: Product) { M_LISTENERS.forEach { val listener = it.value listener.onBusinessChangeDebug(currentStatus) 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 1f6f4e837a..a16278ed06 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 @@ -146,7 +146,7 @@ enum class BusinessType { charter, taxi, taxiunmanned, - + scheduled, } enum class ProjectType { diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/FlavorUtils.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/FlavorUtils.kt index ec5618f0fc..431254d136 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/FlavorUtils.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/FlavorUtils.kt @@ -6,8 +6,8 @@ import com.mogo.commons.env.ProjectUtils import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils +import com.mogo.eagle.core.utilcode.mogo.Product import com.mogo.eagle.core.utilcode.util.AppUtils -import com.mogo.och.common.module.biz.login.BusinessEnum import com.mogo.och.common.module.manager.socket.lan.bean.BusinessType import com.mogo.och.common.module.manager.socket.lan.bean.EnvType import com.mogo.och.common.module.manager.socket.lan.bean.ProjectType @@ -21,8 +21,8 @@ object FlavorUtils { var projectType: ProjectType? = null var envType: EnvType? = null - - fun getInfo():String{ + + fun getInfo(): String { val info = StringBuilder() when (ProjectUtils.getProjectType()) { @@ -61,9 +61,9 @@ object FlavorUtils { info.append(" qa ") } } - if(AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)){ + if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) { info.append(" Driver") - }else if(AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)){ + } else if (AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) { info.append(" Passenger") } @@ -72,33 +72,40 @@ object FlavorUtils { return info.toString() } - fun getBusinessInfo(businessType: Int):String { - val businessEnum = BusinessEnum.valueOf(businessType) + fun getBusinessInfo(businessType: Int): String { + val businessEnum = Product.valueOf(businessType) FunctionBuildConfig.supportBusiness.forEach { when (it) { "shuttle" -> { - val isSupply = businessEnum == BusinessEnum.Shuttle + val isSupply = businessEnum == Product.SHUTTLE if (isSupply) { return "" } } "bus" -> { - val isSupply = businessEnum == BusinessEnum.Bus + val isSupply = businessEnum == Product.BUS if (isSupply) { return "" } } "taxi" -> { - val isSupply = businessEnum == BusinessEnum.Taxi + val isSupply = businessEnum == Product.TAXI if (isSupply) { return "" } } "charter" -> { - val isSupply = businessEnum == BusinessEnum.Charter + val isSupply = businessEnum == Product.CHARTER + if (isSupply) { + return "" + } + } + + "scheduled" -> { + val isSupply = businessEnum == Product.SCHEDULED if (isSupply) { return "" } @@ -110,17 +117,18 @@ object FlavorUtils { val reason = StringBuilder() reason.append("业务异常<当前支持:") FunctionBuildConfig.supportBusiness.forEachIndexed { index, s -> - if(index==FunctionBuildConfig.supportBusiness.size-1){ + if (index == FunctionBuildConfig.supportBusiness.size - 1) { reason.append(s) - }else{ + } else { reason.append("${s},") } } when (businessEnum) { - BusinessEnum.Taxi -> reason.append(" 后台配置:taxi>") - BusinessEnum.Bus -> reason.append(" 后台配置:bus>") - BusinessEnum.Shuttle -> reason.append(" 后台配置:shuttle>") - BusinessEnum.Charter -> reason.append(" 后台配置:charter>") + Product.TAXI -> reason.append(" 后台配置:taxi>") + Product.BUS -> reason.append(" 后台配置:bus>") + Product.SHUTTLE -> reason.append(" 后台配置:shuttle>") + Product.CHARTER -> reason.append(" 后台配置:charter>") + Product.SCHEDULED -> reason.append(" 后台配置:scheduled>") else -> { reason.clear() reason.append("后台未配置业务模式,请联系运营人员为该车配置") @@ -132,33 +140,37 @@ object FlavorUtils { fun getEnvCheck() { businessType = when (AppIdentityModeUtils.getProduct(FunctionBuildConfig.appIdentityMode)) { - AppIdentityModeUtils.Product.BUS -> { + Product.BUS -> { BusinessType.bus } - AppIdentityModeUtils.Product.TAXI -> { + Product.TAXI -> { BusinessType.taxi } - AppIdentityModeUtils.Product.SWEEPER -> { + Product.SWEEPER -> { BusinessType.none } - AppIdentityModeUtils.Product.SHUTTLE -> { + Product.SHUTTLE -> { BusinessType.shuttle } - AppIdentityModeUtils.Product.CHARTER -> { + Product.CHARTER -> { BusinessType.charter } + Product.SCHEDULED -> { + BusinessType.scheduled + } + else -> { BusinessType.none } } - if(vehicleType==null||projectType==null||envType==null) { + if (vehicleType == null || projectType == null || envType == null) { vehicleType = if (AppIdentityModeUtils.isT1T2(FunctionBuildConfig.appIdentityMode)) { VehicleType.T1T2 @@ -199,10 +211,12 @@ object FlavorUtils { } } - fun checkAllEnv( projectType: ProjectType, - envType: EnvType, - vehicleType: VehicleType, - businessType: BusinessType):String{ + fun checkAllEnv( + projectType: ProjectType, + envType: EnvType, + vehicleType: VehicleType, + businessType: BusinessType + ): String { val reason = StringBuilder() @@ -212,11 +226,11 @@ object FlavorUtils { Project.MOGO -> projectType == ProjectType.mogo Project.YANTAI -> projectType == ProjectType.yantai } - if(!isProjectSupply){ + if (!isProjectSupply) { reason.append("项目异常<当前:${ProjectUtils.getProjectType().name}, 后台配置:${projectType.name}> ") } - val currentVehicle:String + val currentVehicle: String val vehicleTypeSupply = if (AppIdentityModeUtils.isT1T2(FunctionBuildConfig.appIdentityMode)) { currentVehicle = VehicleType.T1T2.name @@ -234,11 +248,11 @@ object FlavorUtils { currentVehicle = VehicleType.C1.name vehicleType == VehicleType.C1 } - if(!vehicleTypeSupply){ + if (!vehicleTypeSupply) { reason.append("车型异常<当前:${currentVehicle}, 后台配置:${vehicleType.name}> ") } - val currentenvType:String + val currentenvType: String val envTypeSupply = when (DebugConfig.getNetMode()) { 2 -> { currentenvType = EnvType.qa.name @@ -260,19 +274,19 @@ object FlavorUtils { envType == EnvType.qa } } - if(!envTypeSupply){ + if (!envTypeSupply) { reason.append("环境异常<当前:${currentenvType} 后台配置:${envType.name}> ") } val businessTypeSupply = checkBusinessMine(businessType) - if(!businessTypeSupply){ + if (!businessTypeSupply) { reason.append("业务异常<当前支持:") FunctionBuildConfig.supportBusiness.forEachIndexed { index, s -> - if(index==FunctionBuildConfig.supportBusiness.size-1){ + if (index == FunctionBuildConfig.supportBusiness.size - 1) { reason.append(s) - }else{ + } else { reason.append("${s},") } } @@ -282,8 +296,8 @@ object FlavorUtils { return reason.toString() } - fun checkBusinessMine(businessType: BusinessType) :Boolean{ - if(businessType==BusinessType.none){ + fun checkBusinessMine(businessType: BusinessType): Boolean { + if (businessType == BusinessType.none) { return true } FunctionBuildConfig.supportBusiness.forEach { 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 bc77c249fd..457b3e288a 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 @@ -21,6 +21,7 @@ import com.mogo.eagle.core.function.hmi.ui.setting.SopView 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.Product import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d import com.mogo.eagle.core.utilcode.util.AppUtils @@ -28,10 +29,7 @@ import com.mogo.eagle.core.utilcode.util.DeviceUtils import com.mogo.eagle.core.utilcode.util.ProcessUtils import com.mogo.eagle.core.utilcode.util.TimeUtils import com.mogo.eagle.core.utilcode.util.UiThreadHandler -import com.mogo.eagle.core.utilcode.util.Utils import com.mogo.eagle.core.utilcode.util.VolumeUtils -import com.mogo.och.biz.R -import com.mogo.och.common.module.biz.login.BusinessEnum import com.mogo.och.common.module.biz.login.ILoginCallback import com.mogo.och.common.module.biz.login.LoginStatusEnum import com.mogo.och.common.module.biz.login.LoginStatusManager @@ -115,36 +113,28 @@ abstract class FacadeProvider : IMoGoFunctionProvider, ILoginCallback { OchChainLogManager.writeChainLog("音量设置后","最大声音量:${maxVolume}------当前音量:${volumeafter}----目的音量:${tartgetVolume}") } } - if (AppIdentityModeUtils.isBusDriver(FunctionBuildConfig.appIdentityMode)) { - return getFragmentByServeName(OchCommonConst.SHUTTLE_DRIVER_WEAKNET) - } else if (AppIdentityModeUtils.isShuttleDriver(FunctionBuildConfig.appIdentityMode)) { - return getFragmentByServeName(OchCommonConst.SHUTTLE_DRIVER_WEAKNET) - } else if (AppIdentityModeUtils.isCharterDriver(FunctionBuildConfig.appIdentityMode)) { - return getFragmentByServeName(OchCommonConst.CHARTER_DRIVER) - } else if (AppIdentityModeUtils.isTaxiDriver(FunctionBuildConfig.appIdentityMode)) { -// return if (ProjectUtils.isMogo()) { -// getFragmentByServeName(OchCommonConst.TAXI_DRIVER) -// } else if (ProjectUtils.isSaas()) { + if (AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode) + ||AppIdentityModeUtils.isShuttle(FunctionBuildConfig.appIdentityMode) + ||AppIdentityModeUtils.isScheduled(FunctionBuildConfig.appIdentityMode)) { + if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) { + return getFragmentByServeName(OchCommonConst.SHUTTLE_DRIVER_WEAKNET) + }else if (AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)){ + return getFragmentByServeName(OchCommonConst.SHUTTLE_PASSENGER_WEAKNET) + } + } else if(AppIdentityModeUtils.isCharter(FunctionBuildConfig.appIdentityMode)){ + if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) { + return getFragmentByServeName(OchCommonConst.CHARTER_DRIVER) + }else if (AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)){ + return getFragmentByServeName(OchCommonConst.CHARTER_PASSENGER) + } + } else if(AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode)){ + if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) { return getFragmentByServeName(OchCommonConst.TAXI_UNMANNED_DRIVER) -// } else { -// getFragmentByServeName(OchCommonConst.TAXI_DRIVER) -// } - } else if (AppIdentityModeUtils.isSweeper(FunctionBuildConfig.appIdentityMode)) { + }else if (AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)){ + return getFragmentByServeName(OchCommonConst.TAXI_UNMANNED_PASSENGER) + } + } else if(AppIdentityModeUtils.isSweeper(FunctionBuildConfig.appIdentityMode)){ return getFragmentByServeName(OchCommonConst.SWEEPER_DRIVER) - } else if (AppIdentityModeUtils.isBusPassenger(FunctionBuildConfig.appIdentityMode)) { - return getFragmentByServeName(OchCommonConst.SHUTTLE_PASSENGER_WEAKNET) - } else if (AppIdentityModeUtils.isShuttlePassenger(FunctionBuildConfig.appIdentityMode)) { - return getFragmentByServeName(OchCommonConst.SHUTTLE_PASSENGER_WEAKNET) - } else if (AppIdentityModeUtils.isCharterPassenger(FunctionBuildConfig.appIdentityMode)) { - return getFragmentByServeName(OchCommonConst.CHARTER_PASSENGER) - } else if (AppIdentityModeUtils.isTaxiPassenger(FunctionBuildConfig.appIdentityMode)) { -// return if (ProjectUtils.isMogo()) { -// getFragmentByServeName(OchCommonConst.TAXI_PASSENGER) -// } else if (ProjectUtils.isSaas()) { - return getFragmentByServeName(OchCommonConst.TAXI_UNMANNED_PASSENGER) -// } else { -// getFragmentByServeName(OchCommonConst.TAXI_PASSENGER) -// } } return LoginStatusManager.getFragment() } @@ -188,22 +178,25 @@ abstract class FacadeProvider : IMoGoFunctionProvider, ILoginCallback { } } - override fun onBusinessChange(businessEnum: BusinessEnum) { + override fun onBusinessChange(businessEnum: Product) { super.onBusinessChange(businessEnum) val (_, identity, model) = AppIdentityModeUtils.getInfo(FunctionBuildConfig.appIdentityMode) when (businessEnum) { - BusinessEnum.None -> {} - BusinessEnum.Taxi -> FunctionBuildConfig.appIdentityMode = + Product.NONE -> {} + Product.TAXI -> FunctionBuildConfig.appIdentityMode = "${AppIdentityModeUtils.TAXI}_${identity}_${model}" - BusinessEnum.Bus -> FunctionBuildConfig.appIdentityMode = + Product.BUS -> FunctionBuildConfig.appIdentityMode = "${AppIdentityModeUtils.BUS}_${identity}_${model}" - BusinessEnum.Shuttle -> FunctionBuildConfig.appIdentityMode = + Product.SHUTTLE -> FunctionBuildConfig.appIdentityMode = "${AppIdentityModeUtils.SHUTTLE}_${identity}_${model}" - BusinessEnum.Charter -> FunctionBuildConfig.appIdentityMode = + Product.CHARTER -> FunctionBuildConfig.appIdentityMode = "${AppIdentityModeUtils.CHARTER}_${identity}_${model}" + + Product.SCHEDULED -> FunctionBuildConfig.appIdentityMode = + "${AppIdentityModeUtils.SCHEDULED}_${identity}_${model}" } CallerDevaToolsManager.updateAppChannel() // 加入启动统计 @@ -214,8 +207,8 @@ abstract class FacadeProvider : IMoGoFunctionProvider, ILoginCallback { MogoAnalyticUtils.track("app_start_time", mStartParams) } - override fun onBusinessChangeDebug(businessEnum: BusinessEnum) { - if (businessEnum == BusinessEnum.None) { + override fun onBusinessChangeDebug(businessEnum: Product) { + if (businessEnum == Product.NONE) { CallerHmiManager.hideToolsView() ToggleDebugView.toggleDebugView.dismiss() SopView.sopView.dismiss() @@ -233,7 +226,7 @@ abstract class FacadeProvider : IMoGoFunctionProvider, ILoginCallback { } else { onBusinessChange(businessEnum) FunctionBuildConfig.ochdebug = true - CallerLogger.d(TAG, "denbug模式进入${LoginStatusEnum.Login}") + d(TAG, "denbug模式进入${LoginStatusEnum.Login}") LoginStatusManager.setLoginStatus(LoginStatusEnum.Login) val supportFragmentManager: FragmentManager? = activity?.supportFragmentManager val fragment = getFragment() @@ -249,7 +242,7 @@ abstract class FacadeProvider : IMoGoFunctionProvider, ILoginCallback { } private fun injectStatusBar() { - activity?.let { it -> + activity?.let { val decorView = it.window.decorView as? FrameLayout ?: return val contentView = (decorView.findViewById(android.R.id.content) as? ViewGroup)?.getChildAt(0) @@ -258,9 +251,7 @@ abstract class FacadeProvider : IMoGoFunctionProvider, ILoginCallback { decorView.clipToPadding = false var statusBarView = decorView.findViewWithTag("status_bar") val statusBar = _commonService?.getStatusBarView(it) - if(statusBarView==null){ - - }else{ + if(statusBarView!=null){ if(statusBar == statusBarView||statusBar==null){ return }else{ @@ -280,14 +271,14 @@ abstract class FacadeProvider : IMoGoFunctionProvider, ILoginCallback { return } } - CallerLogger.d(TAG, "添加statusBar---${_commonService}") + d(TAG, "添加statusBar---${_commonService}") decorView.addView(statusBarView, statusBarLP) } } private fun removeStatusBar() { activity?.let { - CallerLogger.d(TAG, "移除statusBar") + d(TAG, "移除statusBar") val decorView = it.window.decorView as? FrameLayout ?: return val statusBar = decorView.findViewWithTag("status_bar") statusBar?.let { view -> diff --git a/app/config/productWithVehicle.json b/app/config/productWithVehicle.json index b6091e6849..156ca0d5cb 100644 --- a/app/config/productWithVehicle.json +++ b/app/config/productWithVehicle.json @@ -17,9 +17,9 @@ }, "saas": { "T1T2":["taxi"], - "B1":["shuttle","bus"], - "B2":["shuttle","bus"], + "B1":["shuttle","bus","scheduled"], + "B2":["shuttle","bus","scheduled"], "M1":["charter","shuttle"], - "ALL":["charter","shuttle","bus","taxi"] + "ALL":["charter","shuttle","bus","taxi","scheduled"] } } diff --git a/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/AppIdentityModeUtils.kt b/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/AppIdentityModeUtils.kt index c97b4c2918..4bc74fcc01 100644 --- a/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/AppIdentityModeUtils.kt +++ b/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/mogo/AppIdentityModeUtils.kt @@ -47,6 +47,7 @@ object AppIdentityModeUtils { const val SWEEPER = "Sweeper" const val SHUTTLE = "Shuttle" const val CHARTER = "Charter" + const val SCHEDULED = "Scheduled" // 车型 private const val M1 = "M1" @@ -102,6 +103,21 @@ object AppIdentityModeUtils { return false } + /** + * 是否是 班车 + * + * @param appIdentityMode productFlavors 配置的类型 + * @return true - 班车 false - 不是班车 + */ + @JvmStatic + fun isScheduled(appIdentityMode: String): Boolean { + val (bussness, _, _) = getInfo(appIdentityMode) + if (bussness.isNotEmpty()) { + return bussness == SCHEDULED + } + return false + } + /** * 是否是 小巴车端(这里不细分具体是:司机、乘客等类型) * @@ -247,7 +263,6 @@ object AppIdentityModeUtils { } - @JvmStatic fun isT1T2(appIdentityMode: String): Boolean { val (_, _, model) = getInfo(appIdentityMode) @@ -256,6 +271,7 @@ object AppIdentityModeUtils { } return false } + @JvmStatic fun isC1(appIdentityMode: String): Boolean { val (_, _, model) = getInfo(appIdentityMode) @@ -275,19 +291,19 @@ object AppIdentityModeUtils { } @JvmStatic - fun isM1(appIdentityMode: String): Boolean { + fun isB2(appIdentityMode: String): Boolean { val (_, _, model) = getInfo(appIdentityMode) if (model.isNotEmpty()) { - return model == M1 + return model == B2 } return false } @JvmStatic - fun isB2(appIdentityMode: String): Boolean { + fun isM1(appIdentityMode: String): Boolean { val (_, _, model) = getInfo(appIdentityMode) if (model.isNotEmpty()) { - return model == B2 + return model == M1 } return false } @@ -301,6 +317,7 @@ object AppIdentityModeUtils { SWEEPER -> Product.SWEEPER SHUTTLE -> Product.SHUTTLE CHARTER -> Product.CHARTER + SCHEDULED -> Product.SCHEDULED else -> Product.NONE } } @@ -326,10 +343,6 @@ object AppIdentityModeUtils { } } - enum class Product { - NONE, BUS, TAXI, SWEEPER, SHUTTLE, CHARTER - } - enum class Role { NONE, Driver, PASSENGER } @@ -340,3 +353,24 @@ object AppIdentityModeUtils { } +enum class Product(val code: Int) { + NONE(0), + BUS(10), + TAXI(9), + SWEEPER(-1), + SHUTTLE(11), + CHARTER(13) , + SCHEDULED(14); + companion object { + @JvmStatic + fun valueOf(code: Int): Product { + for (value in values()) { + if (value.code == code) { + return value + } + } + return NONE + } + } +} +