diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/BusProvider.kt b/OCH/bus/driver/src/main/java/com/mogo/och/bus/BusDriverProvider.kt
similarity index 60%
rename from OCH/bus/driver/src/main/java/com/mogo/och/bus/BusProvider.kt
rename to OCH/bus/driver/src/main/java/com/mogo/och/bus/BusDriverProvider.kt
index dc940a0192..705a9b8913 100644
--- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/BusProvider.kt
+++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/BusDriverProvider.kt
@@ -3,10 +3,11 @@ package com.mogo.och.bus
import android.content.Context
import androidx.fragment.app.Fragment
import com.alibaba.android.arouter.facade.annotation.Route
-import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
+import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.och.bus.fragment.BusFragment
import com.mogo.och.common.module.biz.constant.OchCommonConst
import com.mogo.och.common.module.biz.provider.CommonService
+import com.mogo.och.common.module.biz.provider.CommonServiceImpl
/**
* 网约车小巴业务实现入口
@@ -14,15 +15,17 @@ import com.mogo.och.common.module.biz.provider.CommonService
* @author tongchenfei
*/
@Route(path = OchCommonConst.BUS_DRIVER)
-class BusProvider : CommonService {
- private val TAG = "BusProvider"
- private var busFragment: BusFragment? = null
+class BusDriverProvider : CommonServiceImpl() {
+
+ private val tag = BusDriverProvider::class.java.simpleName
+ private lateinit var busFragment: BusFragment
+
override fun getFragment(): Fragment {
- return busFragment!!
+ return busFragment
}
override fun init(context: Context) {
- d(TAG, "准备show fragment")
+ CallerLogger.d(tag, "准备show fragment")
busFragment = BusFragment()
}
}
diff --git a/OCH/bus/passenger/src/main/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.kt b/OCH/bus/passenger/src/main/java/com/mogo/och/bus/passenger/BusPassengerProvider.kt
similarity index 61%
rename from OCH/bus/passenger/src/main/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.kt
rename to OCH/bus/passenger/src/main/java/com/mogo/och/bus/passenger/BusPassengerProvider.kt
index 2f82f9d34f..f6b5166313 100644
--- a/OCH/bus/passenger/src/main/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.kt
+++ b/OCH/bus/passenger/src/main/java/com/mogo/och/bus/passenger/BusPassengerProvider.kt
@@ -1,23 +1,23 @@
package com.mogo.och.bus.passenger
import android.content.Context
+import android.view.View
import androidx.fragment.app.Fragment
-import androidx.fragment.app.FragmentActivity
-import androidx.fragment.app.FragmentManager
import com.alibaba.android.arouter.facade.annotation.Route
import com.mogo.eagle.core.data.config.FunctionBuildConfig
-import com.mogo.eagle.core.function.api.base.IMoGoFunctionProvider
-import com.mogo.eagle.core.function.call.setting.CallerMoGoUiSettingManager.stepInDayMode
+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.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.eagle.core.utilcode.util.ActivityUtils
import com.mogo.eagle.core.utilcode.util.MultiDisplayUtils
-import com.mogo.och.bus.passenger.constant.BusPassengerConst
-import com.mogo.och.bus.passenger.ui.BusPassengerRouteFragment
import com.mogo.och.bus.passenger.passenger.ui.PM2BaseFragment
+import com.mogo.och.bus.passenger.passenger.ui.widget.M2StatusBarView
+import com.mogo.och.bus.passenger.ui.BusPStatusBarView
+import com.mogo.och.bus.passenger.ui.BusPassengerRouteFragment
import com.mogo.och.common.module.biz.constant.OchCommonConst
import com.mogo.och.common.module.biz.provider.CommonService
+import com.mogo.och.common.module.biz.provider.CommonServiceImpl
import com.mogo.och.common.module.wigets.media.MediaPlayerActivity
/**
@@ -26,10 +26,12 @@ import com.mogo.och.common.module.wigets.media.MediaPlayerActivity
* Created on 2022/3/29
*/
@Route(path = OchCommonConst.BUS_PASSENGER)
-class MogoOCHBusPassenger : CommonService {
+class BusPassengerProvider : CommonServiceImpl() {
+
+ private val tag = BusPassengerProvider::class.java.simpleName
+
private lateinit var mPM2Fragment: Fragment
- private val TAG = MogoOCHBusPassenger::class.java.simpleName
override fun getFragment(): Fragment {
if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) {
MultiDisplayUtils.startActWithSecond(ActivityUtils.getTopActivity(), MediaPlayerActivity::class.java)
@@ -37,8 +39,21 @@ class MogoOCHBusPassenger : CommonService {
return mPM2Fragment
}
+ override fun getStatusBarView(context: Context): View {
+ if(statusBarView==null) {
+ statusBarView = if (AppIdentityModeUtils.isM2(FunctionBuildConfig.appIdentityMode)) {
+ M2StatusBarView(context)
+ } else if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) {
+ BusPStatusBarView(context)
+ } else{
+ StatusBarView(context)
+ }
+ }
+ return statusBarView!!
+ }
+
override fun init(context: Context) {
- d(SceneConstant.M_TAXI_P + TAG, "init")
+ CallerLogger.d(SceneConstant.M_TAXI_P + tag, "init")
mPM2Fragment = if (AppIdentityModeUtils.isM2(FunctionBuildConfig.appIdentityMode)) {
PM2BaseFragment()
} else if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) {
diff --git a/OCH/bus/passenger/src/main/java/com/mogo/och/bus/passenger/IMogoOCH.java b/OCH/bus/passenger/src/main/java/com/mogo/och/bus/passenger/IMogoOCH.java
deleted file mode 100644
index fb146e17c3..0000000000
--- a/OCH/bus/passenger/src/main/java/com/mogo/och/bus/passenger/IMogoOCH.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package com.mogo.och.bus.passenger;
-
-import androidx.annotation.IdRes;
-import androidx.fragment.app.FragmentActivity;
-
-import com.mogo.eagle.core.function.api.base.IMoGoFunctionProvider;
-
-/**
- * 网约车抽象接口
- *
- * Created on 2022/3/29
- */
-interface IMogoOCH extends IMoGoFunctionProvider {
-
- /**
- * 初始化网约车容器
- *
- * @param activity
- * @param containerId 容器ID
- */
- void createCoverage(FragmentActivity activity, @IdRes int containerId);
-}
diff --git a/OCH/bus/passenger/src/main/java/com/mogo/och/bus/passenger/provider/StatusViewManager.java b/OCH/bus/passenger/src/main/java/com/mogo/och/bus/passenger/provider/StatusViewManager.java
deleted file mode 100644
index d4fdde8ebb..0000000000
--- a/OCH/bus/passenger/src/main/java/com/mogo/och/bus/passenger/provider/StatusViewManager.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package com.mogo.och.bus.passenger.provider;
-
-import android.content.Context;
-import android.view.View;
-
-import androidx.annotation.NonNull;
-
-import com.alibaba.android.arouter.facade.annotation.Route;
-import com.mogo.eagle.core.data.config.FunctionBuildConfig;
-import com.mogo.eagle.core.data.constants.MogoServicePaths;
-import com.mogo.eagle.core.function.api.hmi.view.IStatusViewLayout;
-import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils;
-import com.mogo.och.bus.passenger.passenger.ui.widget.M2StatusBarView;
-import com.mogo.och.bus.passenger.ui.BusPStatusBarView;
-
-/**
- * @author congtaowang
- * @since 2020-01-06
- *
- * 根据优先级控制显示 window view.
- */
-@Route( path = MogoServicePaths.PATH_STATUS_VIEW_MANAGER )
-public class StatusViewManager implements IStatusViewLayout {
-
-
- @NonNull
- @Override
- public View getStatusView(Context context) {
- if (AppIdentityModeUtils.isM2(FunctionBuildConfig.appIdentityMode)) {
- return new M2StatusBarView(context);
- } else if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) {
- return new BusPStatusBarView(context);
- }
- return new BusPStatusBarView(context);
- }
-
- @Override
- public void init(Context context) {
-
- }
-}
diff --git a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/CharterProvider.kt b/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/CharterDriverProvider.kt
similarity index 55%
rename from OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/CharterProvider.kt
rename to OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/CharterDriverProvider.kt
index 00f8fd72b8..d44b489d9f 100644
--- a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/CharterProvider.kt
+++ b/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/CharterDriverProvider.kt
@@ -4,10 +4,11 @@ import android.content.Context
import androidx.fragment.app.Fragment
import com.alibaba.android.arouter.facade.annotation.Route
import com.magic.mogo.och.charter.fragment.DriverM1Fragment
-import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
+import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.och.common.module.biz.constant.OchCommonConst
import com.mogo.och.common.module.biz.provider.CommonService
+import com.mogo.och.common.module.biz.provider.CommonServiceImpl
/**
@@ -15,18 +16,18 @@ import com.mogo.och.common.module.biz.provider.CommonService
* @date: 2023/2/22
*/
@Route(path = OchCommonConst.CHARTER_DRIVER)
-class CharterProvider : CommonService {
+class CharterDriverProvider : CommonServiceImpl() {
- private lateinit var driverM1Fragment: Fragment
- private val TAG = CharterProvider::class.java.simpleName
+ private val tag = CharterDriverProvider::class.java.simpleName
+ private lateinit var fragment: Fragment
override fun getFragment(): Fragment {
- return driverM1Fragment
+ return fragment
}
- override fun init(context: Context?) {
- d(SceneConstant.M_TAXI + TAG, "init")
- driverM1Fragment = DriverM1Fragment()
+ override fun init(context: Context) {
+ CallerLogger.d(SceneConstant.M_TAXI + tag, "init")
+ fragment = DriverM1Fragment()
}
}
\ No newline at end of file
diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/CharterPassengerProvider.kt b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/CharterPassengerProvider.kt
new file mode 100644
index 0000000000..014ff3414d
--- /dev/null
+++ b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/CharterPassengerProvider.kt
@@ -0,0 +1,42 @@
+package com.mogo.och.charter.passenger
+
+import android.content.Context
+import android.view.View
+import androidx.fragment.app.Fragment
+import com.alibaba.android.arouter.facade.annotation.Route
+import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
+import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
+import com.mogo.och.charter.passenger.ui.MainFragment
+import com.mogo.och.charter.passenger.ui.statusbar.StatusBarView
+import com.mogo.och.common.module.biz.constant.OchCommonConst
+import com.mogo.och.common.module.biz.provider.CommonService
+import com.mogo.och.common.module.biz.provider.CommonServiceImpl
+
+/**
+ * 网约车-Bus-乘客端
+ *
+ * Created on 2022/3/29
+ */
+@Route(path = OchCommonConst.CHARTER_PASSENGER)
+class CharterPassengerProvider : CommonServiceImpl() {
+
+ private val tag = CharterPassengerProvider::class.java.simpleName
+ private lateinit var fragment: MainFragment
+
+ override fun getFragment(): Fragment {
+ return fragment
+ }
+
+ override fun getStatusBarView(context: Context): View {
+ if(statusBarView==null){
+ statusBarView = StatusBarView(context)
+ }
+ return statusBarView!!
+ }
+
+ override fun init(context: Context) {
+ CallerLogger.d(SceneConstant.M_TAXI_P + tag, "init")
+ fragment = MainFragment()
+ }
+
+}
\ No newline at end of file
diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/MogoOCHBusPassenger.kt b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/MogoOCHBusPassenger.kt
deleted file mode 100644
index c96cef45f3..0000000000
--- a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/MogoOCHBusPassenger.kt
+++ /dev/null
@@ -1,37 +0,0 @@
-package com.mogo.och.charter.passenger
-
-import android.content.Context
-import androidx.fragment.app.Fragment
-import androidx.fragment.app.FragmentActivity
-import androidx.fragment.app.FragmentManager
-import com.alibaba.android.arouter.facade.annotation.Route
-import com.mogo.eagle.core.function.api.base.IMoGoFunctionProvider
-import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
-import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
-import com.mogo.och.charter.passenger.constant.CharterPassengerConst
-import com.mogo.och.charter.passenger.ui.MainFragment
-import com.mogo.och.common.module.biz.constant.OchCommonConst
-import com.mogo.och.common.module.biz.provider.CommonService
-
-/**
- * 网约车-Bus-乘客端
- *
- * Created on 2022/3/29
- */
-@Route(path = OchCommonConst.CHARTER_PASSENGER)
-class MogoOCHBusPassenger : CommonService {
-
- private lateinit var mPassengerFragment: MainFragment
- private val TAG = MogoOCHBusPassenger::class.java.simpleName
-
-
- override fun getFragment(): Fragment {
- return mPassengerFragment
- }
-
- override fun init(context: Context) {
- d(SceneConstant.M_TAXI_P + TAG, "init")
- mPassengerFragment = MainFragment()
- }
-
-}
\ No newline at end of file
diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/provider/StatusViewManager.java b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/provider/StatusViewManager.java
deleted file mode 100644
index aae72e7b38..0000000000
--- a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/provider/StatusViewManager.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package com.mogo.och.charter.passenger.provider;
-
-import android.content.Context;
-import android.view.View;
-
-import com.mogo.och.charter.passenger.ui.statusbar.StatusBarView;
-
-import androidx.annotation.NonNull;
-
-import com.alibaba.android.arouter.facade.annotation.Route;
-import com.mogo.eagle.core.data.constants.MogoServicePaths;
-import com.mogo.eagle.core.function.api.hmi.view.IStatusViewLayout;
-import com.mogo.och.charter.passenger.ui.statusbar.StatusBarView;
-
-/**
- * @author congtaowang
- * @since 2020-01-06
- *
- * 根据优先级控制显示 window view.
- */
-@Route( path = MogoServicePaths.PATH_STATUS_VIEW_MANAGER )
-public class StatusViewManager implements IStatusViewLayout {
-
- private StatusBarView statusBarView;
-
- @NonNull
- @Override
- public View getStatusView(Context context) {
- return statusBarView;
- }
-
- @Override
- public void init(Context context) {
- statusBarView = new StatusBarView(context);
- }
-}
diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/MainFragment.kt b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/MainFragment.kt
index 524318a88a..1359dfa61a 100644
--- a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/MainFragment.kt
+++ b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/MainFragment.kt
@@ -31,8 +31,10 @@ import com.mogo.och.charter.passenger.ui.dialogfragment.M1CarUserNoOrderFragment
import com.mogo.och.charter.passenger.ui.dialogfragment.NoviceGuidanceFragment
import com.mogo.och.charter.passenger.ui.lockview.LockManager
import com.mogo.och.charter.passenger.ui.statusbar.StatusBarView
+import com.mogo.och.common.module.biz.constant.OchCommonConst
import com.mogo.och.common.module.wigets.toast.ToastCharterUtils
import com.mogo.och.common.module.biz.login.LoginStatusManager
+import com.mogo.och.common.module.biz.provider.CommonService
import kotlinx.android.synthetic.main.charter_p_main_fragment.aciv_enter_video
import kotlinx.android.synthetic.main.charter_p_main_fragment.aciv_map_2_default
import kotlinx.android.synthetic.main.charter_p_main_fragment.bb_boorombar
@@ -80,13 +82,16 @@ class MainFragment : MvpFragment(), IMogo
private var statusBarView: StatusBarView? = null
override fun getLayoutId(): Int {
- (ARouter.getInstance().build(MogoServicePaths.PATH_STATUS_VIEW_MANAGER)
- .navigation() as? IStatusViewLayout)?.apply {
- val statusView = getStatusView(requireContext())
- if (statusView is StatusBarView) {
- statusBarView = statusView
+ (ARouter.getInstance().build(OchCommonConst.CHARTER_PASSENGER)
+ .navigation() as? CommonService)?.apply {
+ context?.let {
+ val statusView = getStatusBarView(it)
+ if (statusView is StatusBarView) {
+ statusBarView = statusView
+ }
}
}
+
return R.layout.charter_p_main_fragment
}
@@ -138,6 +143,7 @@ class MainFragment : MvpFragment(), IMogo
}
showBizView(orderinfo = true)
}
+
BottomBar.SelectView.SETTING -> showBizView(softControl = true)
BottomBar.SelectView.LINE -> showBizView(selectLine = true)
BottomBar.SelectView.VIDEO -> showBizView(showVideo = true)
@@ -207,10 +213,10 @@ class MainFragment : MvpFragment(), IMogo
} else {
biz_video.visibility = View.GONE
}
- if(showMusic) {
+ if (showMusic) {
mcv_play_music.visibility = View.VISIBLE
statusBarView?.setBackgroudColor(R.color.charter_p_40ffffff)
- }else{
+ } else {
mcv_play_music.visibility = View.GONE
}
}
@@ -290,7 +296,7 @@ class MainFragment : MvpFragment(), IMogo
)
}
- fun showOvermapPoint(){
+ fun showOvermapPoint() {
omvOverMap.setDebugMode(true)
}
@@ -348,7 +354,7 @@ class MainFragment : MvpFragment(), IMogo
omvOverMap?.drawSitePolyline(coordinates, lineTrajectory)
}
- fun includePoint(coordinates: List){
+ fun includePoint(coordinates: List) {
omvOverMap?.includeSitePointsAndUpdateCamera(coordinates)
}
diff --git a/OCH/common/biz/build.gradle b/OCH/common/biz/build.gradle
index 82d96c1975..dbe3b2d6d3 100644
--- a/OCH/common/biz/build.gradle
+++ b/OCH/common/biz/build.gradle
@@ -20,6 +20,9 @@ android {
}
}
+ resourcePrefix "biz_"
+
+
buildTypes {
release {
minifyEnabled false
diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/LoginConst.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/LoginConst.kt
new file mode 100644
index 0000000000..f474a6ac36
--- /dev/null
+++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/LoginConst.kt
@@ -0,0 +1,55 @@
+package com.mogo.och.biz.login
+
+import com.mogo.eagle.core.data.config.FunctionBuildConfig
+
+/**
+ * Created on 2021/12/6
+ */
+class LoginConst {
+ companion object {
+ @JvmStatic
+ fun getBaseUrl(): String {
+ return FunctionBuildConfig.urlJson.ochUrl
+ }
+ @JvmStatic
+ fun getShuttleUrl(): String {
+ return FunctionBuildConfig.urlJson.shuttleUrl
+ }
+ @JvmStatic
+ fun getSweeperUrl(): String {
+ return FunctionBuildConfig.urlJson.sweeperUrl
+ }
+
+ @JvmStatic
+ fun getEagleMisUrl(): String {
+ return FunctionBuildConfig.urlJson.eagleMisUrl
+ }
+
+ // token 失效 重新获取token
+ const val WAIT_TAKEN = 100046
+
+ const val BIZ_LOGIN = "/ochbiz/common/login"
+
+ const val BUS_DRIVER = "/bus/driver"
+ const val BUS_PASSENGER = "/bus/passenger"
+
+ const val CHARTER_DRIVER = "/charter/driver"
+ const val CHARTER_PASSENGER = "/charter/passenger"
+
+ const val SHUTTLE_DRIVER = "/shuttle/driver"
+ const val SHUTTLE_PASSENGER = "/shuttle/passenger"
+
+ const val SWEEPER_DRIVER = "/sweeper/driver"
+
+ const val TAXI_DRIVER = "/taxi/driver"
+ const val TAXI_PASSENGER = "/taxi/passenger"
+
+ const val TAXI_UNMANNED_DRIVER = "/taxiunman/driver"
+ const val TAXI_UNMANNED_PASSENGER = "/taxiunman/passenger"
+
+ const val BUSINESS_STRING = 100
+
+ // 自动驾驶自动规划的最大距离
+ const val AUTOMATIC_PLANNING_MAX_DISTANCE = 15
+ }
+}
\ No newline at end of file
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 8933257237..6c2b3d2e80 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
@@ -1,12 +1,15 @@
package com.mogo.och.biz.login
import android.content.Context
+import android.view.View
import androidx.fragment.app.Fragment
import com.alibaba.android.arouter.facade.annotation.Route
+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.och.biz.login.model.OchCommonLoginStatusDefaultModel
+import com.mogo.och.biz.login.model.LoginStatusDefaultModel
import com.mogo.och.biz.login.ui.LoginFragment
-import com.mogo.och.biz.login.ui.SimpleFragment
+import com.mogo.och.biz.login.ui.LoginPassengerFragment
import com.mogo.och.common.module.biz.constant.OchCommonConst
import com.mogo.och.common.module.biz.login.LoginInfo
import com.mogo.och.common.module.biz.login.LoginService
@@ -21,25 +24,34 @@ import com.mogo.och.common.module.biz.login.TaxiLoginStatusEnum
*/
@Route(path = OchCommonConst.BIZ_LOGIN)
class LoginProvider : LoginService {
+
+ private val tag = LoginProvider::class.java.simpleName
private lateinit var loginFragment: Fragment
-
- private var uiModel = true
-
private var loginStatus: TaxiLoginStatusEnum = TaxiLoginStatusEnum.None
private var loginInfo: LoginInfo?=null
- private val TAG = "LoginProvider"
+
override fun init(context: Context) {
- CallerLogger.d(TAG,"init")
- loginFragment = LoginFragment()
+ CallerLogger.d(tag,"LoginProvider init")
+ loginFragment= if(AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)){
+ LoginFragment()
+ }else if(AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)){
+ LoginPassengerFragment()
+ }else{
+ LoginFragment()
+ }
}
override fun getFragment(): Fragment {
- CallerLogger.d(TAG,"getFragment ${Thread.currentThread().name}")
- return SimpleFragment()
+ CallerLogger.d(tag,"getFragment:${loginFragment}")
+ return loginFragment
+ }
+
+ override fun getStatusBarView(context: Context): View {
+ return View(context)
}
override fun setLoginStatus(status: Int) {
- CallerLogger.d(TAG,"setLoginStatus:${status}")
+ CallerLogger.d(tag,"setLoginStatus:${status}")
when (status) {
0 -> {
setLoginStatus(TaxiLoginStatusEnum.Logout)
@@ -54,53 +66,47 @@ class LoginProvider : LoginService {
}
override fun queryLoginStatusByNet() {
- CallerLogger.d(TAG,"queryLoginStatusByNet")
- OchCommonLoginStatusDefaultModel.queryCarStatus()
- }
- override fun showUiModel(show: Boolean) {
- CallerLogger.d(TAG,"showUiModel${show}")
- uiModel = show;
+ CallerLogger.d(tag,"queryLoginStatusByNet")
+ LoginStatusDefaultModel.queryCarStatus()
}
+
override fun loginOut(mLatitude: Double, mLongitude: Double) {
- CallerLogger.d(TAG,"loginOut mLatitude:${mLatitude}--mLongitude:${mLongitude}")
- OchCommonLoginStatusDefaultModel.logout(mLatitude, mLongitude)
+ CallerLogger.d(tag,"loginOut mLatitude:${mLatitude}--mLongitude:${mLongitude}")
+ LoginStatusDefaultModel.logout(mLatitude, mLongitude)
}
override fun setLoginInfo(loginInfo: LoginInfo) {
- CallerLogger.d(TAG,"setLoginInfo:${loginInfo}")
+ CallerLogger.d(tag,"setLoginInfo:${loginInfo}")
this.loginInfo = loginInfo
}
override fun getLoginInfo(): LoginInfo? {
- CallerLogger.d(TAG,"getLoginInfo")
+ CallerLogger.d(tag,"getLoginInfo")
return loginInfo
}
override fun getPurpose(): TaxiDriverRoleEnum {
- CallerLogger.d(TAG,"getPurpose")
+ CallerLogger.d(tag,"getPurpose")
return TaxiDriverRoleEnum.valueOf(loginInfo?.purpose)
}
override fun isLogin(): Boolean {
- CallerLogger.d(TAG,"isLogin")
+ CallerLogger.d(tag,"isLogin")
return loginStatus == TaxiLoginStatusEnum.Login
}
override fun getLoginStatus(): TaxiLoginStatusEnum {
- CallerLogger.d(TAG,"getLoginStatus:${loginStatus}")
+ CallerLogger.d(tag,"getLoginStatus:${loginStatus}")
return loginStatus
}
override fun setLoginStatus(loginStatus: TaxiLoginStatusEnum) {
- CallerLogger.d(TAG,"setLoginStatus:${loginStatus}")
+ CallerLogger.d(tag,"setLoginStatus:${loginStatus}")
if(loginStatus!=this.loginStatus){
this.loginStatus = loginStatus
LoginStatusManager.invokeLoginStatusChange(loginStatus)
}
}
- companion object {
- private const val TAG = "LoginProvider"
- }
}
diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/OchCommonLoginModel.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/LoginModel.kt
similarity index 98%
rename from OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/OchCommonLoginModel.kt
rename to OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/LoginModel.kt
index b694c786bd..65267fbe42 100644
--- a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/OchCommonLoginModel.kt
+++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/LoginModel.kt
@@ -24,7 +24,7 @@ import com.mogo.och.common.module.wigets.toast.ToastCharterUtils
* 网约车 - 出租车业务逻辑处理
*/
@SuppressLint("StaticFieldLeak")
-object OchCommonLoginModel {
+object LoginModel {
private val TAG = "TaxiLoginModel"
private var mContext: Context? = null
@@ -45,7 +45,7 @@ object OchCommonLoginModel {
}
fun setiTaxiLoginCallback(iTaxiLoginCallback: ITaxiLoginCallback?) {
- OchCommonLoginModel.iTaxiLoginCallback = iTaxiLoginCallback
+ LoginModel.iTaxiLoginCallback = iTaxiLoginCallback
}
fun release() {
diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/OchCommonLoginStatusDefaultModel.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/LoginStatusDefaultModel.kt
similarity index 93%
rename from OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/OchCommonLoginStatusDefaultModel.kt
rename to OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/LoginStatusDefaultModel.kt
index ff4cc0b912..09701160b7 100644
--- a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/OchCommonLoginStatusDefaultModel.kt
+++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/LoginStatusDefaultModel.kt
@@ -9,13 +9,12 @@ import com.mogo.eagle.core.utilcode.util.GsonUtils
import com.mogo.och.biz.login.bean.DriverStatusQueryRespBean
import com.mogo.och.common.module.bean.dpmsg.BusCacheKey
import com.mogo.och.common.module.bean.dpmsg.LoginCacheStatus
-import com.mogo.och.common.module.biz.login.ILoginCallback
import com.mogo.och.common.module.biz.login.LoginStatusManager
import com.mogo.och.common.module.utils.DateTimeUtil
import com.mogo.och.data.manager.cache.CacheDataManager
@SuppressLint("StaticFieldLeak")
-object OchCommonLoginStatusDefaultModel : OchCommonLoginStatusModel() {
+object LoginStatusDefaultModel : LoginStatusModel() {
const val TAG = "OchCommonLoginStatusDefaultModel"
diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/OchCommonLoginStatusModel.java b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/LoginStatusModel.java
similarity index 98%
rename from OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/OchCommonLoginStatusModel.java
rename to OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/LoginStatusModel.java
index 82d14a1113..a5cf118265 100644
--- a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/OchCommonLoginStatusModel.java
+++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/LoginStatusModel.java
@@ -4,7 +4,6 @@ import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAX
import android.content.Context;
-import com.mogo.commons.AbsMogoApplication;
import com.mogo.eagle.core.data.BaseData;
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger;
import com.mogo.eagle.core.utilcode.util.NetworkUtils;
@@ -23,7 +22,7 @@ import java.util.concurrent.TimeUnit;
import io.reactivex.Observable;
import io.reactivex.disposables.Disposable;
-public abstract class OchCommonLoginStatusModel {
+public abstract class LoginStatusModel {
private static final String TAG = "OchCommonLoginStatusModel";
diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/net/OchCommonServiceManager.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/net/OchCommonServiceManager.kt
index c83b64a357..3cfa70e051 100644
--- a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/net/OchCommonServiceManager.kt
+++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/net/OchCommonServiceManager.kt
@@ -17,15 +17,24 @@ import com.mogo.och.common.module.biz.constant.OchCommonConst
import com.mogo.och.common.module.biz.network.OchCommonServiceCallback
import com.mogo.och.common.module.biz.network.OchCommonSubscribeImpl
import com.mogo.och.common.module.biz.network.interceptor.transformTry
+import com.mogo.och.common.module.utils.ProjectUtils
object OchCommonServiceManager {
private const val TAG = "OchCommonServiceManager"
- private val loginDefaultManage: OchLoginServiceApi =
+ private val ochLoginServiceSaasEh: OchLoginServiceSaasEhApi by lazy {
MoGoRetrofitFactory.getInstance(OchCommonConst.getBaseUrl()).create(
- OchLoginServiceApi::class.java
+ OchLoginServiceSaasEhApi::class.java
)
+ }
+
+ private val ochLoginServiceMogo: OchLoginServiceMogoApi by lazy {
+ MoGoRetrofitFactory.getInstance(OchCommonConst.getBaseUrl()).create(
+ OchLoginServiceMogoApi::class.java
+ )
+ }
+
private var draiverSnCacher = ""
/**
* 获取Bus司机端的sn
@@ -50,12 +59,22 @@ object OchCommonServiceManager {
context: Context, phone: String?,
callback: OchCommonServiceCallback?
) {
- loginDefaultManage.getPhoneCode(
- MoGoAiCloudClientConfig.getInstance().serviceAppId,
- SharedPrefsMgr.getInstance().token,
- TaxiLoginSmsReqBean(phone)
- ).transformTry()
- .subscribe(OchCommonSubscribeImpl(context, callback, "getPhoneCode"))
+ if (ProjectUtils.isMogo()) {
+ ochLoginServiceMogo.getPhoneCode(
+ MoGoAiCloudClientConfig.getInstance().serviceAppId,
+ SharedPrefsMgr.getInstance().token,
+ TaxiLoginSmsReqBean(phone)
+ ).transformTry()
+ .subscribe(OchCommonSubscribeImpl(context, callback, "sendSms"))
+ }else{
+ ochLoginServiceSaasEh.getPhoneCode(
+ MoGoAiCloudClientConfig.getInstance().serviceAppId,
+ SharedPrefsMgr.getInstance().token,
+ TaxiLoginSmsReqBean(phone)
+ ).transformTry()
+ .subscribe(OchCommonSubscribeImpl(context, callback, "sendSms"))
+ }
+
}
/**
@@ -70,11 +89,19 @@ object OchCommonServiceManager {
callback: OchCommonServiceCallback?
) {
val sn = SharedPrefsMgr.getInstance().sn
- loginDefaultManage.gotoLoginBycode(
- MoGoAiCloudClientConfig.getInstance().serviceAppId,
- SharedPrefsMgr.getInstance().token,
- TaxiLoginReqBean(phone, code, sn, location4Login)
- ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "gotoLoginBycode"))
+ if (ProjectUtils.isMogo()) {
+ ochLoginServiceMogo.gotoLoginBycode(
+ MoGoAiCloudClientConfig.getInstance().serviceAppId,
+ SharedPrefsMgr.getInstance().token,
+ TaxiLoginReqBean(phone, code, sn, location4Login)
+ ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "login"))
+ }else{
+ ochLoginServiceSaasEh.gotoLoginBycode(
+ MoGoAiCloudClientConfig.getInstance().serviceAppId,
+ SharedPrefsMgr.getInstance().token,
+ TaxiLoginReqBean(phone, code, sn, location4Login)
+ ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "login"))
+ }
}
/**
@@ -86,13 +113,25 @@ object OchCommonServiceManager {
location4Login: TaxiLogoutReqBean.Location4Login?,
callback: OchCommonServiceCallback?
) {
- loginDefaultManage.logout(MoGoAiCloudClientConfig.getInstance().serviceAppId,
- SharedPrefsMgr.getInstance().token,
- TaxiLogoutReqBean(
- SharedPrefsMgr.getInstance().sn,
- location4Login
- )
- ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "logout"))
+ if (ProjectUtils.isMogo()) {
+ ochLoginServiceMogo.logout(
+ MoGoAiCloudClientConfig.getInstance().serviceAppId,
+ SharedPrefsMgr.getInstance().token,
+ TaxiLogoutReqBean(
+ SharedPrefsMgr.getInstance().sn,
+ location4Login
+ )
+ ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "logout"))
+ }else {
+ ochLoginServiceSaasEh.logout(
+ MoGoAiCloudClientConfig.getInstance().serviceAppId,
+ SharedPrefsMgr.getInstance().token,
+ TaxiLogoutReqBean(
+ SharedPrefsMgr.getInstance().sn,
+ location4Login
+ )
+ ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "logout"))
+ }
}
/**
@@ -112,12 +151,21 @@ object OchCommonServiceManager {
} else{
draiverSn
}
- loginDefaultManage.queryDriverServiceStatusAndLoginStatus(
- MoGoAiCloudClientConfig.getInstance().serviceAppId,
- SharedPrefsMgr.getInstance().token,
- sn
- ).transformTry()
- .subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverServiceStatus"))
+ if (ProjectUtils.isMogo()) {
+ ochLoginServiceMogo.queryDriverServiceStatusAndLoginStatus(
+ MoGoAiCloudClientConfig.getInstance().serviceAppId,
+ SharedPrefsMgr.getInstance().token,
+ sn
+ ).transformTry()
+ .subscribe(OchCommonSubscribeImpl(context, callback, "loginStatus"))
+ }else{
+ ochLoginServiceSaasEh.queryDriverServiceStatusAndLoginStatus(
+ MoGoAiCloudClientConfig.getInstance().serviceAppId,
+ SharedPrefsMgr.getInstance().token,
+ sn
+ ).transformTry()
+ .subscribe(OchCommonSubscribeImpl(context, callback, "loginStatus"))
+ }
}
}
\ No newline at end of file
diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/net/OchLoginServiceApi.java b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/net/OchLoginServiceMogoApi.java
similarity index 88%
rename from OCH/common/biz/src/main/java/com/mogo/och/biz/login/net/OchLoginServiceApi.java
rename to OCH/common/biz/src/main/java/com/mogo/och/biz/login/net/OchLoginServiceMogoApi.java
index 9fcfeb8a31..e40150878f 100644
--- a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/net/OchLoginServiceApi.java
+++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/net/OchLoginServiceMogoApi.java
@@ -20,7 +20,7 @@ import retrofit2.http.Query;
*
* 网约车-出租车接口定义
*/
-interface OchLoginServiceApi {
+interface OchLoginServiceMogoApi {
/**
* 获取手机验证码
*
@@ -40,7 +40,7 @@ interface OchLoginServiceApi {
* @return
*/
@Headers({"Content-type:application/json;charset=UTF-8"})
- @POST("/autopilot-car-hailing/cab/flow/v1/bus/driver/bus/startOperation")
+ @POST("/autopilot-car-hailing/cab/flow/v1/driver/login")
Observable gotoLoginBycode(@Header("appId") String appId
, @Header("ticket") String ticket, @Body TaxiLoginReqBean data);
@@ -48,7 +48,7 @@ interface OchLoginServiceApi {
* 登出接口
*/
@Headers({"Content-type:application/json;charset=UTF-8"})
- @POST("/autopilot-car-hailing/cab/flow/v1/bus/driver/bus/endOperation")
+ @POST("/autopilot-car-hailing/cab/flow/v1/driver/logout")
Observable logout(@Header("appId") String appId, @Header("ticket") String ticket,
@Body TaxiLogoutReqBean data);
@@ -59,7 +59,7 @@ interface OchLoginServiceApi {
* @return
*/
@Headers({"Content-type:application/json;charset=UTF-8"})
- @GET("/autopilot-car-hailing/operation/v1/driver/bus/loginStatus")
+ @GET("/autopilot-car-hailing/cab/flow/v1/driver/loginStatus")
Observable queryDriverServiceStatusAndLoginStatus(@Header("appId") String appId
, @Header("ticket") String ticket, @Query("sn") String sn);
diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/net/OchLoginServiceSaasEhApi.java b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/net/OchLoginServiceSaasEhApi.java
new file mode 100644
index 0000000000..bb94d176a0
--- /dev/null
+++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/net/OchLoginServiceSaasEhApi.java
@@ -0,0 +1,66 @@
+package com.mogo.och.biz.login.net;
+
+import com.mogo.eagle.core.data.BaseData;
+import com.mogo.och.biz.login.bean.DriverStatusQueryRespBean;
+import com.mogo.och.biz.login.bean.TaxiLoginReqBean;
+import com.mogo.och.biz.login.bean.TaxiLoginRespBean;
+import com.mogo.och.biz.login.bean.TaxiLoginSmsReqBean;
+import com.mogo.och.biz.login.bean.TaxiLogoutReqBean;
+
+import io.reactivex.Observable;
+import retrofit2.http.Body;
+import retrofit2.http.GET;
+import retrofit2.http.Header;
+import retrofit2.http.Headers;
+import retrofit2.http.POST;
+import retrofit2.http.Query;
+
+/**
+ * Created by pangfan on 2021/8/19
+ *
+ * 网约车-出租车接口定义
+ */
+interface OchLoginServiceSaasEhApi {
+ /**
+ * 获取手机验证码
+ *
+ * @return
+ */
+ @Headers({"Content-type:application/json;charset=UTF-8"})
+ @POST("/och-vehicle/cabin/sendSms")
+ Observable getPhoneCode(@Header("appId") String appId
+ , @Header("ticket") String ticket, @Body TaxiLoginSmsReqBean data);
+
+ /**
+ * 通过验证码登录
+ *
+ * @param appId
+ * @param ticket
+ * @param data
+ * @return
+ */
+ @Headers({"Content-type:application/json;charset=UTF-8"})
+ @POST("/och-vehicle/cabin/login")
+ Observable gotoLoginBycode(@Header("appId") String appId
+ , @Header("ticket") String ticket, @Body TaxiLoginReqBean data);
+
+ /**
+ * 登出接口
+ */
+ @Headers({"Content-type:application/json;charset=UTF-8"})
+ @POST("/och-vehicle/cabin/logout")
+ Observable logout(@Header("appId") String appId, @Header("ticket") String ticket,
+ @Body TaxiLogoutReqBean data);
+
+ /**
+ * 接单状态和登录状态查询 出租车司机端、小巴车司机端、小巴车乘客端
+ *
+ * @param sn
+ * @return
+ */
+ @Headers({"Content-type:application/json;charset=UTF-8"})
+ @GET("/och-vehicle/cabin/loginStatus")
+ Observable queryDriverServiceStatusAndLoginStatus(@Header("appId") String appId
+ , @Header("ticket") String ticket, @Query("sn") String sn);
+
+}
diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/presenter/LoginPassengerPresenter.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/presenter/LoginPassengerPresenter.kt
new file mode 100644
index 0000000000..a13ebc218c
--- /dev/null
+++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/presenter/LoginPassengerPresenter.kt
@@ -0,0 +1,50 @@
+package com.mogo.och.biz.login.presenter
+
+import androidx.lifecycle.LifecycleOwner
+import com.mogo.commons.AbsMogoApplication
+import com.mogo.commons.mvp.Presenter
+import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
+import com.mogo.och.biz.login.callback.ITaxiLoginCallback
+import com.mogo.och.biz.login.model.LoginModel
+import com.mogo.och.biz.login.ui.LoginPassengerFragment
+
+/**
+ * @author congtaowang
+ * @since 2021/1/18
+ *
+ * 描述
+ */
+class LoginPassengerPresenter(view: LoginPassengerFragment?) : Presenter(view), ITaxiLoginCallback {
+
+ private val TAG = LoginPassengerPresenter::class.java.simpleName
+
+ init {
+ initListeners()
+ CallerLogger.d(TAG, "乘客屏-登录-Init")
+ }
+
+ private fun initListeners() {
+ LoginModel.init(AbsMogoApplication.getApp())
+ LoginModel.setiTaxiLoginCallback(this)
+ }
+
+ override fun onCreate(owner: LifecycleOwner) {
+ super.onCreate(owner)
+ CallerLogger.d(TAG, "乘客屏-登录-登陆")
+ }
+
+
+
+ override fun onDestroy(owner: LifecycleOwner) {
+ super.onDestroy(owner)
+ }
+
+ override fun getPhoneCodeSuccess() {
+
+ }
+
+ override fun loginSuccess() {
+
+ }
+
+}
\ No newline at end of file
diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/presenter/OchCommonLoginPresenter.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/presenter/LoginPresenter.kt
similarity index 84%
rename from OCH/common/biz/src/main/java/com/mogo/och/biz/login/presenter/OchCommonLoginPresenter.kt
rename to OCH/common/biz/src/main/java/com/mogo/och/biz/login/presenter/LoginPresenter.kt
index c3483c33e7..b15bbeba06 100644
--- a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/presenter/OchCommonLoginPresenter.kt
+++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/presenter/LoginPresenter.kt
@@ -9,7 +9,7 @@ import com.mogo.eagle.core.utilcode.util.RegexUtils
import com.mogo.och.biz.R
import com.mogo.och.biz.login.callback.ITaxiLoginCallback
import com.mogo.och.biz.login.ui.LoginFragment
-import com.mogo.och.biz.login.model.OchCommonLoginModel
+import com.mogo.och.biz.login.model.LoginModel
import com.mogo.och.common.module.wigets.toast.ToastCharterUtils
import io.reactivex.Observable
import io.reactivex.android.schedulers.AndroidSchedulers
@@ -23,11 +23,11 @@ import java.util.concurrent.TimeUnit
*
* 描述
*/
-class OchCommonLoginPresenter(view: LoginFragment?) : Presenter(view), ITaxiLoginCallback {
+class LoginPresenter(view: LoginFragment?) : Presenter(view), ITaxiLoginCallback {
private var countDownDisposable: Disposable? = null
- private val TAG = OchCommonLoginPresenter::class.java.simpleName
+ private val TAG = LoginPresenter::class.java.simpleName
init {
initListeners()
@@ -35,12 +35,12 @@ class OchCommonLoginPresenter(view: LoginFragment?) : Presenter(
}
private fun initListeners() {
- OchCommonLoginModel.init(AbsMogoApplication.getApp())
- OchCommonLoginModel.setiTaxiLoginCallback(this)
+ LoginModel.init(AbsMogoApplication.getApp())
+ LoginModel.setiTaxiLoginCallback(this)
}
fun getPhoneCode(phone:String){
- if(!OchCommonLoginModel.hasInit()){
+ if(!LoginModel.hasInit()){
initListeners()
}
if (!RegexUtils.isMobileExact(phone)) {
@@ -48,7 +48,7 @@ class OchCommonLoginPresenter(view: LoginFragment?) : Presenter(
mView?.inputPhoneError()
return
}
- OchCommonLoginModel.getPhoneCode(phone)
+ LoginModel.getPhoneCode(phone)
}
override fun onCreate(owner: LifecycleOwner) {
@@ -60,7 +60,7 @@ class OchCommonLoginPresenter(view: LoginFragment?) : Presenter(
override fun onDestroy(owner: LifecycleOwner) {
super.onDestroy(owner)
- OchCommonLoginModel.release()
+ LoginModel.release()
countDownDisposable?.let {
if (!it.isDisposed) {
it.dispose()
@@ -92,7 +92,7 @@ class OchCommonLoginPresenter(view: LoginFragment?) : Presenter(
}
fun gotoLogin(phone: String, code: String) {
- if(!OchCommonLoginModel.hasInit()){
+ if(!LoginModel.hasInit()){
initListeners()
}
if (!RegexUtils.isMobileExact(phone)) {
@@ -105,6 +105,6 @@ class OchCommonLoginPresenter(view: LoginFragment?) : Presenter(
return
}
mView?.closeSoftInput()
- OchCommonLoginModel.gotoLogin(phone,code)
+ LoginModel.gotoLogin(phone,code)
}
}
\ No newline at end of file
diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/ui/LoginFragment.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/ui/LoginFragment.kt
index f3300b112f..efdf036012 100644
--- a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/ui/LoginFragment.kt
+++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/ui/LoginFragment.kt
@@ -5,39 +5,33 @@ import android.os.SystemClock
import android.view.*
import androidx.core.content.ContextCompat
import androidx.core.widget.addTextChangedListener
-import com.alibaba.android.arouter.launcher.ARouter
import com.mogo.commons.mvp.MvpFragment
import com.mogo.commons.storage.SharedPrefsMgr
-import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.utilcode.kotlin.onClick
-import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.eagle.core.utilcode.util.ActivityUtils
import com.mogo.eagle.core.utilcode.util.KeyboardUtils
import com.mogo.och.biz.R
-import com.mogo.och.biz.login.presenter.OchCommonLoginPresenter
-import com.mogo.och.common.module.biz.constant.OchCommonConst
-import com.mogo.och.common.module.biz.login.LoginService
+import com.mogo.och.biz.login.presenter.LoginPresenter
import com.mogo.och.common.module.utils.RxUtils
-import kotlinx.android.synthetic.main.taxi_login_view.acbtn_login
-import kotlinx.android.synthetic.main.taxi_login_view.ace_login_phone_value
-import kotlinx.android.synthetic.main.taxi_login_view.acet_phone_code_value
-import kotlinx.android.synthetic.main.taxi_login_view.aciv_login_bg
-import kotlinx.android.synthetic.main.taxi_login_view.actv_login_get_code
-import kotlinx.android.synthetic.main.taxi_login_view.actv_login_show_sn
-import kotlinx.android.synthetic.main.taxi_login_view.actv_welcome_login_title
-import kotlinx.android.synthetic.main.taxi_login_view.cl_main
+import kotlinx.android.synthetic.main.biz_login_view.biz_acbtn_login
+import kotlinx.android.synthetic.main.biz_login_view.biz_ace_login_phone_value
+import kotlinx.android.synthetic.main.biz_login_view.biz_acet_phone_code_value
+import kotlinx.android.synthetic.main.biz_login_view.biz_actv_login_get_code
+import kotlinx.android.synthetic.main.biz_login_view.biz_actv_login_show_sn
+import kotlinx.android.synthetic.main.biz_login_view.biz_actv_welcome_login_title
+import kotlinx.android.synthetic.main.biz_login_view.biz_cl_driver_main
/**
* @author: yangyakun
* @date: 2022/8/15
*/
-class LoginFragment : MvpFragment(){
+class LoginFragment : MvpFragment(){
override fun getLayoutId(): Int {
- return R.layout.taxi_login_view
+ return R.layout.biz_login_view
}
override fun initViews() {
@@ -48,17 +42,7 @@ class LoginFragment : MvpFragment(){
}
private fun initBg() {
- if (AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode) &&
- AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) {
- //出租车司机
- aciv_login_bg.setImageResource(R.drawable.taxi_ic_login_bg)
- } else if ((AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)
- || AppIdentityModeUtils.isShuttle(FunctionBuildConfig.appIdentityMode)
- || AppIdentityModeUtils.isCharter(FunctionBuildConfig.appIdentityMode)) &&
- AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) {
- //小巴车司机
- aciv_login_bg.setImageResource(R.drawable.bus_ic_login_bg)
- }
+
}
private fun initListener() {
@@ -73,49 +57,44 @@ class LoginFragment : MvpFragment(){
}
false
}
- acbtn_login.onClick {
- val phone = ace_login_phone_value.text.toString()
- val code = acet_phone_code_value.text.toString()
+ biz_acbtn_login.onClick {
+ val phone = biz_ace_login_phone_value.text.toString()
+ val code = biz_acet_phone_code_value.text.toString()
mPresenter?.gotoLogin(phone, code)
}
- actv_welcome_login_title.setOnClickListener {
+ biz_actv_welcome_login_title.setOnClickListener {
continuousClick()
}
- cl_main.viewTreeObserver.addOnGlobalLayoutListener {
+ biz_cl_driver_main.viewTreeObserver.addOnGlobalLayoutListener {
val rect = Rect()
- cl_main.getWindowVisibleDisplayFrame(rect)
- val mainInvisibleHeight = cl_main.rootView.height - rect.bottom
+ biz_cl_driver_main.getWindowVisibleDisplayFrame(rect)
+ val mainInvisibleHeight = biz_cl_driver_main.rootView.height - rect.bottom
if (mainInvisibleHeight > 100) {
val outLocation = IntArray(2)
- acbtn_login.getLocationInWindow(outLocation)
- val srollHeight = (outLocation[1] + acbtn_login.height) - rect.bottom
+ biz_acbtn_login.getLocationInWindow(outLocation)
+ val srollHeight = (outLocation[1] + biz_acbtn_login.height) - rect.bottom
if (srollHeight > 0) {
- cl_main.scrollTo(0, srollHeight)
+ biz_cl_driver_main.scrollTo(0, srollHeight)
}
CallerLogger.d(SceneConstant.M_TAXI_P + TAG, "滚动的距离:$srollHeight")
} else {
- cl_main.scrollTo(0, 0)
+ biz_cl_driver_main.scrollTo(0, 0)
}
}
- actv_login_get_code.onClick {
- mPresenter?.getPhoneCode(ace_login_phone_value.text.toString())
+ biz_actv_login_get_code.onClick {
+ mPresenter?.getPhoneCode(biz_ace_login_phone_value.text.toString())
}
- actv_login_show_sn.setOnLongClickListener {
- val loginService = ARouter.getInstance().build(OchCommonConst.BIZ_LOGIN)
- .navigation() as LoginService
- loginService.showUiModel(false)
- true
- }
- ace_login_phone_value.addTextChangedListener {
+
+ biz_ace_login_phone_value.addTextChangedListener {
it?.let { itEditable ->
if (itEditable.isNotEmpty()) {
inputPhoneNormal()
}
}
}
- actv_login_show_sn.text = SharedPrefsMgr.getInstance().sn
+ biz_actv_login_show_sn.text = SharedPrefsMgr.getInstance().sn
RxUtils.createSubscribe(10_000) {
- CallerLogger.d(TAG,"宽度${cl_main.width}----${cl_main.height}----${cl_main.visibility}")
+ CallerLogger.d(TAG,"宽度${biz_cl_driver_main.width}----${biz_cl_driver_main.height}----${biz_cl_driver_main.visibility}")
}
}
@@ -129,32 +108,32 @@ class LoginFragment : MvpFragment(){
fun setCountDownText(text: String, enable: Boolean) {
if (enable) {
- actv_login_get_code.setText(R.string.module_och_taxi_login_get_code)
- actv_login_get_code.isEnabled = true
+ biz_actv_login_get_code.setText(R.string.module_och_taxi_login_get_code)
+ biz_actv_login_get_code.isEnabled = true
} else {
- actv_login_get_code.text = text
- actv_login_get_code.isEnabled = false
+ biz_actv_login_get_code.text = text
+ biz_actv_login_get_code.isEnabled = false
}
}
fun inputPhoneError() {
- ace_login_phone_value.text?.clear()
- ace_login_phone_value.setHint(R.string.module_och_taxi_login_phone_error)
+ biz_ace_login_phone_value.text?.clear()
+ biz_ace_login_phone_value.setHint(R.string.module_och_taxi_login_phone_error)
context?.let {
- ace_login_phone_value.setHintTextColor(ContextCompat.getColor(it, R.color.taxi_EF262C))
- ace_login_phone_value.setBackgroundResource(R.drawable.taxi_login_phone_error)
+ biz_ace_login_phone_value.setHintTextColor(ContextCompat.getColor(it, R.color.taxi_EF262C))
+ biz_ace_login_phone_value.setBackgroundResource(R.drawable.taxi_login_phone_error)
}
}
private fun inputPhoneNormal() {
context?.let {
- ace_login_phone_value.setHintTextColor(ContextCompat.getColor(it, R.color.taxi_878890))
- ace_login_phone_value.setBackgroundResource(R.drawable.taxi_login_phone_normal)
+ biz_ace_login_phone_value.setHintTextColor(ContextCompat.getColor(it, R.color.taxi_878890))
+ biz_ace_login_phone_value.setBackgroundResource(R.drawable.taxi_login_phone_normal)
}
}
- override fun createPresenter(): OchCommonLoginPresenter {
- return OchCommonLoginPresenter(this)
+ override fun createPresenter(): LoginPresenter {
+ return LoginPresenter(this)
}
override fun getTagName(): String {
diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/ui/LoginPassengerFragment.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/ui/LoginPassengerFragment.kt
new file mode 100644
index 0000000000..b865280149
--- /dev/null
+++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/ui/LoginPassengerFragment.kt
@@ -0,0 +1,60 @@
+package com.mogo.och.biz.login.ui
+
+import com.mogo.commons.mvp.MvpFragment
+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.och.biz.R
+import com.mogo.och.biz.login.presenter.LoginPassengerPresenter
+import kotlinx.android.synthetic.main.biz_login_passenger_view.biz_cl_passenger_main
+
+
+/**
+ * @author: yangyakun
+ * @date: 2022/8/15
+ */
+class LoginPassengerFragment : MvpFragment(){
+
+ override fun getLayoutId(): Int {
+ return R.layout.biz_login_passenger_view
+ }
+
+ override fun initViews() {
+ if (AppIdentityModeUtils.isM1(FunctionBuildConfig.appIdentityMode) &&
+ AppIdentityModeUtils.isPassenger((FunctionBuildConfig.appIdentityMode))
+ ) {
+ biz_cl_passenger_main.setBackgroundResource(R.drawable.biz_login_passenger_1920x1080)
+ } else if (AppIdentityModeUtils.isM2(FunctionBuildConfig.appIdentityMode) &&
+ AppIdentityModeUtils.isPassenger((FunctionBuildConfig.appIdentityMode))
+ ) {
+ biz_cl_passenger_main.setBackgroundResource(R.drawable.biz_login_passenger_1080x1920)
+ } else {
+ biz_cl_passenger_main.setBackgroundResource(R.drawable.biz_login_passenger_2560x1600)
+ }
+
+ CallerLogger.d(TAG,"init")
+ }
+
+ override fun createPresenter(): LoginPassengerPresenter {
+ return LoginPassengerPresenter(this)
+ }
+
+ override fun getTagName(): String {
+ return TAG
+ }
+
+ companion object {
+
+ val TAG = LoginPassengerFragment::class.java.simpleName
+ }
+
+ override fun onResume() {
+ super.onResume()
+ CallerLogger.d(TAG,"onResume")
+ }
+
+ override fun onPause() {
+ super.onPause()
+ CallerLogger.d(TAG,"onPause")
+ }
+}
\ No newline at end of file
diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/ui/SimpleFragment.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/ui/SimpleFragment.kt
deleted file mode 100644
index 16fd33b2b0..0000000000
--- a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/ui/SimpleFragment.kt
+++ /dev/null
@@ -1,40 +0,0 @@
-package com.mogo.och.biz.login.ui
-
-import com.mogo.commons.mvp.BaseFragment
-import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
-import com.mogo.och.biz.R
-
-/**
- * @author: yangyakun
- * @date: 2022/8/15
- */
-class SimpleFragment : BaseFragment() {
-
- override fun getLayoutId(): Int {
- return R.layout.taxi_login_view_1
- }
-
- override fun initViews() {
- CallerLogger.d(TAG,"init")
- }
-
-
- override fun getTagName(): String {
- return TAG
- }
-
- companion object {
- val TAG = SimpleFragment::class.java.simpleName
- }
-
-
- override fun onResume() {
- super.onResume()
- CallerLogger.d(TAG,"onResume")
- }
-
- override fun onPause() {
- super.onPause()
- CallerLogger.d(TAG,"onPause")
- }
-}
\ No newline at end of file
diff --git a/OCH/common/biz/src/main/res/drawable-nodpi/bus_ic_login_bg.webp b/OCH/common/biz/src/main/res/drawable-nodpi/biz_login_bg.webp
similarity index 100%
rename from OCH/common/biz/src/main/res/drawable-nodpi/bus_ic_login_bg.webp
rename to OCH/common/biz/src/main/res/drawable-nodpi/biz_login_bg.webp
diff --git a/OCH/common/biz/src/main/res/drawable-nodpi/biz_login_passenger_1080x1920.png b/OCH/common/biz/src/main/res/drawable-nodpi/biz_login_passenger_1080x1920.png
new file mode 100644
index 0000000000..fc4ad73d11
Binary files /dev/null and b/OCH/common/biz/src/main/res/drawable-nodpi/biz_login_passenger_1080x1920.png differ
diff --git a/OCH/common/biz/src/main/res/drawable-nodpi/biz_login_passenger_1920x1080.png b/OCH/common/biz/src/main/res/drawable-nodpi/biz_login_passenger_1920x1080.png
new file mode 100644
index 0000000000..75df2ac20e
Binary files /dev/null and b/OCH/common/biz/src/main/res/drawable-nodpi/biz_login_passenger_1920x1080.png differ
diff --git a/OCH/common/biz/src/main/res/drawable-nodpi/biz_login_passenger_2560x1600.png b/OCH/common/biz/src/main/res/drawable-nodpi/biz_login_passenger_2560x1600.png
new file mode 100644
index 0000000000..c535403510
Binary files /dev/null and b/OCH/common/biz/src/main/res/drawable-nodpi/biz_login_passenger_2560x1600.png differ
diff --git a/OCH/common/biz/src/main/res/drawable-nodpi/taxi_ic_login_bg.webp b/OCH/common/biz/src/main/res/drawable-nodpi/taxi_ic_login_bg.webp
deleted file mode 100644
index 7af7432551..0000000000
Binary files a/OCH/common/biz/src/main/res/drawable-nodpi/taxi_ic_login_bg.webp and /dev/null differ
diff --git a/OCH/common/biz/src/main/res/layout/taxi_login_view_1.xml b/OCH/common/biz/src/main/res/layout/biz_login_passenger_view.xml
similarity index 83%
rename from OCH/common/biz/src/main/res/layout/taxi_login_view_1.xml
rename to OCH/common/biz/src/main/res/layout/biz_login_passenger_view.xml
index e2073c5501..317c8a65fa 100644
--- a/OCH/common/biz/src/main/res/layout/taxi_login_view_1.xml
+++ b/OCH/common/biz/src/main/res/layout/biz_login_passenger_view.xml
@@ -1,9 +1,8 @@
diff --git a/OCH/common/biz/src/main/res/layout/taxi_login_view.xml b/OCH/common/biz/src/main/res/layout/biz_login_view.xml
similarity index 93%
rename from OCH/common/biz/src/main/res/layout/taxi_login_view.xml
rename to OCH/common/biz/src/main/res/layout/biz_login_view.xml
index 89577408f8..79dbe04a33 100644
--- a/OCH/common/biz/src/main/res/layout/taxi_login_view.xml
+++ b/OCH/common/biz/src/main/res/layout/biz_login_view.xml
@@ -1,20 +1,20 @@
{
+ return Project.DALI
+ }
+
+ Project.SAAS.value -> {
+ return Project.SAAS
+ }
+
+ Project.MOGO.value -> {
+ return Project.MOGO
+ }
+
+ Project.YANTAI.value -> {
+ return Project.YANTAI
+ }
+ }
+ return Project.MOGO
+ }
+
+}
+
+enum class Project(val value: String) {
+ SAAS("saas"),
+ DALI("dali"),
+ MOGO("mogo"),
+ YANTAI("yantai")
+}
\ No newline at end of file
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 e3ff4ed73c..02d2ab1350 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
@@ -1,6 +1,10 @@
package com.mogo.och.facade.route
import android.content.Context
+import android.view.Gravity
+import android.view.View
+import android.view.ViewGroup
+import android.widget.FrameLayout
import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentActivity
import androidx.fragment.app.FragmentManager
@@ -8,6 +12,7 @@ import com.alibaba.android.arouter.facade.annotation.Route
import com.alibaba.android.arouter.launcher.ARouter
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.function.api.base.IMoGoFunctionProvider
+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.mogo.logger.scene.SceneConstant
@@ -26,85 +31,10 @@ import com.mogo.och.facade.constant.FacadeConst
* @author tongchenfei
*/
@Route(path = FacadeConst.DRIVER_PATH)
-class FacadeDriverProvider : IMoGoFunctionProvider, ILoginCallback {
- private var containerId = 0
- private var activity: FragmentActivity? = null
+class FacadeDriverProvider : FacadeProvider() {
private val TAG = "FacadeDriverProvider"
- override fun init(context: Context) {
- d(TAG, "init")
- LoginStatusManager.addListener(TAG, this)
- queryLoginStatusByNet()
- }
-
- override fun createCoverage(fragmentActivity: FragmentActivity?, integer: Int?): Fragment? {
- containerId = integer!!
- activity = fragmentActivity
- showFragment()
- return null
- }
override val functionName: String
get() = TAG
- private fun showFragment() {
- val supportFragmentManager: FragmentManager? = activity?.supportFragmentManager
-
- val fragment= if(LoginStatusManager.isLogin()){
- getFragment()
- }else{
- LoginStatusManager.getFragment()
- }
- d(SceneConstant.M_TAXI_P + TAG, "准备add fragment======")
-
- if(supportFragmentManager!=null){
- val back = supportFragmentManager.beginTransaction()
- back.replace(containerId,fragment,fragment.tag)
- back.commit()
- }
- }
-
- private fun getFragment(): Fragment {
- if (AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)) {
- return getFragmentByServeName(OchCommonConst.BUS_DRIVER)
- } else if (AppIdentityModeUtils.isShuttle(FunctionBuildConfig.appIdentityMode)) {
- return getFragmentByServeName(OchCommonConst.SHUTTLE_DRIVER)
- } else if (AppIdentityModeUtils.isCharter(FunctionBuildConfig.appIdentityMode)) {
- return getFragmentByServeName(OchCommonConst.CHARTER_DRIVER)
- } else if (AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode)) {
- return getFragmentByServeName(OchCommonConst.TAXI_DRIVER)
- } else if (AppIdentityModeUtils.isSweeper(FunctionBuildConfig.appIdentityMode)) {
- return getFragmentByServeName(OchCommonConst.SWEEPER_DRIVER)
- }
- return LoginStatusManager.getFragment()
- }
-
- private fun getFragmentByServeName(serviceName: String): Fragment {
- val bizService = ARouter.getInstance().build(serviceName).navigation() as CommonService?
- if (bizService == null) {
- try {
- return LoginStatusManager.getFragment()
- } catch (e: ClassNotFoundException) {
- OchChainLogManager.writeChainLog(
- "Init",
- "没有找到登录Fragment",
- eventID = OchChainLogManager.EVENT_KEY_INFE_ERROR
- )
- return Fragment()
- }
- } else {
- return bizService.getFragment()
- }
- }
-
- override fun onDestroy() {
- //若不调用finish, 设置中打开关闭UITouch,会造成och fragment 重叠
- if (activity == null) return
- activity!!.finish()
- }
-
- override fun onStatusChange(currentStatus: TaxiLoginStatusEnum) {
- d(TAG, "登录状态发生改变 ${currentStatus}")
- //showFragment()
- }
-
}
diff --git a/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadePassengerProvider.java b/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadePassengerProvider.java
deleted file mode 100644
index f80f99f473..0000000000
--- a/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadePassengerProvider.java
+++ /dev/null
@@ -1,62 +0,0 @@
-
-package com.mogo.och.facade.route;
-
-import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_BUS;
-
-import android.content.Context;
-
-import androidx.fragment.app.Fragment;
-import androidx.fragment.app.FragmentActivity;
-
-import com.alibaba.android.arouter.facade.annotation.Route;
-import com.mogo.eagle.core.function.api.base.IMoGoFunctionProvider;
-import com.mogo.eagle.core.function.call.setting.CallerMoGoUiSettingManager;
-import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger;
-import com.mogo.och.facade.constant.FacadeConst;
-
-import org.jetbrains.annotations.NotNull;
-import org.jetbrains.annotations.Nullable;
-
-/**
- * 网约车小巴业务实现入口
- *
- * @author tongchenfei
- */
-@Route(path = FacadeConst.PASSENGER_PATH)
-public class FacadePassengerProvider implements IMoGoFunctionProvider {
-
- private static final String TAG = "FacadePassengerProvider";
-
- private int containerId;
- private FragmentActivity activity;
-
- @Override
- public void init(Context context) {
- }
-
- private void showFragment() {
-
- }
-
- @NotNull
- @Override
- public String getFunctionName() {
- return TAG;
- }
-
- @Nullable
- @Override
- public Fragment createCoverage(@Nullable FragmentActivity fragmentActivity, @Nullable Integer integer) {
- this.containerId = integer;
- this.activity = fragmentActivity;
- showFragment();
- return null;
- }
-
- @Override
- public void onDestroy() {
- //若不调用finish, 设置中打开关闭UITouch,会造成och fragment 重叠
- if (activity == null) return;
- activity.finish();
- }
-}
diff --git a/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadePassengerProvider.kt b/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadePassengerProvider.kt
new file mode 100644
index 0000000000..02f9bae3b3
--- /dev/null
+++ b/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadePassengerProvider.kt
@@ -0,0 +1,19 @@
+package com.mogo.och.facade.route
+
+import com.alibaba.android.arouter.facade.annotation.Route
+import com.mogo.och.facade.constant.FacadeConst
+
+/**
+ * 网约车小巴业务实现入口
+ *
+ * @author tongchenfei
+ */
+@Route(path = FacadeConst.PASSENGER_PATH)
+class FacadePassengerProvider : FacadeProvider() {
+ private val TAG = FacadePassengerProvider::class.java.simpleName
+
+ override val functionName: String
+ get() = TAG
+
+
+}
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
new file mode 100644
index 0000000000..0850bd821c
--- /dev/null
+++ b/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeProvider.kt
@@ -0,0 +1,144 @@
+package com.mogo.och.facade.route
+
+import android.content.Context
+import android.view.Gravity
+import android.view.View
+import android.view.ViewGroup
+import android.widget.FrameLayout
+import androidx.fragment.app.Fragment
+import androidx.fragment.app.FragmentActivity
+import androidx.fragment.app.FragmentManager
+import com.alibaba.android.arouter.facade.annotation.Route
+import com.alibaba.android.arouter.launcher.ARouter
+import com.mogo.eagle.core.data.config.FunctionBuildConfig
+import com.mogo.eagle.core.function.api.base.IMoGoFunctionProvider
+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.mogo.logger.scene.SceneConstant
+import com.mogo.och.common.module.biz.constant.OchCommonConst
+import com.mogo.och.common.module.biz.login.ILoginCallback
+import com.mogo.och.common.module.biz.login.LoginStatusManager
+import com.mogo.och.common.module.biz.login.LoginStatusManager.queryLoginStatusByNet
+import com.mogo.och.common.module.biz.login.TaxiLoginStatusEnum
+import com.mogo.och.common.module.biz.provider.CommonService
+import com.mogo.och.common.module.manager.orderlogmanager.OchChainLogManager
+import com.mogo.och.facade.constant.FacadeConst
+
+/**
+ * 网约车小巴业务实现入口
+ *
+ * @author tongchenfei
+ */
+abstract class FacadeProvider : IMoGoFunctionProvider, ILoginCallback {
+ private var containerId = 0
+ private var activity: FragmentActivity? = null
+ private val TAG = "FacadeProvider"
+ private var commonService: CommonService? = null
+ override fun init(context: Context) {
+ d(TAG, "FacadeProvider:init")
+ LoginStatusManager.addListener(TAG, this)
+ queryLoginStatusByNet()
+ }
+
+ override fun createCoverage(fragmentActivity: FragmentActivity?, integer: Int?): Fragment? {
+ containerId = integer!!
+ activity = fragmentActivity
+ showFragment()
+ return null
+ }
+
+ private fun showFragment() {
+ val supportFragmentManager: FragmentManager? = activity?.supportFragmentManager
+
+ val fragment = if (LoginStatusManager.isLogin()) {
+ getFragment()
+ } else {
+ LoginStatusManager.getFragment()
+ }
+
+ d(TAG, "切换 fragment:${fragment}")
+
+ if (supportFragmentManager != null) {
+ val back = supportFragmentManager.beginTransaction()
+ back.replace(containerId, fragment, fragment.tag)
+ back.commit()
+ }
+ }
+
+ private fun getFragment(): Fragment {
+ if (AppIdentityModeUtils.isBusDriver(FunctionBuildConfig.appIdentityMode)) {
+ return getFragmentByServeName(OchCommonConst.BUS_DRIVER)
+ } else if (AppIdentityModeUtils.isShuttleDriver(FunctionBuildConfig.appIdentityMode)) {
+ return getFragmentByServeName(OchCommonConst.SHUTTLE_DRIVER)
+ } else if (AppIdentityModeUtils.isCharterDriver(FunctionBuildConfig.appIdentityMode)) {
+ return getFragmentByServeName(OchCommonConst.CHARTER_DRIVER)
+ } else if (AppIdentityModeUtils.isTaxiDriver(FunctionBuildConfig.appIdentityMode)) {
+ return getFragmentByServeName(OchCommonConst.TAXI_DRIVER)
+ } else if (AppIdentityModeUtils.isSweeper(FunctionBuildConfig.appIdentityMode)) {
+ return getFragmentByServeName(OchCommonConst.SWEEPER_DRIVER)
+ } else if (AppIdentityModeUtils.isBusPassenger(FunctionBuildConfig.appIdentityMode)) {
+ return getFragmentByServeName(OchCommonConst.BUS_DRIVER)
+ } else if (AppIdentityModeUtils.isShuttlePassenger(FunctionBuildConfig.appIdentityMode)) {
+ return getFragmentByServeName(OchCommonConst.SHUTTLE_DRIVER)
+ } else if (AppIdentityModeUtils.isCharterPassenger(FunctionBuildConfig.appIdentityMode)) {
+ return getFragmentByServeName(OchCommonConst.CHARTER_DRIVER)
+ } else if (AppIdentityModeUtils.isTaxiPassenger(FunctionBuildConfig.appIdentityMode)) {
+ return getFragmentByServeName(OchCommonConst.TAXI_DRIVER)
+ }
+ return LoginStatusManager.getFragment()
+ }
+
+ private fun getFragmentByServeName(serviceName: String): Fragment {
+ commonService = ARouter.getInstance().build(serviceName).navigation() as CommonService?
+ return if (commonService == null) {
+ try {
+ LoginStatusManager.getFragment()
+ } catch (e: ClassNotFoundException) {
+ OchChainLogManager.writeChainLog(
+ "Init",
+ "没有找到登录Fragment",
+ eventID = OchChainLogManager.EVENT_KEY_INFE_ERROR
+ )
+ Fragment()
+ }
+ } else {
+ commonService!!.getFragment()
+ }
+ }
+
+ override fun onDestroy() {
+ //若不调用finish, 设置中打开关闭UITouch,会造成och fragment 重叠
+ if (activity == null) return
+ activity!!.finish()
+ }
+
+ override fun onStatusChange(currentStatus: TaxiLoginStatusEnum) {
+ d(TAG, "登录状态发生改变 ${currentStatus}")
+ showFragment()
+ }
+
+
+ private fun injectStatusBar() {
+ activity?.let {
+ val decorView = it.window.decorView as? FrameLayout ?: return
+ val contentView =
+ (decorView.findViewById(android.R.id.content) as? ViewGroup)?.getChildAt(0)
+ ?: return
+ contentView.fitsSystemWindows = false
+ decorView.clipToPadding = false
+ var statusBarView = decorView.findViewWithTag("status_bar")
+ val statusBar = commonService?.getStatusBarView(it)
+ statusBarView = statusBar ?: StatusBarView(it)
+ statusBarView.tag = "status_bar"
+ val statusBarLP = FrameLayout.LayoutParams(
+ ViewGroup.LayoutParams.MATCH_PARENT,
+ ViewGroup.LayoutParams.WRAP_CONTENT,
+ )
+ statusBarLP.topMargin = 0
+ statusBarLP.gravity = Gravity.TOP
+ decorView.addView(statusBarView, statusBarLP)
+ }
+ }
+
+}
diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/BusProvider.kt b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/ShuttleDriverProvider.kt
similarity index 74%
rename from OCH/shuttle/driver/src/main/java/com/mogo/och/bus/BusProvider.kt
rename to OCH/shuttle/driver/src/main/java/com/mogo/och/bus/ShuttleDriverProvider.kt
index a2cb99084a..56aeb29158 100644
--- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/BusProvider.kt
+++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/ShuttleDriverProvider.kt
@@ -8,6 +8,7 @@ import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.och.bus.fragment.ShuttleFragment
import com.mogo.och.common.module.biz.constant.OchCommonConst
import com.mogo.och.common.module.biz.provider.CommonService
+import com.mogo.och.common.module.biz.provider.CommonServiceImpl
/**
* 网约车小巴业务实现入口
@@ -15,18 +16,18 @@ import com.mogo.och.common.module.biz.provider.CommonService
* @author tongchenfei
*/
@Route(path = OchCommonConst.SHUTTLE_DRIVER)
-class BusProvider : CommonService {
- private var busFragment: ShuttleFragment? = null
+class ShuttleDriverProvider : CommonServiceImpl() {
+
+ private val TAG = ShuttleDriverProvider::class.java.simpleName
+ private lateinit var busFragment: ShuttleFragment
+
override fun init(context: Context) {
d(SceneConstant.M_TAXI + TAG, "init")
busFragment = ShuttleFragment()
}
override fun getFragment(): Fragment {
- return busFragment!!
+ return busFragment
}
- companion object {
- private const val TAG = "BusProvider"
- }
}
diff --git a/OCH/shuttle/passenger/src/main/java/com/mogo/och/shuttle/passenger/MogoOCHShuttlePassenger.kt b/OCH/shuttle/passenger/src/main/java/com/mogo/och/shuttle/passenger/ShuttlePassengerProvider.kt
similarity index 66%
rename from OCH/shuttle/passenger/src/main/java/com/mogo/och/shuttle/passenger/MogoOCHShuttlePassenger.kt
rename to OCH/shuttle/passenger/src/main/java/com/mogo/och/shuttle/passenger/ShuttlePassengerProvider.kt
index 81a17a51ca..a84ff97c23 100644
--- a/OCH/shuttle/passenger/src/main/java/com/mogo/och/shuttle/passenger/MogoOCHShuttlePassenger.kt
+++ b/OCH/shuttle/passenger/src/main/java/com/mogo/och/shuttle/passenger/ShuttlePassengerProvider.kt
@@ -1,25 +1,22 @@
package com.mogo.och.shuttle.passenger
import android.content.Context
+import android.view.View
import androidx.fragment.app.Fragment
-import androidx.fragment.app.FragmentActivity
-import androidx.fragment.app.FragmentManager
import com.alibaba.android.arouter.facade.annotation.Route
import com.mogo.eagle.core.data.config.FunctionBuildConfig
-import com.mogo.eagle.core.function.api.base.IMoGoFunctionProvider
-import com.mogo.eagle.core.function.call.setting.CallerMoGoUiSettingManager.stepInDayMode
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
-import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
-import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.eagle.core.utilcode.util.ActivityUtils
import com.mogo.eagle.core.utilcode.util.MultiDisplayUtils
import com.mogo.och.common.module.biz.constant.OchCommonConst
import com.mogo.och.common.module.biz.provider.CommonService
-import com.mogo.och.shuttle.passenger.constant.BusPassengerConst
+import com.mogo.och.common.module.biz.provider.CommonServiceImpl
import com.mogo.och.common.module.wigets.media.MediaPlayerActivity
import com.mogo.och.shuttle.passenger.model.TicketModel
+import com.mogo.och.shuttle.passenger.ui.BusPStatusBarView
import com.mogo.och.shuttle.passenger.ui.BusPassengerRouteFragment
import com.mogo.och.shuttle.passenger.ui.PM2BaseFragment
+import com.mogo.och.shuttle.passenger.ui.widget.M2StatusBarView
/**
* 网约车-Bus-乘客端
@@ -27,7 +24,9 @@ import com.mogo.och.shuttle.passenger.ui.PM2BaseFragment
* Created on 2022/3/29
*/
@Route(path = OchCommonConst.SHUTTLE_PASSENGER)
-class MogoOCHShuttlePassenger : CommonService {
+class ShuttlePassengerProvider : CommonServiceImpl() {
+
+ private val tag = ShuttlePassengerProvider::class.java.simpleName
private lateinit var mPM2Fragment: Fragment
override fun init(context: Context) {
@@ -41,6 +40,19 @@ class MogoOCHShuttlePassenger : CommonService {
}
}
+ override fun getStatusBarView(context: Context): View {
+ if(statusBarView==null){
+ statusBarView = if (AppIdentityModeUtils.isM2(FunctionBuildConfig.appIdentityMode)) {
+ M2StatusBarView(context);
+ } else if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) {
+ BusPStatusBarView(context);
+ }else{
+ BusPStatusBarView(context);
+ }
+ }
+ return statusBarView!!
+ }
+
override fun getFragment(): Fragment {
if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) {
MultiDisplayUtils.startActWithSecond(ActivityUtils.getTopActivity(), MediaPlayerActivity::class.java)
@@ -48,8 +60,4 @@ class MogoOCHShuttlePassenger : CommonService {
return mPM2Fragment
}
- companion object {
- private val TAG = MogoOCHShuttlePassenger::class.java.simpleName
- }
-
}
\ No newline at end of file
diff --git a/OCH/shuttle/passenger/src/main/java/com/mogo/och/shuttle/passenger/provider/StatusViewManager.java b/OCH/shuttle/passenger/src/main/java/com/mogo/och/shuttle/passenger/provider/StatusViewManager.java
deleted file mode 100644
index 6c11478908..0000000000
--- a/OCH/shuttle/passenger/src/main/java/com/mogo/och/shuttle/passenger/provider/StatusViewManager.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.mogo.och.shuttle.passenger.provider;
-
-import android.content.Context;
-import android.view.View;
-
-import com.mogo.eagle.core.data.config.FunctionBuildConfig;
-import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils;
-import com.mogo.och.shuttle.passenger.ui.BusPStatusBarView;
-import com.mogo.och.shuttle.passenger.ui.widget.M2StatusBarView;
-import androidx.annotation.NonNull;
-
-import com.alibaba.android.arouter.facade.annotation.Route;
-import com.mogo.eagle.core.data.constants.MogoServicePaths;
-import com.mogo.eagle.core.function.api.hmi.view.IStatusViewLayout;
-
-/**
- * @author congtaowang
- * @since 2020-01-06
- *
- * 根据优先级控制显示 window view.
- */
-@Route( path = MogoServicePaths.PATH_STATUS_VIEW_MANAGER )
-public class StatusViewManager implements IStatusViewLayout {
- @NonNull
- @Override
- public View getStatusView(Context context) {
- if (AppIdentityModeUtils.isM2(FunctionBuildConfig.appIdentityMode)) {
- return new M2StatusBarView(context);
- } else if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) {
- return new BusPStatusBarView(context);
- }
- return new BusPStatusBarView(context);
- }
-
- @Override
- public void init(Context context) {
-
- }
-}
diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/TaxiProvider.kt b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/TaxiDriverProvider.kt
similarity index 78%
rename from OCH/taxi/driver/src/main/java/com/mogo/och/taxi/TaxiProvider.kt
rename to OCH/taxi/driver/src/main/java/com/mogo/och/taxi/TaxiDriverProvider.kt
index f3f177945a..1e972e250f 100644
--- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/TaxiProvider.kt
+++ b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/TaxiDriverProvider.kt
@@ -7,6 +7,7 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.och.common.module.biz.constant.OchCommonConst
import com.mogo.och.common.module.biz.provider.CommonService
+import com.mogo.och.common.module.biz.provider.CommonServiceImpl
import com.mogo.och.taxi.ui.TaxiFragment
/**
@@ -17,12 +18,13 @@ import com.mogo.och.taxi.ui.TaxiFragment
* 网约车-出租车
*/
@Route(path = OchCommonConst.TAXI_DRIVER)
-class TaxiProvider : CommonService {
+class TaxiDriverProvider : CommonServiceImpl() {
- private val TAG = "TaxiProvider"
+ private val tag = TaxiDriverProvider::class.java.simpleName
private lateinit var ochTaxiFragment: TaxiFragment
+
override fun init(context: Context) {
- d(SceneConstant.M_TAXI + TAG, "init")
+ d(SceneConstant.M_TAXI + tag, "init")
ochTaxiFragment = TaxiFragment()
}
diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/MogoOCHTaxiPassenger.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/TaxiPassengerProvider.kt
similarity index 63%
rename from OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/MogoOCHTaxiPassenger.kt
rename to OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/TaxiPassengerProvider.kt
index e91ea85960..7737eb62c7 100644
--- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/MogoOCHTaxiPassenger.kt
+++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/TaxiPassengerProvider.kt
@@ -1,13 +1,16 @@
package com.mogo.och.taxi.passenger
import android.content.Context
+import android.view.View
import androidx.fragment.app.Fragment
import com.alibaba.android.arouter.facade.annotation.Route
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.och.common.module.biz.constant.OchCommonConst
import com.mogo.och.common.module.biz.provider.CommonService
+import com.mogo.och.common.module.biz.provider.CommonServiceImpl
import com.mogo.och.taxi.passenger.ui.TaxiPassengerBaseFragment
+import com.mogo.och.taxi.passenger.ui.statusview.StatusBarView
/**
* @author congtaowang
@@ -17,15 +20,22 @@ import com.mogo.och.taxi.passenger.ui.TaxiPassengerBaseFragment
* 网约车-出租车-乘客端
*/
@Route(path = OchCommonConst.TAXI_PASSENGER)
-class MogoOCHTaxiPassenger : CommonService {
+class TaxiPassengerProvider : CommonServiceImpl() {
+ private val tag = TaxiPassengerProvider::class.java.simpleName
private lateinit var ochTaxiPassengerFragment: TaxiPassengerBaseFragment
- private val TAG = "MogoOCHTaxiPassenger"
override fun init(context: Context) {
- d(SceneConstant.M_TAXI_P + TAG, "init")
+ d(SceneConstant.M_TAXI_P + tag, "init")
ochTaxiPassengerFragment = TaxiPassengerBaseFragment()
}
+ override fun getStatusBarView(context: Context): View {
+ if (statusBarView == null) {
+ statusBarView = StatusBarView(context)
+ }
+ return statusBarView!!
+ }
+
override fun getFragment(): Fragment {
return ochTaxiPassengerFragment
}
diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/provider/StatusViewManager.java b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/provider/StatusViewManager.java
deleted file mode 100644
index 8104aaee3d..0000000000
--- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/provider/StatusViewManager.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package com.mogo.och.taxi.passenger.provider;
-
-import android.content.Context;
-import android.view.View;
-
-import androidx.annotation.NonNull;
-
-import com.alibaba.android.arouter.facade.annotation.Route;
-import com.mogo.eagle.core.data.constants.MogoServicePaths;
-import com.mogo.eagle.core.function.api.hmi.view.IStatusViewLayout;
-import com.mogo.och.taxi.passenger.ui.statusview.StatusBarView;
-
-/**
- * @author congtaowang
- * @since 2020-01-06
- *
- * 根据优先级控制显示 window view.
- */
-@Route( path = MogoServicePaths.PATH_STATUS_VIEW_MANAGER )
-public class StatusViewManager implements IStatusViewLayout {
-
- private StatusBarView statusBarView;
- @NonNull
- @Override
- public View getStatusView(Context context) {
- return statusBarView;
- }
-
- @Override
- public void init(Context context) {
- statusBarView = new StatusBarView(context);
- }
-}
diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/IMogoOCH.java b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/IMogoOCH.java
deleted file mode 100644
index 3c724ee33c..0000000000
--- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/IMogoOCH.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package com.mogo.och.taxi;
-
-import androidx.annotation.IdRes;
-import androidx.fragment.app.FragmentActivity;
-
-import com.mogo.eagle.core.function.api.base.IMoGoFunctionProvider;
-
-public
-/**
- * @author congtaowang
- * @since 2021/1/15
- *
- * 网约车抽象接口
- */
-interface IMogoOCH extends IMoGoFunctionProvider {
-
- /**
- * 初始化网约车容器
- *
- * @param activity
- * @param containerId 容器ID
- */
- void createCoverage(FragmentActivity activity, @IdRes int containerId);
-}
diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/TaxiUnmannedProvider.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/TaxiUnmannedDriverProvider.kt
similarity index 69%
rename from OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/TaxiUnmannedProvider.kt
rename to OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/TaxiUnmannedDriverProvider.kt
index f5a9923b65..df1be2c018 100644
--- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/TaxiUnmannedProvider.kt
+++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/TaxiUnmannedDriverProvider.kt
@@ -2,13 +2,12 @@ package com.mogo.och.taxi
import android.content.Context
import androidx.fragment.app.Fragment
-import androidx.fragment.app.FragmentActivity
import com.alibaba.android.arouter.facade.annotation.Route
-import com.mogo.eagle.core.function.call.setting.CallerMoGoUiSettingManager.stepInNightMode
-import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
+import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.och.common.module.biz.constant.OchCommonConst
import com.mogo.och.common.module.biz.provider.CommonService
+import com.mogo.och.common.module.biz.provider.CommonServiceImpl
import com.mogo.och.taxi.ui.base.TaxiFragment
/**
@@ -19,12 +18,13 @@ import com.mogo.och.taxi.ui.base.TaxiFragment
* 网约车-出租车
*/
@Route(path = OchCommonConst.TAXI_UNMANNED_DRIVER)
-class TaxiUnmannedProvider : CommonService {
+class TaxiUnmannedDriverProvider : CommonServiceImpl() {
+
+ private val tag = TaxiUnmannedDriverProvider::class.java.simpleName
private lateinit var ochTaxiFragment: TaxiFragment
- private val TAG = "TaxiProvider"
override fun init(context: Context) {
- d(SceneConstant.M_TAXI + TAG, "init")
+ CallerLogger.d(SceneConstant.M_TAXI + tag, "init")
ochTaxiFragment = TaxiFragment()
}
diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/MogoOCHTaxiPassenger.java b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/MogoOCHTaxiPassenger.java
deleted file mode 100644
index 860a60d670..0000000000
--- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/MogoOCHTaxiPassenger.java
+++ /dev/null
@@ -1,46 +0,0 @@
-package com.mogo.och.taxi.passenger;
-
-import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI_P;
-
-import android.content.Context;
-
-import androidx.annotation.NonNull;
-import androidx.fragment.app.Fragment;
-import androidx.fragment.app.FragmentActivity;
-import androidx.fragment.app.FragmentManager;
-
-import com.alibaba.android.arouter.facade.annotation.Route;
-import com.mogo.eagle.core.function.api.base.IMoGoFunctionProvider;
-import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger;
-import com.mogo.och.common.module.biz.constant.OchCommonConst;
-import com.mogo.och.common.module.biz.provider.CommonService;
-import com.mogo.och.taxi.passenger.constant.TaxiPassengerConst;
-import com.mogo.och.taxi.passenger.ui.TaxiPassengerBaseFragment;
-
-import org.jetbrains.annotations.NotNull;
-import org.jetbrains.annotations.Nullable;
-
-/**
- * @author congtaowang
- * @since 2021/1/15
- *
- * 网约车-出租车-乘客端
- */
-@Route(path = OchCommonConst.TAXI_UNMANNED_PASSENGER)
-public class MogoOCHTaxiPassenger implements CommonService {
-
- private static final String TAG = "MogoOCHTaxiPassenger";
- private TaxiPassengerBaseFragment ochTaxiPassengerFragment;
-
- @Override
- public void init(Context context) {
- CallerLogger.d(M_TAXI_P + TAG, "init");
- ochTaxiPassengerFragment = new TaxiPassengerBaseFragment();
- }
-
- @NonNull
- @Override
- public Fragment getFragment() {
- return ochTaxiPassengerFragment;
- }
-}
diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/TaxiUnmannedPassengerProvider.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/TaxiUnmannedPassengerProvider.kt
new file mode 100644
index 0000000000..6c29dcfe2a
--- /dev/null
+++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/TaxiUnmannedPassengerProvider.kt
@@ -0,0 +1,44 @@
+package com.mogo.och.taxi.passenger
+
+import android.content.Context
+import android.view.View
+import androidx.fragment.app.Fragment
+import com.alibaba.android.arouter.facade.annotation.Route
+import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
+import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
+import com.mogo.och.common.module.biz.constant.OchCommonConst
+import com.mogo.och.common.module.biz.provider.CommonService
+import com.mogo.och.common.module.biz.provider.CommonServiceImpl
+import com.mogo.och.taxi.passenger.ui.TaxiPassengerBaseFragment
+import com.mogo.och.taxi.passenger.ui.statusview.StatusBarView
+
+/**
+ * @author congtaowang
+ * @since 2021/1/15
+ *
+ *
+ * 网约车-出租车-乘客端
+ */
+@Route(path = OchCommonConst.TAXI_UNMANNED_PASSENGER)
+class TaxiUnmannedPassengerProvider : CommonServiceImpl() {
+
+ private val tag = TaxiUnmannedPassengerProvider::class.java.simpleName
+ private lateinit var ochTaxiPassengerFragment: TaxiPassengerBaseFragment
+ override fun init(context: Context) {
+ d(SceneConstant.M_TAXI_P + tag, "init")
+ ochTaxiPassengerFragment = TaxiPassengerBaseFragment()
+ statusBarView = StatusBarView(context)
+ }
+
+ override fun getStatusBarView(context: Context): View {
+ if (statusBarView == null) {
+ statusBarView = StatusBarView(context)
+ }
+ return statusBarView!!
+ }
+
+ override fun getFragment(): Fragment {
+ return ochTaxiPassengerFragment
+ }
+
+}
diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/provider/StatusViewManager.java b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/provider/StatusViewManager.java
deleted file mode 100644
index 8104aaee3d..0000000000
--- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/provider/StatusViewManager.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package com.mogo.och.taxi.passenger.provider;
-
-import android.content.Context;
-import android.view.View;
-
-import androidx.annotation.NonNull;
-
-import com.alibaba.android.arouter.facade.annotation.Route;
-import com.mogo.eagle.core.data.constants.MogoServicePaths;
-import com.mogo.eagle.core.function.api.hmi.view.IStatusViewLayout;
-import com.mogo.och.taxi.passenger.ui.statusview.StatusBarView;
-
-/**
- * @author congtaowang
- * @since 2020-01-06
- *
- * 根据优先级控制显示 window view.
- */
-@Route( path = MogoServicePaths.PATH_STATUS_VIEW_MANAGER )
-public class StatusViewManager implements IStatusViewLayout {
-
- private StatusBarView statusBarView;
- @NonNull
- @Override
- public View getStatusView(Context context) {
- return statusBarView;
- }
-
- @Override
- public void init(Context context) {
- statusBarView = new StatusBarView(context);
- }
-}
diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainActivity.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainActivity.kt
index 5368d577e2..7f62b9b2e0 100644
--- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainActivity.kt
+++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainActivity.kt
@@ -82,7 +82,6 @@ open class MainActivity : MvpActivity(), MainView,
override fun initViews() {
injectFloatView()
- injectStatusBar()
window.setBackgroundDrawable(null)
initConnectInfoRV()
CallerHmiManager.init(this)
@@ -95,28 +94,6 @@ open class MainActivity : MvpActivity(), MainView,
PermissionsDialogUtils.openAppDetails(this, "显示悬浮窗", REQUEST_CODE_DIALOG)
}
- private fun injectStatusBar() {
- val decorView = this.window.decorView as? FrameLayout ?: return
- val contentView =
- (decorView.findViewById(android.R.id.content) as? ViewGroup)?.getChildAt(0)
- ?: return
- contentView.fitsSystemWindows = false
- decorView.clipToPadding = false
- var statusBarView = decorView.findViewWithTag("status_bar")
- if (statusBarView == null) {
- val statusBar = CallerHmiFloatViewManager.getView(this)
- statusBarView = statusBar ?: StatusBarView(this)
- statusBarView.tag = "status_bar"
- }
- val statusBarLP = FrameLayout.LayoutParams(
- ViewGroup.LayoutParams.MATCH_PARENT,
- ViewGroup.LayoutParams.WRAP_CONTENT,
- )
- statusBarLP.topMargin = 0
- statusBarLP.gravity = Gravity.TOP
- decorView.addView(statusBarView, statusBarLP)
- }
-
// todo 优化 车聊聊
private fun injectFloatView() {
val decorView = this.window.decorView as? FrameLayout ?: return
diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/hmi/CallerHmiFloatViewManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/hmi/CallerHmiFloatViewManager.kt
index acdc4caeac..52742d94e8 100644
--- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/hmi/CallerHmiFloatViewManager.kt
+++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/hmi/CallerHmiFloatViewManager.kt
@@ -4,10 +4,7 @@ import android.content.Context
import android.view.View
import android.widget.FrameLayout
import com.alibaba.android.arouter.launcher.ARouter
-import com.mogo.commons.debug.DebugConfig
import com.mogo.eagle.core.data.constants.MogoServicePaths.PATH_FLOAT_VIEW_MANAGER
-import com.mogo.eagle.core.data.constants.MogoServicePaths.PATH_STATUS_VIEW_MANAGER
-import com.mogo.eagle.core.function.api.hmi.view.IStatusViewLayout
import com.mogo.eagle.core.function.api.hmi.view.IViewLayoutSet
/**
@@ -18,9 +15,6 @@ object CallerHmiFloatViewManager {
private val floatViewProviderApi
get() = ARouter.getInstance().build(PATH_FLOAT_VIEW_MANAGER)
.navigation() as? IViewLayoutSet
- private val statusViewProviderApi
- get() = ARouter.getInstance().build(PATH_STATUS_VIEW_MANAGER)
- .navigation() as? IStatusViewLayout
fun addView(view: View, params: FrameLayout.LayoutParams, movable: Boolean) {
floatViewProviderApi?.addView(view, params, movable)
@@ -30,11 +24,4 @@ object CallerHmiFloatViewManager {
floatViewProviderApi?.removeView(view)
}
- fun getView(context:Context):View?{
- return if (DebugConfig.isReplaceStatusview()){
- statusViewProviderApi?.getStatusView(context)
- }else{
- null
- }
- }
}
\ No newline at end of file
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 5cadfe79a4..909f9957d1 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
@@ -44,6 +44,8 @@ object AppIdentityModeUtils {
private const val M1 = "M1"
private const val M2 = "M2"
private const val JL = "JL"
+ private const val DFHQ = "DFHQ"
+ private const val FT = "FT"
private fun getInfo(appIdentityMode: String): Array {
@@ -121,6 +123,11 @@ object AppIdentityModeUtils {
}
return false
}
+ @JvmStatic
+ fun isShuttleDriver(appIdentityMode: String): Boolean {
+ return isShuttle(appIdentityMode) && isDriver(appIdentityMode)
+ }
+
/**
* 是否是 接驳车(这里不细分具体是:司机、乘客等类型)
@@ -133,25 +140,6 @@ object AppIdentityModeUtils {
return isShuttle(appIdentityMode) && isPassenger(appIdentityMode)
}
- @JvmStatic
- fun isM2(appIdentityMode: String): Boolean {
- val (_, _, model) = getInfo(appIdentityMode)
- if (model.isNotEmpty()) {
- return model == M2
- }
- return false
- }
-
- @JvmStatic
- fun isJL(appIdentityMode: String): Boolean {
- val (_, _, model) = getInfo(appIdentityMode)
- if (model.isNotEmpty()) {
- return model == JL
- }
- return false
- }
-
-
/**
* 是否是 清扫车(这里不细分具体是:司机、乘客等类型)
*
@@ -227,11 +215,6 @@ object AppIdentityModeUtils {
return isTaxi(appIdentityMode) && isPassenger(appIdentityMode)
}
- fun isBusPassengerM1(appIdentityMode: String): Boolean {
- return isBus(appIdentityMode) && isPassenger(appIdentityMode) && isM1(appIdentityMode)
- }
-
-
/**
* 是否包车
*/
@@ -244,11 +227,45 @@ object AppIdentityModeUtils {
return false
}
+ @JvmStatic
+ fun isCharterDriver(appIdentityMode: String): Boolean {
+ return isCharter(appIdentityMode) && isDriver(appIdentityMode)
+ }
+
+
@JvmStatic
fun isCharterPassenger(appIdentityMode: String): Boolean {
return isCharter(appIdentityMode) && isPassenger(appIdentityMode)
}
+
+
+ @JvmStatic
+ fun isDFHQ(appIdentityMode: String): Boolean {
+ val (_, _, model) = getInfo(appIdentityMode)
+ if (model.isNotEmpty()) {
+ return model == DFHQ
+ }
+ return false
+ }
+ @JvmStatic
+ fun isFT(appIdentityMode: String): Boolean {
+ val (_, _, model) = getInfo(appIdentityMode)
+ if (model.isNotEmpty()) {
+ return model == FT
+ }
+ return false
+ }
+
+ @JvmStatic
+ fun isJL(appIdentityMode: String): Boolean {
+ val (_, _, model) = getInfo(appIdentityMode)
+ if (model.isNotEmpty()) {
+ return model == JL
+ }
+ return false
+ }
+
@JvmStatic
fun isM1(appIdentityMode: String): Boolean {
val (_, _, model) = getInfo(appIdentityMode)
@@ -258,6 +275,19 @@ object AppIdentityModeUtils {
return false
}
+ @JvmStatic
+ fun isM2(appIdentityMode: String): Boolean {
+ val (_, _, model) = getInfo(appIdentityMode)
+ if (model.isNotEmpty()) {
+ return model == M2
+ }
+ return false
+ }
+
+
+
+
+
fun getProduct(appIdentityMode: String): Product {
val (bussness, _, _) = getInfo(appIdentityMode)
return when (bussness) {