[6.4.0]
[temp]
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
apply plugin: 'com.android.library'
|
||||
apply plugin: 'kotlin-android'
|
||||
apply plugin: 'kotlin-android-extensions'
|
||||
apply plugin: 'kotlin-kapt'
|
||||
|
||||
android {
|
||||
compileSdkVersion rootProject.ext.android.compileSdkVersion
|
||||
@@ -15,9 +16,10 @@ android {
|
||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||
consumerProguardFiles "consumer-rules.pro"
|
||||
|
||||
javaCompileOptions {
|
||||
annotationProcessorOptions {
|
||||
arguments = [AROUTER_MODULE_NAME: project.getName()]
|
||||
kapt {
|
||||
useBuildCache = false
|
||||
arguments {
|
||||
arg("AROUTER_MODULE_NAME", project.getName())
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -64,7 +66,7 @@ dependencies {
|
||||
implementation rootProject.ext.dependencies.kotlinstdlib
|
||||
implementation rootProject.ext.dependencies.androidxappcompat
|
||||
implementation rootProject.ext.dependencies.arouter
|
||||
annotationProcessor rootProject.ext.dependencies.aroutercompiler
|
||||
kapt rootProject.ext.dependencies.aroutercompiler
|
||||
implementation rootProject.ext.dependencies.androidxconstraintlayout
|
||||
implementation rootProject.ext.dependencies.amapnavi3dmap
|
||||
|
||||
|
||||
@@ -1,101 +0,0 @@
|
||||
|
||||
package com.mogo.och.bus;
|
||||
|
||||
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 androidx.fragment.app.FragmentManager;
|
||||
|
||||
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||
import com.mogo.eagle.core.function.call.setting.CallerMoGoUiSettingManager;
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger;
|
||||
import com.mogo.och.bus.constant.BusConst;
|
||||
import com.mogo.och.bus.fragment.BusFragment;
|
||||
import com.mogo.och.common.module.biz.constant.OchCommonConst;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
/**
|
||||
* 网约车小巴业务实现入口
|
||||
*
|
||||
* @author tongchenfei
|
||||
*/
|
||||
@Route(path = OchCommonConst.BUS_DRIVER)
|
||||
public class BusProvider implements IMogoOCH {
|
||||
|
||||
private static final String TAG = "BusProvider";
|
||||
|
||||
private BusFragment busFragment;
|
||||
private int containerId;
|
||||
private FragmentActivity activity;
|
||||
|
||||
/**
|
||||
* 进入鹰眼模式,设置手势缩放地图失效
|
||||
*/
|
||||
private void stepIntoVrMode() {
|
||||
CallerLogger.d(M_BUS + TAG, "进入vr模式");
|
||||
CallerMoGoUiSettingManager.INSTANCE.stepInNightMode();//夜间模式 状态栏字体颜色变黑
|
||||
}
|
||||
|
||||
@Override
|
||||
public void init(Context context) {
|
||||
}
|
||||
|
||||
private void showFragment() {
|
||||
FragmentManager supportFragmentManager = activity.getSupportFragmentManager();
|
||||
if (busFragment == null) {
|
||||
CallerLogger.d(TAG, "准备add fragment======");
|
||||
Fragment fragmentByTag = supportFragmentManager.findFragmentByTag(BusFragment.TAG);
|
||||
if (fragmentByTag instanceof BusFragment) {
|
||||
busFragment = (BusFragment) fragmentByTag;
|
||||
} else {
|
||||
busFragment = new BusFragment();
|
||||
}
|
||||
if(!busFragment.isAdded()) {
|
||||
supportFragmentManager.beginTransaction().add(containerId, busFragment, BusFragment.TAG).commitAllowingStateLoss();
|
||||
}
|
||||
return;
|
||||
}
|
||||
CallerLogger.d(TAG, "准备show fragment");
|
||||
supportFragmentManager.beginTransaction().show(busFragment).commitAllowingStateLoss();
|
||||
}
|
||||
|
||||
private void hideFragment() {
|
||||
if (busFragment != null) {
|
||||
CallerLogger.d(TAG, "准备hide fragment");
|
||||
activity.getSupportFragmentManager().beginTransaction().hide(busFragment).commitAllowingStateLoss();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void createCoverage(FragmentActivity activity, int containerId) {
|
||||
|
||||
}
|
||||
|
||||
@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();
|
||||
}
|
||||
}
|
||||
28
OCH/bus/driver/src/main/java/com/mogo/och/bus/BusProvider.kt
Normal file
28
OCH/bus/driver/src/main/java/com/mogo/och/bus/BusProvider.kt
Normal file
@@ -0,0 +1,28 @@
|
||||
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.och.bus.fragment.BusFragment
|
||||
import com.mogo.och.common.module.biz.constant.OchCommonConst
|
||||
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
|
||||
override fun getFragment(): Fragment {
|
||||
return busFragment!!
|
||||
}
|
||||
|
||||
override fun init(context: Context) {
|
||||
d(TAG, "准备show fragment")
|
||||
busFragment = BusFragment()
|
||||
}
|
||||
}
|
||||
@@ -1,24 +0,0 @@
|
||||
package com.mogo.och.bus;
|
||||
|
||||
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);
|
||||
}
|
||||
@@ -11,11 +11,13 @@ import com.mogo.eagle.core.function.call.setting.CallerMoGoUiSettingManager.step
|
||||
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.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.common.module.biz.constant.OchCommonConst
|
||||
import com.mogo.och.common.module.biz.provider.CommonService
|
||||
import com.mogo.och.common.module.wigets.media.MediaPlayerActivity
|
||||
|
||||
/**
|
||||
@@ -24,83 +26,26 @@ import com.mogo.och.common.module.wigets.media.MediaPlayerActivity
|
||||
* Created on 2022/3/29
|
||||
*/
|
||||
@Route(path = OchCommonConst.BUS_PASSENGER)
|
||||
class MogoOCHBusPassenger : IMoGoFunctionProvider {
|
||||
private var mActivity: FragmentActivity? = null
|
||||
private var mContainerId = 0
|
||||
private var mPM2Fragment: Fragment? = null
|
||||
class MogoOCHBusPassenger : CommonService {
|
||||
private lateinit var mPM2Fragment: Fragment
|
||||
|
||||
override fun createCoverage(activity: FragmentActivity?, containerId: Int?): Fragment? {
|
||||
mActivity = activity
|
||||
mContainerId = containerId!!
|
||||
showFragment()
|
||||
private val TAG = MogoOCHBusPassenger::class.java.simpleName
|
||||
override fun getFragment(): Fragment {
|
||||
if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) {
|
||||
mActivity?.let {
|
||||
MultiDisplayUtils.startActWithSecond(it, MediaPlayerActivity::class.java)
|
||||
}
|
||||
MultiDisplayUtils.startActWithSecond(ActivityUtils.getTopActivity(), MediaPlayerActivity::class.java)
|
||||
}
|
||||
return null
|
||||
}
|
||||
|
||||
override val functionName: String
|
||||
get() = "och-bus-passenger-m2"
|
||||
|
||||
override fun onDestroy() {
|
||||
// 若不调用finish, 设置中打开关闭UITouch,会造成och fragment 重叠
|
||||
mActivity?.finish()
|
||||
return mPM2Fragment
|
||||
}
|
||||
|
||||
override fun init(context: Context) {
|
||||
}
|
||||
|
||||
/**
|
||||
* 进入鹰眼模式,设置手势缩放地图失效
|
||||
*/
|
||||
private fun stepIntoVrMode() {
|
||||
d(SceneConstant.M_TAXI_P + TAG, "进入vr模式")
|
||||
stepInDayMode() //白天模式 状态栏字体颜色变黑
|
||||
}
|
||||
|
||||
private fun showFragment() {
|
||||
val supportFragmentManager: FragmentManager? = mActivity?.supportFragmentManager
|
||||
if (mPM2Fragment == null) {
|
||||
|
||||
d(SceneConstant.M_TAXI_P + TAG, "准备add fragment======")
|
||||
|
||||
val fragmentByTag: Fragment? = supportFragmentManager?.findFragmentByTag(PM2BaseFragment.TAG)
|
||||
|
||||
mPM2Fragment = if (fragmentByTag is Fragment){
|
||||
fragmentByTag
|
||||
}else{
|
||||
if (AppIdentityModeUtils.isM2(FunctionBuildConfig.appIdentityMode)) {
|
||||
PM2BaseFragment()
|
||||
}else if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) {
|
||||
BusPassengerRouteFragment()
|
||||
}else{
|
||||
BusPassengerRouteFragment()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (!mPM2Fragment?.isAdded!!){
|
||||
supportFragmentManager?.beginTransaction()
|
||||
?.add(mContainerId, mPM2Fragment!!, PM2BaseFragment.TAG)?.commitAllowingStateLoss()
|
||||
}
|
||||
return
|
||||
d(SceneConstant.M_TAXI_P + TAG, "init")
|
||||
mPM2Fragment = if (AppIdentityModeUtils.isM2(FunctionBuildConfig.appIdentityMode)) {
|
||||
PM2BaseFragment()
|
||||
} else if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) {
|
||||
BusPassengerRouteFragment()
|
||||
} else {
|
||||
BusPassengerRouteFragment()
|
||||
}
|
||||
d(SceneConstant.M_TAXI_P + TAG, "准备show fragment")
|
||||
supportFragmentManager?.beginTransaction()?.show(mPM2Fragment!!)
|
||||
?.commitAllowingStateLoss()
|
||||
}
|
||||
|
||||
private fun hideFragment() {
|
||||
if (mPM2Fragment != null) {
|
||||
mActivity?.supportFragmentManager?.beginTransaction()?.hide(mPM2Fragment!!)
|
||||
?.commitAllowingStateLoss()
|
||||
}
|
||||
}
|
||||
|
||||
companion object {
|
||||
private val TAG = MogoOCHBusPassenger::class.java.simpleName
|
||||
}
|
||||
|
||||
}
|
||||
@@ -2,13 +2,12 @@ package com.magic.mogo.och.charter
|
||||
|
||||
import android.content.Context
|
||||
import androidx.fragment.app.Fragment
|
||||
import androidx.fragment.app.FragmentActivity
|
||||
import com.alibaba.android.arouter.facade.annotation.Route
|
||||
import com.magic.mogo.och.charter.constant.CharterConst
|
||||
import com.magic.mogo.och.charter.fragment.DriverM1Fragment
|
||||
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.common.module.biz.constant.OchCommonConst
|
||||
import com.mogo.och.common.module.biz.provider.CommonService
|
||||
|
||||
|
||||
/**
|
||||
@@ -16,56 +15,18 @@ import com.mogo.och.common.module.biz.constant.OchCommonConst
|
||||
* @date: 2023/2/22
|
||||
*/
|
||||
@Route(path = OchCommonConst.CHARTER_DRIVER)
|
||||
class CharterProvider: IMoGoFunctionProvider{
|
||||
class CharterProvider : CommonService {
|
||||
|
||||
private var mActivity: FragmentActivity? = null
|
||||
private var mContainerId: Int? = 0
|
||||
private var driverM1Fragment: Fragment? = null
|
||||
private lateinit var driverM1Fragment: Fragment
|
||||
private val TAG = CharterProvider::class.java.simpleName
|
||||
|
||||
override fun createCoverage(fragmentActivity: FragmentActivity?, integer: Int?): Fragment? {
|
||||
this.mContainerId = integer
|
||||
this.mActivity = fragmentActivity
|
||||
showFragment()
|
||||
return null
|
||||
override fun getFragment(): Fragment {
|
||||
return driverM1Fragment
|
||||
}
|
||||
|
||||
|
||||
private fun showFragment() {
|
||||
|
||||
val supportFragmentManager = mActivity?.supportFragmentManager
|
||||
if (driverM1Fragment == null) {
|
||||
d(TAG, "准备add fragment======")
|
||||
val fragmentByTag = supportFragmentManager?.findFragmentByTag(DriverM1Fragment.TAG)
|
||||
driverM1Fragment = if (fragmentByTag is DriverM1Fragment) {
|
||||
fragmentByTag
|
||||
} else {
|
||||
DriverM1Fragment()
|
||||
}
|
||||
if (!driverM1Fragment?.isAdded!!) {
|
||||
mContainerId?.let {
|
||||
supportFragmentManager?.beginTransaction()
|
||||
?.add(it, driverM1Fragment!!, DriverM1Fragment.TAG)?.commitAllowingStateLoss()
|
||||
}
|
||||
}
|
||||
return
|
||||
}
|
||||
d(TAG, "准备show fragment")
|
||||
supportFragmentManager?.beginTransaction()?.show(driverM1Fragment!!)?.commitAllowingStateLoss()
|
||||
}
|
||||
|
||||
|
||||
override fun init(context: Context?) {
|
||||
d(SceneConstant.M_TAXI + TAG, "init")
|
||||
driverM1Fragment = DriverM1Fragment()
|
||||
}
|
||||
|
||||
override val functionName: String
|
||||
get() = ""
|
||||
|
||||
override fun onDestroy() {
|
||||
// 若不调用finish, 设置中打开关闭UITouch,会造成och fragment 重叠
|
||||
mActivity?.finish()
|
||||
}
|
||||
|
||||
companion object {
|
||||
private val TAG = CharterProvider::class.java.simpleName
|
||||
}
|
||||
}
|
||||
@@ -11,6 +11,7 @@ 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-乘客端
|
||||
@@ -18,60 +19,19 @@ import com.mogo.och.common.module.biz.constant.OchCommonConst
|
||||
* Created on 2022/3/29
|
||||
*/
|
||||
@Route(path = OchCommonConst.CHARTER_PASSENGER)
|
||||
class MogoOCHBusPassenger : IMoGoFunctionProvider {
|
||||
private var mActivity: FragmentActivity? = null
|
||||
private var mContainerId = 0
|
||||
private var mPassengerFragment: MainFragment? = null
|
||||
override fun createCoverage(activity: FragmentActivity?, containerId: Int?): Fragment? {
|
||||
mActivity = activity
|
||||
mContainerId = containerId!!
|
||||
showFragment()
|
||||
return null
|
||||
}
|
||||
class MogoOCHBusPassenger : CommonService {
|
||||
|
||||
override val functionName: String
|
||||
get() = "och-bus-passenger-m1"
|
||||
private lateinit var mPassengerFragment: MainFragment
|
||||
private val TAG = MogoOCHBusPassenger::class.java.simpleName
|
||||
|
||||
override fun onDestroy() {
|
||||
// 若不调用finish, 设置中打开关闭UITouch,会造成och fragment 重叠
|
||||
mActivity?.finish()
|
||||
|
||||
override fun getFragment(): Fragment {
|
||||
return mPassengerFragment
|
||||
}
|
||||
|
||||
override fun init(context: Context) {
|
||||
|
||||
d(SceneConstant.M_TAXI_P + TAG, "init")
|
||||
mPassengerFragment = MainFragment()
|
||||
}
|
||||
|
||||
private fun showFragment() {
|
||||
val supportFragmentManager: FragmentManager? = mActivity?.supportFragmentManager
|
||||
|
||||
if (mPassengerFragment == null) {
|
||||
d(SceneConstant.M_TAXI_P + TAG, "准备add fragment======")
|
||||
val fragmentByTag: Fragment? = supportFragmentManager?.findFragmentByTag(MainFragment.TAG)
|
||||
mPassengerFragment = if (fragmentByTag is MainFragment){
|
||||
fragmentByTag
|
||||
}else{
|
||||
MainFragment()
|
||||
}
|
||||
|
||||
if (!mPassengerFragment?.isAdded!!){
|
||||
supportFragmentManager?.beginTransaction()
|
||||
?.add(mContainerId, mPassengerFragment!!, MainFragment.TAG)?.commitAllowingStateLoss()
|
||||
}
|
||||
return
|
||||
}
|
||||
d(SceneConstant.M_TAXI_P + TAG, "准备show fragment")
|
||||
supportFragmentManager?.beginTransaction()?.show(mPassengerFragment!!)
|
||||
?.commitAllowingStateLoss()
|
||||
}
|
||||
|
||||
private fun hideFragment() {
|
||||
if (mPassengerFragment != null) {
|
||||
mActivity!!.supportFragmentManager.beginTransaction().hide(mPassengerFragment!!)
|
||||
.commitAllowingStateLoss()
|
||||
}
|
||||
}
|
||||
|
||||
companion object {
|
||||
private val TAG = MogoOCHBusPassenger::class.java.simpleName
|
||||
}
|
||||
}
|
||||
@@ -3,19 +3,16 @@ package com.mogo.och.biz.login
|
||||
import android.content.Context
|
||||
import androidx.fragment.app.Fragment
|
||||
import com.alibaba.android.arouter.facade.annotation.Route
|
||||
import com.mogo.eagle.core.data.temp.EventLogout
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
|
||||
import com.mogo.och.biz.login.model.OchCommonLoginStatusDefaultModel
|
||||
import com.mogo.och.biz.login.ui.LoginFragment
|
||||
import com.mogo.och.biz.login.ui.SimpleFragment
|
||||
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
|
||||
import com.mogo.och.common.module.biz.login.LoginStatusManager
|
||||
import com.mogo.och.common.module.biz.login.TaxiDriverRoleEnum
|
||||
import com.mogo.och.common.module.biz.login.TaxiLoginStatusEnum
|
||||
import org.greenrobot.eventbus.EventBus
|
||||
import org.greenrobot.eventbus.Subscribe
|
||||
import org.greenrobot.eventbus.ThreadMode
|
||||
|
||||
/**
|
||||
* 网约车小巴业务实现入口
|
||||
@@ -30,15 +27,19 @@ class LoginProvider : LoginService {
|
||||
|
||||
private var loginStatus: TaxiLoginStatusEnum = TaxiLoginStatusEnum.None
|
||||
private var loginInfo: LoginInfo?=null
|
||||
private val TAG = "LoginProvider"
|
||||
override fun init(context: Context) {
|
||||
loginFragment = Fragment()
|
||||
CallerLogger.d(TAG,"init")
|
||||
loginFragment = LoginFragment()
|
||||
}
|
||||
|
||||
override fun getFragment(): Fragment {
|
||||
return loginFragment
|
||||
CallerLogger.d(TAG,"getFragment ${Thread.currentThread().name}")
|
||||
return SimpleFragment()
|
||||
}
|
||||
|
||||
override fun setLoginStatus(status: Int) {
|
||||
CallerLogger.d(TAG,"setLoginStatus:${status}")
|
||||
when (status) {
|
||||
0 -> {
|
||||
setLoginStatus(TaxiLoginStatusEnum.Logout)
|
||||
@@ -53,37 +54,46 @@ class LoginProvider : LoginService {
|
||||
}
|
||||
|
||||
override fun queryLoginStatusByNet() {
|
||||
CallerLogger.d(TAG,"queryLoginStatusByNet")
|
||||
OchCommonLoginStatusDefaultModel.queryCarStatus()
|
||||
}
|
||||
override fun showUiModel(show: Boolean) {
|
||||
CallerLogger.d(TAG,"showUiModel${show}")
|
||||
uiModel = show;
|
||||
}
|
||||
override fun loginOut(mLatitude: Double, mLongitude: Double) {
|
||||
CallerLogger.d(TAG,"loginOut mLatitude:${mLatitude}--mLongitude:${mLongitude}")
|
||||
OchCommonLoginStatusDefaultModel.logout(mLatitude, mLongitude)
|
||||
}
|
||||
|
||||
override fun setLoginInfo(loginInfo: LoginInfo) {
|
||||
CallerLogger.d(TAG,"setLoginInfo:${loginInfo}")
|
||||
this.loginInfo = loginInfo
|
||||
}
|
||||
|
||||
override fun getLoginInfo(): LoginInfo? {
|
||||
CallerLogger.d(TAG,"getLoginInfo")
|
||||
return loginInfo
|
||||
}
|
||||
|
||||
override fun getPurpose(): TaxiDriverRoleEnum {
|
||||
CallerLogger.d(TAG,"getPurpose")
|
||||
return TaxiDriverRoleEnum.valueOf(loginInfo?.purpose)
|
||||
}
|
||||
|
||||
override fun isLogin(): Boolean {
|
||||
CallerLogger.d(TAG,"isLogin")
|
||||
return loginStatus == TaxiLoginStatusEnum.Login
|
||||
}
|
||||
|
||||
override fun getLoginStatus(): TaxiLoginStatusEnum {
|
||||
CallerLogger.d(TAG,"getLoginStatus:${loginStatus}")
|
||||
return loginStatus
|
||||
}
|
||||
|
||||
|
||||
override fun setLoginStatus(loginStatus: TaxiLoginStatusEnum) {
|
||||
CallerLogger.d(TAG,"setLoginStatus:${loginStatus}")
|
||||
if(loginStatus!=this.loginStatus){
|
||||
this.loginStatus = loginStatus
|
||||
LoginStatusManager.invokeLoginStatusChange(loginStatus)
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.mogo.och.biz.login.model
|
||||
|
||||
import android.annotation.SuppressLint
|
||||
import com.mogo.commons.AbsMogoApplication
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
|
||||
import com.mogo.commons.storage.SharedPrefsMgr
|
||||
@@ -20,7 +21,9 @@ object OchCommonLoginStatusDefaultModel : OchCommonLoginStatusModel() {
|
||||
const val TAG = "OchCommonLoginStatusDefaultModel"
|
||||
|
||||
|
||||
var loginCallback: ILoginCallback? = null
|
||||
init {
|
||||
mContext = AbsMogoApplication.getApp();
|
||||
}
|
||||
|
||||
override fun loginSuccess(data: DriverStatusQueryRespBean?) {
|
||||
CallerLogger.d(SceneConstant.M_TAXI + TAG, "loginSuccess:${LoginStatusManager.isLogin()}")
|
||||
@@ -29,7 +32,6 @@ object OchCommonLoginStatusDefaultModel : OchCommonLoginStatusModel() {
|
||||
} else {
|
||||
SharedPrefsMgr.getInstance().putString("och_account", "")
|
||||
}
|
||||
loginCallback?.loginSuccess()
|
||||
|
||||
data?.data?.driverStatus?.let { updateLoginLocalStatus(it) }
|
||||
|
||||
@@ -44,7 +46,6 @@ object OchCommonLoginStatusDefaultModel : OchCommonLoginStatusModel() {
|
||||
|
||||
override fun loginFail(isLogin: Boolean) {
|
||||
CallerLogger.d(SceneConstant.M_TAXI + TAG, "loginFail:$isLogin")
|
||||
loginCallback?.loginFail()
|
||||
updateLoginLocalStatus(0)
|
||||
}
|
||||
|
||||
|
||||
@@ -32,11 +32,6 @@ public abstract class OchCommonLoginStatusModel {
|
||||
private Disposable subscribe;
|
||||
|
||||
|
||||
public void init() {
|
||||
mContext = AbsMogoApplication.getApp();
|
||||
queryCarStatus();
|
||||
}
|
||||
|
||||
protected abstract void loginSuccess(DriverStatusQueryRespBean data);
|
||||
|
||||
protected abstract void loginFail(boolean isLogin);
|
||||
|
||||
@@ -8,7 +8,7 @@ import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
|
||||
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.TaxiLoginDialogFragment
|
||||
import com.mogo.och.biz.login.ui.LoginFragment
|
||||
import com.mogo.och.biz.login.model.OchCommonLoginModel
|
||||
import com.mogo.och.common.module.wigets.toast.ToastCharterUtils
|
||||
import io.reactivex.Observable
|
||||
@@ -23,13 +23,15 @@ import java.util.concurrent.TimeUnit
|
||||
*
|
||||
* 描述
|
||||
*/
|
||||
class OchCommonLoginPresenter(view: TaxiLoginDialogFragment?) :
|
||||
Presenter<TaxiLoginDialogFragment?>(view), ITaxiLoginCallback {
|
||||
class OchCommonLoginPresenter(view: LoginFragment?) : Presenter<LoginFragment?>(view), ITaxiLoginCallback {
|
||||
|
||||
private var countDownDisposable: Disposable? = null
|
||||
|
||||
private val TAG = OchCommonLoginPresenter::class.java.simpleName
|
||||
|
||||
init {
|
||||
initListeners()
|
||||
CallerLogger.d(SceneConstant.M_TAXI + TAG, "网约车-Init")
|
||||
}
|
||||
|
||||
private fun initListeners() {
|
||||
@@ -66,10 +68,6 @@ class OchCommonLoginPresenter(view: TaxiLoginDialogFragment?) :
|
||||
}
|
||||
}
|
||||
|
||||
companion object {
|
||||
private val TAG = OchCommonLoginPresenter::class.java.simpleName
|
||||
}
|
||||
|
||||
override fun getPhoneCodeSuccess() {
|
||||
val countDownSeconds = 60L;
|
||||
countDownDisposable = Observable.intervalRange(0, countDownSeconds, 0, 1, TimeUnit.SECONDS)
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
package com.mogo.och.biz.login.ui
|
||||
|
||||
import android.annotation.SuppressLint
|
||||
import android.graphics.Rect
|
||||
import android.os.Bundle
|
||||
import android.os.SystemClock
|
||||
import android.view.*
|
||||
import androidx.core.content.ContextCompat
|
||||
@@ -21,6 +19,7 @@ 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.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
|
||||
@@ -35,25 +34,14 @@ import kotlinx.android.synthetic.main.taxi_login_view.cl_main
|
||||
* @author: yangyakun
|
||||
* @date: 2022/8/15
|
||||
*/
|
||||
class TaxiLoginDialogFragment :
|
||||
MvpFragment<TaxiLoginDialogFragment?, OchCommonLoginPresenter?>(){
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
}
|
||||
override fun onCreateView(
|
||||
inflater: LayoutInflater,
|
||||
container: ViewGroup?,
|
||||
savedInstanceState: Bundle?
|
||||
): View? {
|
||||
return super.onCreateView(inflater, container, savedInstanceState)
|
||||
}
|
||||
class LoginFragment : MvpFragment<LoginFragment?, OchCommonLoginPresenter?>(){
|
||||
|
||||
override fun getLayoutId(): Int {
|
||||
return R.layout.taxi_login_view
|
||||
}
|
||||
|
||||
override fun initViews() {
|
||||
CallerLogger.d(TAG,"init")
|
||||
inputPhoneNormal()
|
||||
initBg()
|
||||
initListener()
|
||||
@@ -73,8 +61,8 @@ class TaxiLoginDialogFragment :
|
||||
}
|
||||
}
|
||||
|
||||
@SuppressLint("ClickableViewAccessibility")
|
||||
private fun initListener() {
|
||||
CallerLogger.d(TAG,"initListener")
|
||||
mRootView.isFocusable = true
|
||||
mRootView.isFocusableInTouchMode = true
|
||||
mRootView.setOnTouchListener { _, event ->
|
||||
@@ -113,7 +101,7 @@ class TaxiLoginDialogFragment :
|
||||
mPresenter?.getPhoneCode(ace_login_phone_value.text.toString())
|
||||
}
|
||||
actv_login_show_sn.setOnLongClickListener {
|
||||
val loginService = ARouter.getInstance().build(OchCommonConst.LOGINSERVICE)
|
||||
val loginService = ARouter.getInstance().build(OchCommonConst.BIZ_LOGIN)
|
||||
.navigation() as LoginService
|
||||
loginService.showUiModel(false)
|
||||
true
|
||||
@@ -126,6 +114,9 @@ class TaxiLoginDialogFragment :
|
||||
}
|
||||
}
|
||||
actv_login_show_sn.text = SharedPrefsMgr.getInstance().sn
|
||||
RxUtils.createSubscribe(10_000) {
|
||||
CallerLogger.d(TAG,"宽度${cl_main.width}----${cl_main.height}----${cl_main.visibility}")
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -156,7 +147,6 @@ class TaxiLoginDialogFragment :
|
||||
}
|
||||
|
||||
private fun inputPhoneNormal() {
|
||||
//ace_login_phone_value.setHint(R.string.module_och_taxi_login_phone_hint_text)
|
||||
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)
|
||||
@@ -174,15 +164,7 @@ class TaxiLoginDialogFragment :
|
||||
companion object {
|
||||
private const val COUNTS = 4 // 点击次数
|
||||
private const val DURATION: Long = 1000 // 规定有效时间
|
||||
val TAG = TaxiLoginDialogFragment::class.java.simpleName
|
||||
|
||||
@JvmStatic
|
||||
fun newInstance(): TaxiLoginDialogFragment {
|
||||
val args = Bundle()
|
||||
val fragment = TaxiLoginDialogFragment()
|
||||
fragment.arguments = args
|
||||
return fragment
|
||||
}
|
||||
val TAG = LoginFragment::class.java.simpleName
|
||||
}
|
||||
|
||||
private var mHits = LongArray(COUNTS)
|
||||
@@ -201,4 +183,14 @@ class TaxiLoginDialogFragment :
|
||||
fun loginSuccess() {
|
||||
|
||||
}
|
||||
|
||||
override fun onResume() {
|
||||
super.onResume()
|
||||
CallerLogger.d(TAG,"onResume")
|
||||
}
|
||||
|
||||
override fun onPause() {
|
||||
super.onPause()
|
||||
CallerLogger.d(TAG,"onPause")
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
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")
|
||||
}
|
||||
}
|
||||
10
OCH/common/biz/src/main/res/layout/taxi_login_view_1.xml
Normal file
10
OCH/common/biz/src/main/res/layout/taxi_login_view_1.xml
Normal file
@@ -0,0 +1,10 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:id="@+id/cl_main"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:background="@drawable/icon_car_red"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
@@ -28,8 +28,6 @@ class OchCommonConst {
|
||||
// token 失效 重新获取token
|
||||
const val WAIT_TAKEN = 100046
|
||||
|
||||
const val LOGINSERVICE = "/ochbiz/common/login"
|
||||
|
||||
const val BIZ_LOGIN = "/ochbiz/common/login"
|
||||
|
||||
const val BUS_DRIVER = "/bus/driver"
|
||||
|
||||
@@ -9,4 +9,82 @@ public class LoginInfo {
|
||||
public String phone;//手机号
|
||||
public Integer lineId;//线路id
|
||||
public Integer taskId;//任务id
|
||||
|
||||
public int getDriverStatus() {
|
||||
return driverStatus;
|
||||
}
|
||||
|
||||
public void setDriverStatus(int driverStatus) {
|
||||
this.driverStatus = driverStatus;
|
||||
}
|
||||
|
||||
public String getOrderNo() {
|
||||
return orderNo;
|
||||
}
|
||||
|
||||
public void setOrderNo(String orderNo) {
|
||||
this.orderNo = orderNo;
|
||||
}
|
||||
|
||||
public int getPurpose() {
|
||||
return purpose;
|
||||
}
|
||||
|
||||
public void setPurpose(int purpose) {
|
||||
this.purpose = purpose;
|
||||
}
|
||||
|
||||
public String getSn() {
|
||||
return sn;
|
||||
}
|
||||
|
||||
public void setSn(String sn) {
|
||||
this.sn = sn;
|
||||
}
|
||||
|
||||
public String getPlateNumber() {
|
||||
return plateNumber;
|
||||
}
|
||||
|
||||
public void setPlateNumber(String plateNumber) {
|
||||
this.plateNumber = plateNumber;
|
||||
}
|
||||
|
||||
public String getPhone() {
|
||||
return phone;
|
||||
}
|
||||
|
||||
public void setPhone(String phone) {
|
||||
this.phone = phone;
|
||||
}
|
||||
|
||||
public Integer getLineId() {
|
||||
return lineId;
|
||||
}
|
||||
|
||||
public void setLineId(Integer lineId) {
|
||||
this.lineId = lineId;
|
||||
}
|
||||
|
||||
public Integer getTaskId() {
|
||||
return taskId;
|
||||
}
|
||||
|
||||
public void setTaskId(Integer taskId) {
|
||||
this.taskId = taskId;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "LoginInfo{" +
|
||||
"driverStatus=" + driverStatus +
|
||||
", orderNo='" + orderNo + '\'' +
|
||||
", purpose=" + purpose +
|
||||
", sn='" + sn + '\'' +
|
||||
", plateNumber='" + plateNumber + '\'' +
|
||||
", phone='" + phone + '\'' +
|
||||
", lineId=" + lineId +
|
||||
", taskId=" + taskId +
|
||||
'}';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.mogo.och.common.module.biz.login
|
||||
|
||||
|
||||
import androidx.fragment.app.Fragment
|
||||
import com.alibaba.android.arouter.launcher.ARouter
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotStatisticsListenerManager
|
||||
import com.mogo.och.common.module.biz.constant.OchCommonConst
|
||||
@@ -12,6 +13,14 @@ object LoginStatusManager : CallerBase<ILoginCallback>() {
|
||||
private var loginService: LoginService? =
|
||||
ARouter.getInstance().build(OchCommonConst.BIZ_LOGIN).navigation() as LoginService
|
||||
|
||||
@JvmStatic
|
||||
fun getFragment():Fragment {
|
||||
loginService?.let {
|
||||
return it.getFragment()
|
||||
}
|
||||
throw ClassNotFoundException("没有找到登录Fragment");
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
fun loginOut(mLatitude: Double, mLongitude: Double) {
|
||||
loginService?.loginOut(mLatitude, mLongitude)
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
package com.mogo.och.facade
|
||||
|
||||
import androidx.lifecycle.LifecycleOwner
|
||||
import com.mogo.commons.AbsMogoApplication
|
||||
import com.mogo.commons.mvp.Presenter
|
||||
import com.mogo.och.charter.passenger.ui.MainFragment
|
||||
import com.mogo.och.charter.passenger.ui.overmapview.MakerWithSiteNamewithCheck
|
||||
import com.mogo.och.common.module.manager.autopilotmanager.OCHAdasAbilityManager
|
||||
import java.util.concurrent.ConcurrentHashMap
|
||||
|
||||
class BusPassengerPresenter(view: MainFragment?) :
|
||||
Presenter<MainFragment?>(view) {
|
||||
|
||||
private val lindIdAndView = ConcurrentHashMap<Long, MakerWithSiteNamewithCheck?>()
|
||||
|
||||
companion object {
|
||||
private const val TAG = "BusPassengerPresenter"
|
||||
const val KEY4SHOWNOVICEGUIDANCE = "showNoviceGuidanceOrderNor"
|
||||
|
||||
}
|
||||
|
||||
init {
|
||||
OCHAdasAbilityManager.getInstance().init(AbsMogoApplication.getApp())
|
||||
}
|
||||
|
||||
override fun onCreate(owner: LifecycleOwner) {
|
||||
super.onCreate(owner)
|
||||
}
|
||||
|
||||
override fun onDestroy(owner: LifecycleOwner) {
|
||||
super.onDestroy(owner)
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
359
OCH/facade/src/main/java/com/mogo/och/facade/MainFragment.kt
Normal file
359
OCH/facade/src/main/java/com/mogo/och/facade/MainFragment.kt
Normal file
@@ -0,0 +1,359 @@
|
||||
package com.mogo.och.facade
|
||||
|
||||
import android.graphics.BitmapFactory
|
||||
import android.os.Bundle
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import com.alibaba.android.arouter.launcher.ARouter
|
||||
import com.amap.api.maps.model.LatLng
|
||||
import com.mogo.commons.AbsMogoApplication
|
||||
import com.mogo.commons.mvp.MvpFragment
|
||||
import com.mogo.eagle.core.data.config.HdMapBuildConfig
|
||||
import com.mogo.eagle.core.data.constants.MogoServicePaths
|
||||
import com.mogo.eagle.core.function.api.hmi.view.IStatusViewLayout
|
||||
import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager.getMapUIController
|
||||
import com.mogo.eagle.core.function.hmi.ui.msgbox.MMsgBoxButtonView
|
||||
import com.mogo.eagle.core.function.view.SiteMarkerBean
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
|
||||
import com.mogo.map.listener.IMogoMapListener
|
||||
import com.mogo.map.listener.MogoMapListenerHandler
|
||||
import com.mogo.map.uicontroller.VisualAngleMode
|
||||
import com.mogo.och.charter.passenger.R
|
||||
import com.mogo.och.charter.passenger.bean.event.EventLineSites
|
||||
import com.mogo.och.charter.passenger.callback.IClearViewCallback
|
||||
import com.mogo.och.charter.passenger.presenter.BusPassengerPresenter
|
||||
import com.mogo.och.charter.passenger.ui.bottom.BottomBar
|
||||
import com.mogo.och.charter.passenger.ui.bottom.BottomClickView
|
||||
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.wigets.toast.ToastCharterUtils
|
||||
import com.mogo.och.common.module.biz.login.LoginStatusManager
|
||||
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
|
||||
import kotlinx.android.synthetic.main.charter_p_main_fragment.biz_orderinfo
|
||||
import kotlinx.android.synthetic.main.charter_p_main_fragment.biz_selectline
|
||||
import kotlinx.android.synthetic.main.charter_p_main_fragment.biz_softcontrol
|
||||
import kotlinx.android.synthetic.main.charter_p_main_fragment.biz_video
|
||||
import kotlinx.android.synthetic.main.charter_p_main_fragment.mapBizView
|
||||
import kotlinx.android.synthetic.main.charter_p_main_fragment.mcv_play_music
|
||||
import kotlinx.android.synthetic.main.charter_p_main_fragment.omvOverMap
|
||||
//import kotlinx.android.synthetic.main.charter_p_main_fragment.viewBusPM1MsgBoxBubble
|
||||
//import kotlinx.android.synthetic.main.charter_p_main_fragment.viewBusPM1MsgBoxButton
|
||||
//import kotlinx.android.synthetic.main.charter_p_main_fragment.viewBusPM1MsgBoxList
|
||||
import org.greenrobot.eventbus.EventBus
|
||||
import org.greenrobot.eventbus.Subscribe
|
||||
import org.greenrobot.eventbus.ThreadMode
|
||||
import java.lang.ref.WeakReference
|
||||
|
||||
/**
|
||||
* @author: wangmingjun
|
||||
* @date: 2022/4/12
|
||||
*/
|
||||
class MainFragment : MvpFragment<MainFragment?, BusPassengerPresenter?>(), IMogoMapListener {
|
||||
|
||||
private var m1CarUserNoOrderFragment: WeakReference<M1CarUserNoOrderFragment>? = null
|
||||
private var noviceGuidanceFragment: WeakReference<NoviceGuidanceFragment>? = null
|
||||
|
||||
private val endStation =
|
||||
BitmapFactory.decodeResource(
|
||||
AbsMogoApplication.getApp().resources,
|
||||
R.drawable.charter_p_small_map_view_dir_end
|
||||
)
|
||||
private val lineTrajectory =
|
||||
BitmapFactory.decodeResource(
|
||||
AbsMogoApplication.getApp().resources,
|
||||
R.drawable.charter_p_trajectory_line
|
||||
)
|
||||
|
||||
private val goneView = object : IClearViewCallback {
|
||||
override fun goneAllView() {
|
||||
bb_boorombar.setCheckIndex(BottomBar.SelectView.NONE)
|
||||
}
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
}
|
||||
return R.layout.charter_p_main_fragment
|
||||
}
|
||||
|
||||
override fun getTagName(): String {
|
||||
return TAG
|
||||
}
|
||||
|
||||
override fun onCreateView(
|
||||
inflater: LayoutInflater,
|
||||
container: ViewGroup?,
|
||||
savedInstanceState: Bundle?
|
||||
): View? {
|
||||
EventBus.getDefault().register(this)
|
||||
return super.onCreateView(inflater, container, savedInstanceState)
|
||||
}
|
||||
|
||||
override fun initViews() {
|
||||
omvOverMap.hideResetView()
|
||||
// viewBusPM1MsgBoxButton.setClickListener(object : MMsgBoxButtonView.ClickListener {
|
||||
// override fun showMsgBoxList(show: Boolean) {
|
||||
// if (show) {
|
||||
// viewBusPM1MsgBoxList.visibility = View.VISIBLE
|
||||
// viewBusPM1MsgBoxBubble.visibility = View.GONE
|
||||
// viewBusPM1MsgBoxBubble.isShowData(false)
|
||||
// } else {
|
||||
// viewBusPM1MsgBoxList.visibility = View.GONE
|
||||
// viewBusPM1MsgBoxBubble.visibility = View.VISIBLE
|
||||
// viewBusPM1MsgBoxBubble.isShowData(true)
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// })
|
||||
|
||||
bb_boorombar.setCheckChangeListener(object : BottomBar.ApplyClickLintener {
|
||||
override fun onApplyClick(selectItem: BottomBar.SelectView): Boolean {
|
||||
when (selectItem) {
|
||||
BottomBar.SelectView.ORDERINFO -> {
|
||||
if (LoginStatusManager.isLogin()) {
|
||||
if (mPresenter?.haveOrder() == true) {
|
||||
|
||||
} else {
|
||||
ToastCharterUtils.showToastShort("请确认订单")
|
||||
return true
|
||||
}
|
||||
} else {
|
||||
mPresenter?.querLogin()
|
||||
ToastCharterUtils.showToastShort(requireContext().getString(R.string.charter_p_please_login_driver))
|
||||
return true
|
||||
}
|
||||
showBizView(orderinfo = true)
|
||||
}
|
||||
BottomBar.SelectView.SETTING -> showBizView(softControl = true)
|
||||
BottomBar.SelectView.LINE -> showBizView(selectLine = true)
|
||||
BottomBar.SelectView.VIDEO -> showBizView(showVideo = true)
|
||||
BottomBar.SelectView.MUSIC -> showBizView(showMusic = true)
|
||||
else -> {
|
||||
showBizView()
|
||||
statusBarView?.setBackgroudColor(R.color.charter_p_80ffffff)
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
})
|
||||
bb_boorombar.setApplyClickListener(object : BottomClickView.ApplyClickLintener {
|
||||
override fun onApplyClick() {
|
||||
bb_boorombar.setCheckIndex(BottomBar.SelectView.NONE)
|
||||
}
|
||||
})
|
||||
biz_orderinfo.goneViewListener = goneView
|
||||
biz_softcontrol.goneViewListener = goneView
|
||||
biz_selectline.goneViewListener = goneView
|
||||
biz_video.goneViewListener = goneView
|
||||
|
||||
aciv_enter_video.setOnClickListener {
|
||||
bb_boorombar.setCheckIndex(BottomBar.SelectView.VIDEO)
|
||||
}
|
||||
aciv_map_2_default.setOnClickListener {
|
||||
omvOverMap.displayCustomOverView()
|
||||
mapBizView.getUI()?.let {
|
||||
it.changeMapVisualAngle(it.getVrAngleDefaultMode(), null)
|
||||
}
|
||||
}
|
||||
MogoMapListenerHandler.mogoMapListenerHandler.registerHostMapListener(TAG, this)
|
||||
}
|
||||
|
||||
fun setCarMode(type: Int) {
|
||||
mPresenter?.setCarChangeListener(type)
|
||||
}
|
||||
|
||||
private fun showBizView(
|
||||
orderinfo: Boolean = false,
|
||||
softControl: Boolean = false,
|
||||
selectLine: Boolean = false,
|
||||
showVideo: Boolean = false,
|
||||
showMusic: Boolean = false
|
||||
) {
|
||||
if (orderinfo) {
|
||||
biz_orderinfo.visibility = View.VISIBLE
|
||||
statusBarView?.setBackgroudColor(R.color.charter_p_80ffffff)
|
||||
} else {
|
||||
biz_orderinfo.visibility = View.GONE
|
||||
}
|
||||
if (softControl) {
|
||||
biz_softcontrol.visibility = View.VISIBLE
|
||||
statusBarView?.setBackgroudColor(R.color.charter_p_40ffffff)
|
||||
} else {
|
||||
biz_softcontrol.visibility = View.GONE
|
||||
}
|
||||
if (selectLine) {
|
||||
biz_selectline.visibility = View.VISIBLE
|
||||
statusBarView?.setBackgroudColor(R.color.charter_p_80ffffff)
|
||||
} else {
|
||||
biz_selectline.visibility = View.GONE
|
||||
}
|
||||
if (showVideo) {
|
||||
biz_video.visibility = View.VISIBLE
|
||||
statusBarView?.setBackgroudColor(R.color.charter_p_40ffffff)
|
||||
} else {
|
||||
biz_video.visibility = View.GONE
|
||||
}
|
||||
if(showMusic) {
|
||||
mcv_play_music.visibility = View.VISIBLE
|
||||
statusBarView?.setBackgroudColor(R.color.charter_p_40ffffff)
|
||||
}else{
|
||||
mcv_play_music.visibility = View.GONE
|
||||
}
|
||||
}
|
||||
|
||||
fun setCarModel(rawInfo: Int) {
|
||||
getMapUIController()?.changeCurrentIcon(rawInfo)
|
||||
HdMapBuildConfig.currentCarVrIconRes = rawInfo
|
||||
}
|
||||
|
||||
override fun createPresenter(): BusPassengerPresenter {
|
||||
return BusPassengerPresenter(this)
|
||||
}
|
||||
|
||||
override fun initViews(savedInstanceState: Bundle?) {
|
||||
super.initViews(savedInstanceState)
|
||||
mapBizView.onCreate(savedInstanceState)
|
||||
omvOverMap.onCreateView(savedInstanceState)
|
||||
}
|
||||
|
||||
fun drawEndStation(latLng: LatLng) {
|
||||
val listOf = listOf(latLng)
|
||||
omvOverMap.drawSiteMarkers(listOf, endStation, 0.5f, 1f)
|
||||
includePoint(listOf)
|
||||
}
|
||||
|
||||
fun cleanEndStation() {
|
||||
omvOverMap.clearSiteMarkers()
|
||||
omvOverMap.clearCustomPolyline()
|
||||
}
|
||||
|
||||
override fun onResume() {
|
||||
super.onResume()
|
||||
mapBizView.onResume()
|
||||
omvOverMap.onResume()
|
||||
}
|
||||
|
||||
override fun onSaveInstanceState(outState: Bundle) {
|
||||
super.onSaveInstanceState(outState)
|
||||
mapBizView.onSaveInstanceState(outState)
|
||||
}
|
||||
|
||||
override fun onLowMemory() {
|
||||
super.onLowMemory()
|
||||
mapBizView.onLowMemory()
|
||||
}
|
||||
|
||||
override fun onPause() {
|
||||
super.onPause()
|
||||
mapBizView.onPause()
|
||||
omvOverMap.onPause()
|
||||
}
|
||||
|
||||
override fun onDestroyView() {
|
||||
mapBizView.onDestroy()
|
||||
omvOverMap.onDestroy()
|
||||
super.onDestroyView()
|
||||
EventBus.getDefault().unregister(this)
|
||||
}
|
||||
|
||||
override fun onMapLoaded() {
|
||||
super.onMapLoaded()
|
||||
getMapUIController()?.setAllGesturesEnabled(false)
|
||||
}
|
||||
|
||||
fun showOpenAndCloseDoor() {
|
||||
val noviceGuidanceFragment = noviceGuidanceFragment?.get()
|
||||
noviceGuidanceFragment?.dismissAllowingStateLoss()
|
||||
|
||||
if (m1CarUserNoOrderFragment?.get() == null) {
|
||||
m1CarUserNoOrderFragment = WeakReference(M1CarUserNoOrderFragment.newInstance())
|
||||
}
|
||||
val m1CarUserNoOrderFragment = m1CarUserNoOrderFragment?.get()
|
||||
M1CarUserNoOrderFragment.showOpenAndCloseDoor(
|
||||
childFragmentManager,
|
||||
parentFragmentManager,
|
||||
m1CarUserNoOrderFragment
|
||||
)
|
||||
}
|
||||
|
||||
fun showOvermapPoint(){
|
||||
omvOverMap.setDebugMode(true)
|
||||
}
|
||||
|
||||
fun showNoviceGuidanceFragment() {
|
||||
if (noviceGuidanceFragment?.get() == null) {
|
||||
noviceGuidanceFragment = WeakReference(NoviceGuidanceFragment.newInstance())
|
||||
}
|
||||
val noviceGuidanceFragmentWeak = noviceGuidanceFragment?.get()
|
||||
NoviceGuidanceFragment.showNoviceGuidance(
|
||||
childFragmentManager,
|
||||
parentFragmentManager,
|
||||
noviceGuidanceFragmentWeak
|
||||
)
|
||||
LockManager.setLock(LockManager.LockStatus.UNLOCK)
|
||||
}
|
||||
|
||||
fun closeOpenAndCloseDoor() {
|
||||
val bpFunctionGroup = m1CarUserNoOrderFragment?.get()
|
||||
bpFunctionGroup?.let {
|
||||
bpFunctionGroup.dismissAllowingStateLoss()
|
||||
}
|
||||
UiThreadHandler.postDelayed({
|
||||
cleanEndStation()
|
||||
}, 2_000)
|
||||
}
|
||||
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
fun changeOverview(eventLineSites: EventLineSites) {
|
||||
CallerLogger.d(M_BUS_P + TAG, "eventLineSites:${eventLineSites.lineInfo?.lineId}")
|
||||
if (eventLineSites.clear) {
|
||||
omvOverMap?.clearSitePolyline()
|
||||
omvOverMap?.clearSiteMarkers()
|
||||
omvOverMap?.clearSiteNameViews()
|
||||
mPresenter?.drawEndStation()
|
||||
} else {
|
||||
if (eventLineSites.lineInfo == null) {//更新站点
|
||||
mPresenter?.drawStationInfo(eventLineSites.sites!!)
|
||||
} else {// 更新轨迹和站点
|
||||
mPresenter?.getLineTrajectory(eventLineSites.lineInfo, eventLineSites.sites!!)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fun drawOverMapViewStation(
|
||||
stationsList: MutableList<SiteMarkerBean>,
|
||||
siteMarkers: List<SiteMarkerBean>?
|
||||
) {
|
||||
omvOverMap?.clearSiteMarkers()
|
||||
omvOverMap?.clearSiteNameViews()
|
||||
omvOverMap?.drawSiteMarkers(stationsList)
|
||||
omvOverMap?.drawSiteNameViews(siteMarkers)
|
||||
}
|
||||
|
||||
fun drawOverMapViewTrajectory(coordinates: List<LatLng>) {
|
||||
omvOverMap?.drawSitePolyline(coordinates, lineTrajectory)
|
||||
}
|
||||
|
||||
fun includePoint(coordinates: List<LatLng>){
|
||||
omvOverMap?.includeSitePointsAndUpdateCamera(coordinates)
|
||||
}
|
||||
|
||||
companion object {
|
||||
const val TAG = "BusPassengerRouteFragment"
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,77 +0,0 @@
|
||||
|
||||
package com.mogo.och.facade.route;
|
||||
|
||||
import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_BUS;
|
||||
import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI;
|
||||
|
||||
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.data.config.FunctionBuildConfig;
|
||||
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.AppIdentityModeUtils;
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger;
|
||||
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.TaxiLoginStatusEnum;
|
||||
import com.mogo.och.facade.constant.FacadeConst;
|
||||
import com.mogo.och.taxi.ui.TaxiFragment;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
/**
|
||||
* 网约车小巴业务实现入口
|
||||
*
|
||||
* @author tongchenfei
|
||||
*/
|
||||
@Route(path = FacadeConst.DRIVER_PATH)
|
||||
public class FacadeDriverProvider implements IMoGoFunctionProvider, ILoginCallback {
|
||||
|
||||
private static final String TAG = "FacadeDriverProvider";
|
||||
|
||||
private int containerId;
|
||||
private FragmentActivity activity;
|
||||
|
||||
@Override
|
||||
public void init(Context context) {
|
||||
LoginStatusManager.INSTANCE.addListener(TAG,this);
|
||||
}
|
||||
|
||||
@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;
|
||||
}
|
||||
|
||||
private void showFragment() {
|
||||
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void onDestroy() {
|
||||
//若不调用finish, 设置中打开关闭UITouch,会造成och fragment 重叠
|
||||
if (activity == null) return;
|
||||
activity.finish();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onStatusChange(TaxiLoginStatusEnum currentStatus) {
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,111 @@
|
||||
package com.mogo.och.facade.route
|
||||
|
||||
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.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.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
|
||||
*/
|
||||
@Route(path = FacadeConst.DRIVER_PATH)
|
||||
class FacadeDriverProvider : IMoGoFunctionProvider, ILoginCallback {
|
||||
private var containerId = 0
|
||||
private var activity: FragmentActivity? = null
|
||||
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()
|
||||
// }
|
||||
val fragment = SimpleFragment()
|
||||
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()
|
||||
}
|
||||
|
||||
}
|
||||
11
OCH/facade/src/main/res/layout/taxi_login_view_1.xml
Normal file
11
OCH/facade/src/main/res/layout/taxi_login_view_1.xml
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:id="@+id/cl_main"
|
||||
android:orientation="vertical"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:background="@drawable/icon_car_red"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
</LinearLayout>
|
||||
@@ -1,6 +1,7 @@
|
||||
apply plugin: 'com.android.library'
|
||||
apply plugin: 'kotlin-android'
|
||||
apply plugin: 'kotlin-android-extensions'
|
||||
apply plugin: 'kotlin-kapt'
|
||||
|
||||
android {
|
||||
compileSdkVersion rootProject.ext.android.compileSdkVersion
|
||||
@@ -15,9 +16,10 @@ android {
|
||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||
consumerProguardFiles "consumer-rules.pro"
|
||||
|
||||
javaCompileOptions {
|
||||
annotationProcessorOptions {
|
||||
arguments = [AROUTER_MODULE_NAME: project.getName()]
|
||||
kapt {
|
||||
useBuildCache = false
|
||||
arguments {
|
||||
arg("AROUTER_MODULE_NAME", project.getName())
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -49,7 +51,7 @@ dependencies {
|
||||
implementation rootProject.ext.dependencies.kotlinstdlib
|
||||
implementation rootProject.ext.dependencies.androidxappcompat
|
||||
implementation rootProject.ext.dependencies.arouter
|
||||
annotationProcessor rootProject.ext.dependencies.aroutercompiler
|
||||
kapt rootProject.ext.dependencies.aroutercompiler
|
||||
implementation rootProject.ext.dependencies.androidxconstraintlayout
|
||||
implementation rootProject.ext.dependencies.amapnavi3dmap
|
||||
|
||||
|
||||
@@ -1,86 +0,0 @@
|
||||
|
||||
package com.mogo.och.bus;
|
||||
|
||||
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;
|
||||
import com.mogo.och.bus.constant.BusConst;
|
||||
import com.mogo.och.bus.fragment.ShuttleFragment;
|
||||
import com.mogo.och.common.module.biz.constant.OchCommonConst;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
/**
|
||||
* 网约车小巴业务实现入口
|
||||
*
|
||||
* @author tongchenfei
|
||||
*/
|
||||
@Route(path = OchCommonConst.SHUTTLE_DRIVER)
|
||||
public class BusProvider implements IMoGoFunctionProvider {
|
||||
|
||||
private static final String TAG = "BusProvider";
|
||||
|
||||
private ShuttleFragment busFragment;
|
||||
private int containerId;
|
||||
private FragmentActivity activity;
|
||||
|
||||
@Override
|
||||
public void init(Context context) {
|
||||
}
|
||||
|
||||
private void showFragment() {
|
||||
FragmentManager supportFragmentManager = activity.getSupportFragmentManager();
|
||||
if (busFragment == null) {
|
||||
CallerLogger.d(TAG, "准备add fragment======");
|
||||
Fragment fragmentByTag = supportFragmentManager.findFragmentByTag(ShuttleFragment.TAG);
|
||||
if (fragmentByTag instanceof ShuttleFragment) {
|
||||
busFragment = (ShuttleFragment) fragmentByTag;
|
||||
} else {
|
||||
busFragment = new ShuttleFragment();
|
||||
}
|
||||
if(!busFragment.isAdded()) {
|
||||
supportFragmentManager.beginTransaction().add(containerId, busFragment, ShuttleFragment.TAG).commitAllowingStateLoss();
|
||||
}
|
||||
return;
|
||||
}
|
||||
CallerLogger.d(TAG, "准备show fragment");
|
||||
supportFragmentManager.beginTransaction().show(busFragment).commitAllowingStateLoss();
|
||||
}
|
||||
|
||||
private void hideFragment() {
|
||||
if (busFragment != null) {
|
||||
CallerLogger.d(TAG, "准备hide fragment");
|
||||
activity.getSupportFragmentManager().beginTransaction().hide(busFragment).commitAllowingStateLoss();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@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();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
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.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
|
||||
|
||||
/**
|
||||
* 网约车小巴业务实现入口
|
||||
*
|
||||
* @author tongchenfei
|
||||
*/
|
||||
@Route(path = OchCommonConst.SHUTTLE_DRIVER)
|
||||
class BusProvider : CommonService {
|
||||
private var busFragment: ShuttleFragment? = null
|
||||
override fun init(context: Context) {
|
||||
d(SceneConstant.M_TAXI + TAG, "init")
|
||||
busFragment = ShuttleFragment()
|
||||
}
|
||||
|
||||
override fun getFragment(): Fragment {
|
||||
return busFragment!!
|
||||
}
|
||||
|
||||
companion object {
|
||||
private const val TAG = "BusProvider"
|
||||
}
|
||||
}
|
||||
@@ -11,8 +11,10 @@ import com.mogo.eagle.core.function.call.setting.CallerMoGoUiSettingManager.step
|
||||
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.wigets.media.MediaPlayerActivity
|
||||
import com.mogo.och.shuttle.passenger.model.TicketModel
|
||||
@@ -25,80 +27,25 @@ import com.mogo.och.shuttle.passenger.ui.PM2BaseFragment
|
||||
* Created on 2022/3/29
|
||||
*/
|
||||
@Route(path = OchCommonConst.SHUTTLE_PASSENGER)
|
||||
class MogoOCHShuttlePassenger : IMoGoFunctionProvider {
|
||||
private var mActivity: FragmentActivity? = null
|
||||
private var mContainerId = 0
|
||||
private var mPM2Fragment: Fragment? = null
|
||||
|
||||
override fun createCoverage(activity: FragmentActivity?, containerId: Int?): Fragment? {
|
||||
mActivity = activity
|
||||
mContainerId = containerId!!
|
||||
showFragment()
|
||||
if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) {
|
||||
mActivity?.let {
|
||||
MultiDisplayUtils.startActWithSecond(it, MediaPlayerActivity::class.java)
|
||||
}
|
||||
}
|
||||
TicketModel.load()
|
||||
return null
|
||||
}
|
||||
|
||||
override val functionName: String
|
||||
get() = "och-bus-passenger-m2"
|
||||
|
||||
override fun onDestroy() {
|
||||
// 若不调用finish, 设置中打开关闭UITouch,会造成och fragment 重叠
|
||||
mActivity?.finish()
|
||||
}
|
||||
class MogoOCHShuttlePassenger : CommonService {
|
||||
private lateinit var mPM2Fragment: Fragment
|
||||
|
||||
override fun init(context: Context) {
|
||||
}
|
||||
|
||||
/**
|
||||
* 进入鹰眼模式,设置手势缩放地图失效
|
||||
*/
|
||||
private fun stepIntoVrMode() {
|
||||
d(SceneConstant.M_TAXI_P + TAG, "进入vr模式")
|
||||
stepInDayMode() //白天模式 状态栏字体颜色变黑
|
||||
}
|
||||
|
||||
private fun showFragment() {
|
||||
val supportFragmentManager: FragmentManager? = mActivity?.supportFragmentManager
|
||||
if (mPM2Fragment == null) {
|
||||
|
||||
d(SceneConstant.M_TAXI_P + TAG, "准备add fragment======")
|
||||
|
||||
val fragmentByTag: Fragment? = supportFragmentManager?.findFragmentByTag(PM2BaseFragment.TAG)
|
||||
|
||||
mPM2Fragment = if (fragmentByTag is Fragment){
|
||||
fragmentByTag
|
||||
}else{
|
||||
if (AppIdentityModeUtils.isM2(FunctionBuildConfig.appIdentityMode)) {
|
||||
PM2BaseFragment()
|
||||
}else if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) {
|
||||
BusPassengerRouteFragment()
|
||||
}else{
|
||||
BusPassengerRouteFragment()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (!mPM2Fragment?.isAdded!!){
|
||||
supportFragmentManager?.beginTransaction()
|
||||
?.add(mContainerId, mPM2Fragment!!, PM2BaseFragment.TAG)?.commitAllowingStateLoss()
|
||||
}
|
||||
return
|
||||
TicketModel.load()
|
||||
mPM2Fragment = if (AppIdentityModeUtils.isM2(FunctionBuildConfig.appIdentityMode)) {
|
||||
PM2BaseFragment()
|
||||
}else if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) {
|
||||
BusPassengerRouteFragment()
|
||||
}else{
|
||||
BusPassengerRouteFragment()
|
||||
}
|
||||
d(SceneConstant.M_TAXI_P + TAG, "准备show fragment")
|
||||
supportFragmentManager?.beginTransaction()?.show(mPM2Fragment!!)
|
||||
?.commitAllowingStateLoss()
|
||||
}
|
||||
|
||||
private fun hideFragment() {
|
||||
if (mPM2Fragment != null) {
|
||||
mActivity?.supportFragmentManager?.beginTransaction()?.hide(mPM2Fragment!!)
|
||||
?.commitAllowingStateLoss()
|
||||
override fun getFragment(): Fragment {
|
||||
if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) {
|
||||
MultiDisplayUtils.startActWithSecond(ActivityUtils.getTopActivity(), MediaPlayerActivity::class.java)
|
||||
}
|
||||
return mPM2Fragment
|
||||
}
|
||||
|
||||
companion object {
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
apply plugin: 'com.android.library'
|
||||
apply plugin: 'kotlin-android'
|
||||
apply plugin: 'kotlin-android-extensions'
|
||||
apply plugin: 'kotlin-kapt'
|
||||
|
||||
android {
|
||||
compileSdkVersion rootProject.ext.android.compileSdkVersion
|
||||
@@ -15,9 +16,10 @@ android {
|
||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||
consumerProguardFiles "consumer-rules.pro"
|
||||
|
||||
javaCompileOptions {
|
||||
annotationProcessorOptions {
|
||||
arguments = [AROUTER_MODULE_NAME: project.getName()]
|
||||
kapt {
|
||||
useBuildCache = false
|
||||
arguments {
|
||||
arg("AROUTER_MODULE_NAME", project.getName())
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -50,7 +52,7 @@ dependencies {
|
||||
implementation rootProject.ext.dependencies.arouter
|
||||
implementation rootProject.ext.dependencies.androidxrecyclerview
|
||||
implementation rootProject.ext.dependencies.material
|
||||
annotationProcessor rootProject.ext.dependencies.aroutercompiler
|
||||
kapt rootProject.ext.dependencies.aroutercompiler
|
||||
implementation rootProject.ext.dependencies.rxandroid
|
||||
implementation rootProject.ext.dependencies.androidxconstraintlayout
|
||||
implementation rootProject.ext.dependencies.amapnavi3dmap
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
@@ -1,101 +0,0 @@
|
||||
package com.mogo.och.taxi;
|
||||
|
||||
import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI;
|
||||
|
||||
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.call.setting.CallerMoGoUiSettingManager;
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger;
|
||||
import com.mogo.och.common.module.biz.constant.OchCommonConst;
|
||||
import com.mogo.och.taxi.constant.TaxiConst;
|
||||
import com.mogo.och.taxi.ui.TaxiFragment;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
public
|
||||
/**
|
||||
* @author congtaowang
|
||||
* @since 2021/1/15
|
||||
* <p>
|
||||
* 网约车-出租车
|
||||
*/
|
||||
@Route( path = OchCommonConst.TAXI_DRIVER )
|
||||
class TaxiProvider implements IMogoOCH {
|
||||
|
||||
private static final String TAG = "TaxiProvider";
|
||||
private TaxiFragment ochTaxiFragment;
|
||||
private FragmentActivity mActivity;
|
||||
private int mContainerId;
|
||||
@Override
|
||||
public void init( Context context ) {
|
||||
CallerLogger.d( M_TAXI + TAG, "init" );
|
||||
}
|
||||
|
||||
/**
|
||||
* 进入鹰眼模式,设置手势缩放地图失效
|
||||
*/
|
||||
private void stepIntoVrMode() {
|
||||
CallerLogger.d( M_TAXI + TAG, "进入vr模式" );
|
||||
CallerMoGoUiSettingManager.INSTANCE.stepInNightMode();//夜间模式 状态栏字体颜色变黑
|
||||
}
|
||||
|
||||
private void showFragment() {
|
||||
FragmentManager supportFragmentManager = mActivity.getSupportFragmentManager();
|
||||
if (ochTaxiFragment == null) {
|
||||
CallerLogger.d(M_TAXI + TAG, "准备add fragment======");
|
||||
Fragment fragmentByTag = supportFragmentManager.findFragmentByTag(TaxiFragment.TAG);
|
||||
if (fragmentByTag instanceof TaxiFragment){
|
||||
ochTaxiFragment = (TaxiFragment) fragmentByTag;
|
||||
}else {
|
||||
ochTaxiFragment = new TaxiFragment();
|
||||
}
|
||||
|
||||
if (!ochTaxiFragment.isAdded()){
|
||||
supportFragmentManager.beginTransaction().add(mContainerId, ochTaxiFragment
|
||||
,TaxiFragment.TAG).commitAllowingStateLoss();
|
||||
}
|
||||
return;
|
||||
}
|
||||
CallerLogger.d(M_TAXI + TAG, "准备show fragment");
|
||||
supportFragmentManager.beginTransaction().show(ochTaxiFragment).commitAllowingStateLoss();
|
||||
}
|
||||
|
||||
private void hideFragment(){
|
||||
if (ochTaxiFragment != null){
|
||||
mActivity.getSupportFragmentManager().beginTransaction().hide(ochTaxiFragment).commitAllowingStateLoss();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void createCoverage(FragmentActivity activity, int containerId) {
|
||||
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public String getFunctionName() {
|
||||
return TAG;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public Fragment createCoverage(@Nullable FragmentActivity fragmentActivity, @Nullable Integer integer) {
|
||||
this.mActivity = fragmentActivity;
|
||||
this.mContainerId = integer;
|
||||
showFragment();
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDestroy() {
|
||||
//若不调用finish, 设置中打开关闭UITouch,会造成och fragment 重叠
|
||||
if (mActivity == null) return;
|
||||
mActivity.finish();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
package com.mogo.och.taxi
|
||||
|
||||
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.scene.SceneConstant
|
||||
import com.mogo.och.common.module.biz.constant.OchCommonConst
|
||||
import com.mogo.och.common.module.biz.provider.CommonService
|
||||
import com.mogo.och.taxi.ui.TaxiFragment
|
||||
|
||||
/**
|
||||
* @author congtaowang
|
||||
* @since 2021/1/15
|
||||
*
|
||||
*
|
||||
* 网约车-出租车
|
||||
*/
|
||||
@Route(path = OchCommonConst.TAXI_DRIVER)
|
||||
class TaxiProvider : CommonService {
|
||||
|
||||
private val TAG = "TaxiProvider"
|
||||
private lateinit var ochTaxiFragment: TaxiFragment
|
||||
override fun init(context: Context) {
|
||||
d(SceneConstant.M_TAXI + TAG, "init")
|
||||
ochTaxiFragment = TaxiFragment()
|
||||
}
|
||||
|
||||
override fun getFragment(): Fragment {
|
||||
return ochTaxiFragment
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,7 @@
|
||||
apply plugin: 'com.android.library'
|
||||
apply plugin: 'kotlin-android'
|
||||
apply plugin: 'kotlin-android-extensions'
|
||||
apply plugin: 'kotlin-kapt'
|
||||
|
||||
android {
|
||||
compileSdkVersion rootProject.ext.android.compileSdkVersion
|
||||
@@ -15,9 +16,10 @@ android {
|
||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||
consumerProguardFiles "consumer-rules.pro"
|
||||
|
||||
javaCompileOptions {
|
||||
annotationProcessorOptions {
|
||||
arguments = [AROUTER_MODULE_NAME: project.getName()]
|
||||
kapt {
|
||||
useBuildCache = false
|
||||
arguments {
|
||||
arg("AROUTER_MODULE_NAME", project.getName())
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -51,7 +53,7 @@ dependencies {
|
||||
implementation rootProject.ext.dependencies.androidxrecyclerview
|
||||
implementation rootProject.ext.dependencies.material
|
||||
implementation rootProject.ext.dependencies.flexbox
|
||||
annotationProcessor rootProject.ext.dependencies.aroutercompiler
|
||||
kapt rootProject.ext.dependencies.aroutercompiler
|
||||
implementation rootProject.ext.dependencies.rxandroid
|
||||
implementation rootProject.ext.dependencies.androidxconstraintlayout
|
||||
implementation rootProject.ext.dependencies.amapnavi3dmap
|
||||
|
||||
@@ -1,87 +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.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.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
|
||||
* <p>
|
||||
* 网约车-出租车-乘客端
|
||||
*/
|
||||
@Route(path = OchCommonConst.TAXI_PASSENGER)
|
||||
public class MogoOCHTaxiPassenger implements IMoGoFunctionProvider {
|
||||
|
||||
private static final String TAG = "MogoOCHTaxiPassenger";
|
||||
private TaxiPassengerBaseFragment ochTaxiPassengerFragment;
|
||||
private FragmentActivity mActivity;
|
||||
private int mContainerId;
|
||||
|
||||
@Override
|
||||
public void init(Context context) {
|
||||
CallerLogger.d(M_TAXI_P + TAG, "init");
|
||||
}
|
||||
|
||||
private void showFragment() {
|
||||
FragmentManager supportFragmentManager = mActivity.getSupportFragmentManager();
|
||||
if (ochTaxiPassengerFragment == null) {
|
||||
CallerLogger.d(M_TAXI_P + TAG, "准备add fragment======");
|
||||
Fragment fragmentByTag = supportFragmentManager.findFragmentByTag(TaxiPassengerBaseFragment.TAG);
|
||||
if (fragmentByTag instanceof TaxiPassengerBaseFragment){
|
||||
ochTaxiPassengerFragment = (TaxiPassengerBaseFragment) fragmentByTag;
|
||||
}else {
|
||||
ochTaxiPassengerFragment = new TaxiPassengerBaseFragment();
|
||||
}
|
||||
if (!ochTaxiPassengerFragment.isAdded()){
|
||||
supportFragmentManager.beginTransaction().add(mContainerId, ochTaxiPassengerFragment
|
||||
,TaxiPassengerBaseFragment.TAG).commitAllowingStateLoss();
|
||||
}
|
||||
return;
|
||||
}
|
||||
CallerLogger.d(M_TAXI_P + TAG, "准备show fragment");
|
||||
supportFragmentManager.beginTransaction().show(ochTaxiPassengerFragment).commitAllowingStateLoss();
|
||||
}
|
||||
|
||||
private void hideFragment() {
|
||||
if (ochTaxiPassengerFragment != null) {
|
||||
mActivity.getSupportFragmentManager().beginTransaction().hide(ochTaxiPassengerFragment).commitAllowingStateLoss();
|
||||
}
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public String getFunctionName() {
|
||||
return TAG;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public Fragment createCoverage(@Nullable FragmentActivity fragmentActivity, @Nullable Integer integer) {
|
||||
this.mActivity = fragmentActivity;
|
||||
this.mContainerId = integer;
|
||||
showFragment();
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDestroy() {
|
||||
// 若不调用finish, 设置中打开关闭UITouch,会造成och fragment 重叠
|
||||
if (mActivity == null) return;
|
||||
mActivity.finish();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
package com.mogo.och.taxi.passenger
|
||||
|
||||
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.scene.SceneConstant
|
||||
import com.mogo.och.common.module.biz.constant.OchCommonConst
|
||||
import com.mogo.och.common.module.biz.provider.CommonService
|
||||
import com.mogo.och.taxi.passenger.ui.TaxiPassengerBaseFragment
|
||||
|
||||
/**
|
||||
* @author congtaowang
|
||||
* @since 2021/1/15
|
||||
*
|
||||
*
|
||||
* 网约车-出租车-乘客端
|
||||
*/
|
||||
@Route(path = OchCommonConst.TAXI_PASSENGER)
|
||||
class MogoOCHTaxiPassenger : CommonService {
|
||||
|
||||
private lateinit var ochTaxiPassengerFragment: TaxiPassengerBaseFragment
|
||||
private val TAG = "MogoOCHTaxiPassenger"
|
||||
override fun init(context: Context) {
|
||||
d(SceneConstant.M_TAXI_P + TAG, "init")
|
||||
ochTaxiPassengerFragment = TaxiPassengerBaseFragment()
|
||||
}
|
||||
|
||||
override fun getFragment(): Fragment {
|
||||
return ochTaxiPassengerFragment
|
||||
}
|
||||
|
||||
}
|
||||
@@ -8,7 +8,7 @@ import com.mogo.eagle.core.function.call.setting.CallerMoGoUiSettingManager.step
|
||||
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.taxi.constant.TaxiUnmannedConst
|
||||
import com.mogo.och.common.module.biz.provider.CommonService
|
||||
import com.mogo.och.taxi.ui.base.TaxiFragment
|
||||
|
||||
/**
|
||||
@@ -19,68 +19,16 @@ import com.mogo.och.taxi.ui.base.TaxiFragment
|
||||
* 网约车-出租车
|
||||
*/
|
||||
@Route(path = OchCommonConst.TAXI_UNMANNED_DRIVER)
|
||||
class TaxiUnmannedProvider : IMogoOCH {
|
||||
private var ochTaxiFragment: TaxiFragment? = null
|
||||
private var mActivity: FragmentActivity? = null
|
||||
private var mContainerId = 0
|
||||
class TaxiUnmannedProvider : CommonService {
|
||||
private lateinit var ochTaxiFragment: TaxiFragment
|
||||
private val TAG = "TaxiProvider"
|
||||
|
||||
override fun init(context: Context) {
|
||||
d(SceneConstant.M_TAXI + TAG, "init")
|
||||
ochTaxiFragment = TaxiFragment()
|
||||
}
|
||||
|
||||
/**
|
||||
* 进入鹰眼模式,设置手势缩放地图失效
|
||||
*/
|
||||
private fun stepIntoVrMode() {
|
||||
d(SceneConstant.M_TAXI + TAG, "进入vr模式")
|
||||
stepInNightMode() //夜间模式 状态栏字体颜色变黑
|
||||
}
|
||||
|
||||
private fun showFragment() {
|
||||
val supportFragmentManager = mActivity!!.supportFragmentManager
|
||||
if (ochTaxiFragment == null) {
|
||||
d(SceneConstant.M_TAXI + TAG, "准备add fragment======")
|
||||
val fragmentByTag = supportFragmentManager.findFragmentByTag(TaxiFragment.TAG)
|
||||
ochTaxiFragment = if (fragmentByTag is TaxiFragment) {
|
||||
fragmentByTag
|
||||
} else {
|
||||
TaxiFragment()
|
||||
}
|
||||
if (!ochTaxiFragment!!.isAdded) {
|
||||
supportFragmentManager.beginTransaction().add(
|
||||
mContainerId, ochTaxiFragment!!, TaxiFragment.TAG
|
||||
).commitAllowingStateLoss()
|
||||
}
|
||||
return
|
||||
}
|
||||
d(SceneConstant.M_TAXI + TAG, "准备show fragment")
|
||||
supportFragmentManager.beginTransaction().show(ochTaxiFragment!!).commitAllowingStateLoss()
|
||||
}
|
||||
|
||||
private fun hideFragment() {
|
||||
if (ochTaxiFragment != null) {
|
||||
mActivity!!.supportFragmentManager.beginTransaction().hide(ochTaxiFragment!!)
|
||||
.commitAllowingStateLoss()
|
||||
}
|
||||
}
|
||||
|
||||
override fun createCoverage(activity: FragmentActivity, containerId: Int) {}
|
||||
override val functionName: String
|
||||
get() = "TaxiUnmannedProvider"
|
||||
|
||||
override fun createCoverage(fragmentActivity: FragmentActivity?, integer: Int?): Fragment? {
|
||||
mActivity = fragmentActivity
|
||||
mContainerId = integer!!
|
||||
showFragment()
|
||||
return null
|
||||
}
|
||||
|
||||
override fun onDestroy() {
|
||||
//若不调用finish, 设置中打开关闭UITouch,会造成och fragment 重叠
|
||||
if (mActivity == null) return
|
||||
mActivity!!.finish()
|
||||
}
|
||||
|
||||
companion object {
|
||||
private const val TAG = "TaxiProvider"
|
||||
override fun getFragment(): Fragment {
|
||||
return ochTaxiFragment
|
||||
}
|
||||
}
|
||||
@@ -4,6 +4,7 @@ import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAX
|
||||
|
||||
import android.content.Context;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.fragment.app.FragmentActivity;
|
||||
import androidx.fragment.app.FragmentManager;
|
||||
@@ -12,6 +13,7 @@ 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;
|
||||
|
||||
@@ -25,63 +27,20 @@ import org.jetbrains.annotations.Nullable;
|
||||
* 网约车-出租车-乘客端
|
||||
*/
|
||||
@Route(path = OchCommonConst.TAXI_UNMANNED_PASSENGER)
|
||||
public class MogoOCHTaxiPassenger implements IMoGoFunctionProvider {
|
||||
public class MogoOCHTaxiPassenger implements CommonService {
|
||||
|
||||
private static final String TAG = "MogoOCHTaxiPassenger";
|
||||
private TaxiPassengerBaseFragment ochTaxiPassengerFragment;
|
||||
private FragmentActivity mActivity;
|
||||
private int mContainerId;
|
||||
|
||||
@Override
|
||||
public void init(Context context) {
|
||||
CallerLogger.d(M_TAXI_P + TAG, "init");
|
||||
ochTaxiPassengerFragment = new TaxiPassengerBaseFragment();
|
||||
}
|
||||
|
||||
private void showFragment() {
|
||||
FragmentManager supportFragmentManager = mActivity.getSupportFragmentManager();
|
||||
if (ochTaxiPassengerFragment == null) {
|
||||
CallerLogger.d(M_TAXI_P + TAG, "准备add fragment======");
|
||||
Fragment fragmentByTag = supportFragmentManager.findFragmentByTag(TaxiPassengerBaseFragment.TAG);
|
||||
if (fragmentByTag instanceof TaxiPassengerBaseFragment){
|
||||
ochTaxiPassengerFragment = (TaxiPassengerBaseFragment) fragmentByTag;
|
||||
}else {
|
||||
ochTaxiPassengerFragment = new TaxiPassengerBaseFragment();
|
||||
}
|
||||
if (!ochTaxiPassengerFragment.isAdded()){
|
||||
supportFragmentManager.beginTransaction().add(mContainerId, ochTaxiPassengerFragment
|
||||
,TaxiPassengerBaseFragment.TAG).commitAllowingStateLoss();
|
||||
}
|
||||
return;
|
||||
}
|
||||
CallerLogger.d(M_TAXI_P + TAG, "准备show fragment");
|
||||
supportFragmentManager.beginTransaction().show(ochTaxiPassengerFragment).commitAllowingStateLoss();
|
||||
}
|
||||
|
||||
private void hideFragment() {
|
||||
if (ochTaxiPassengerFragment != null) {
|
||||
mActivity.getSupportFragmentManager().beginTransaction().hide(ochTaxiPassengerFragment).commitAllowingStateLoss();
|
||||
}
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@NonNull
|
||||
@Override
|
||||
public String getFunctionName() {
|
||||
return TAG;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public Fragment createCoverage(@Nullable FragmentActivity fragmentActivity, @Nullable Integer integer) {
|
||||
this.mActivity = fragmentActivity;
|
||||
this.mContainerId = integer;
|
||||
showFragment();
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDestroy() {
|
||||
// 若不调用finish, 设置中打开关闭UITouch,会造成och fragment 重叠
|
||||
if (mActivity == null) return;
|
||||
mActivity.finish();
|
||||
public Fragment getFragment() {
|
||||
return ochTaxiPassengerFragment;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,19 +4,19 @@ if (!isAndroidTest) {
|
||||
apply plugin: 'bytex'
|
||||
|
||||
ByteX {
|
||||
enable true
|
||||
enable false
|
||||
enableInDebug true
|
||||
}
|
||||
|
||||
apply from: rootProject.file('gradle/bytex/bytex_config.gradle')
|
||||
apply from: rootProject.file('gradle/bytex/bytex_router.gradle')
|
||||
apply from: rootProject.file('gradle/bytex/bytex_log_chain.gradle')
|
||||
apply from: rootProject.file('gradle/bytex/bytex_sticky_service.gradle')
|
||||
apply from: rootProject.file('gradle/bytex/bytex_thread_opt.gradle')
|
||||
apply from: rootProject.file('gradle/bytex/bytex_lancetx.gradle')
|
||||
apply from: rootProject.file('gradle/bytex/bytex_apm.gradle')
|
||||
apply from: rootProject.file('gradle/bytex/bytex_systrace.gradle')
|
||||
apply from: rootProject.file('gradle/bytex/bytex_matrix.gradle')
|
||||
// apply from: rootProject.file('gradle/bytex/bytex_config.gradle')
|
||||
// apply from: rootProject.file('gradle/bytex/bytex_router.gradle')
|
||||
// apply from: rootProject.file('gradle/bytex/bytex_log_chain.gradle')
|
||||
// apply from: rootProject.file('gradle/bytex/bytex_sticky_service.gradle')
|
||||
// apply from: rootProject.file('gradle/bytex/bytex_thread_opt.gradle')
|
||||
// apply from: rootProject.file('gradle/bytex/bytex_lancetx.gradle')
|
||||
// apply from: rootProject.file('gradle/bytex/bytex_apm.gradle')
|
||||
// apply from: rootProject.file('gradle/bytex/bytex_systrace.gradle')
|
||||
// apply from: rootProject.file('gradle/bytex/bytex_matrix.gradle')
|
||||
// apply from: rootProject.file('gradle/bytex/bytex_handler_proxy.gradle')
|
||||
// apply from: rootProject.file('gradle/bytex/bytex_btrace.gradle')
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user