diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/BusProvider.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/BusProvider.java index 998d7b5d4b..bdadb8b6cf 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/BusProvider.java +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/BusProvider.java @@ -14,6 +14,7 @@ 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; @@ -23,7 +24,7 @@ import org.jetbrains.annotations.Nullable; * * @author tongchenfei */ -@Route(path = BusConst.PATH) +@Route(path = OchCommonConst.BUS_DRIVER) public class BusProvider implements IMogoOCH { private static final String TAG = "BusProvider"; diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/fragment/BusFragment.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/fragment/BusFragment.java index e015160501..070a0f9998 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/fragment/BusFragment.java +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/fragment/BusFragment.java @@ -32,13 +32,10 @@ import com.mogo.map.overlay.point.Point; import com.mogo.och.bus.R; import com.mogo.och.bus.bean.BusStationBean; import com.mogo.och.bus.constant.BusConst; -import com.mogo.och.bus.net.login.LoginBusImpl; import com.mogo.och.bus.presenter.BusPresenter; import com.mogo.och.bus.ui.BusStationCommonItem; import com.mogo.och.bus.ui.BusSwitchLineActivity; import com.mogo.och.bus.view.SlidePanelView; -import com.mogo.och.common.module.biz.constant.OchCommonConst; -import com.mogo.och.common.module.biz.provider.LoginService; import com.mogo.och.common.module.utils.BlinkAnimationUtil; import com.mogo.och.common.module.utils.OCHThreadPoolManager; import com.mogo.och.common.module.utils.QRUtilsKt; @@ -75,8 +72,6 @@ public class BusFragment extends BaseBusTabFragment private BusStationCommonItem secondStationItem; private BusStationCommonItem thirdStationItem; - private LoginService loginService; - @Override public String getTagName() { return "BusFragment"; @@ -85,17 +80,11 @@ public class BusFragment extends BaseBusTabFragment @Override public void onActivityCreated(@Nullable Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); - loginService = (LoginService) ARouter.getInstance().build(OchCommonConst.LOGINSERVICE).navigation(); - if (loginService != null) { - loginService.registerFragment(this, getPresenter(), new LoginBusImpl()); - } } @Override public void onDestroyView() { super.onDestroyView(); - loginService.unRegisterFragment(); - loginService = null; } @Override diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/model/OrderModel.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/model/OrderModel.java index fabef08b13..92badfc5c9 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/model/OrderModel.java +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/model/OrderModel.java @@ -59,8 +59,8 @@ import com.mogo.och.common.module.bean.dpmsg.AppConnectMsg; import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager; import com.mogo.och.common.module.biz.common.socketmessage.data.OCHOperationalMessage; import com.mogo.och.common.module.biz.constant.OchCommonConst; +import com.mogo.och.common.module.biz.login.LoginStatusManager; import com.mogo.och.common.module.biz.network.OchCommonServiceCallback; -import com.mogo.och.common.module.biz.provider.LoginService; import com.mogo.och.common.module.callback.OchAdasStartFailureCallback; import com.mogo.och.common.module.manager.AbnormalFactorsLoopManager; import com.mogo.och.common.module.manager.autopilotmanager.OCHAdasAbilityManager; @@ -123,8 +123,6 @@ public class OrderModel { //0: 代表没有启动过 1代表是启动第一次,当>=1 代表是重试 每次到站/路线结束清空置为0 private volatile int firstStartAutopilot = 0; - private LoginService loginService; - private final Handler handler = new Handler(msg -> { if (msg.what == MSG_QUERY_BUS_STATION) { queryBusRoutes(); @@ -149,7 +147,6 @@ public class OrderModel { public void init() { mContext = AbsMogoApplication.getApp(); - loginService = (LoginService) ARouter.getInstance().build(OchCommonConst.LOGINSERVICE).navigation(); // 定位监听 CallerChassisLocationGCJ02ListenerManager.INSTANCE.addListener(TAG,5, mMapLocationListener); @@ -315,7 +312,6 @@ public class OrderModel { CallerChassisLocationGCJ02ListenerManager.INSTANCE.removeListener(TAG); TrajectoryManager.INSTANCE.addTrajectoryListListenerr(TAG,null); - loginService = null; OCHAdasAbilityManager.getInstance().setAdasStartFailureCallback(null); @@ -1172,7 +1168,7 @@ public class OrderModel { public void logout() { double mLatitude = CallerChassisLocationGCJ02ListenerManager.INSTANCE.getChassisLocationGCJ02().getLatitude(); double mLongitude =CallerChassisLocationGCJ02ListenerManager.INSTANCE.getChassisLocationGCJ02().getLongitude(); - loginService.loginOut(mLatitude, mLongitude); + LoginStatusManager.loginOut(mLatitude, mLongitude); } public void triggerStartServiceEvent(boolean isRestart, boolean send) { diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/net/login/LoginBusImpl.kt b/OCH/bus/driver/src/main/java/com/mogo/och/bus/net/login/LoginBusImpl.kt deleted file mode 100644 index 0f3c2d294f..0000000000 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/net/login/LoginBusImpl.kt +++ /dev/null @@ -1,47 +0,0 @@ -package com.mogo.och.bus.net.login - -import android.content.Context -import com.mogo.eagle.core.data.BaseData -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean -import com.mogo.och.common.module.biz.bean.TaxiLoginReqBean -import com.mogo.och.common.module.biz.bean.TaxiLoginRespBean -import com.mogo.och.common.module.biz.bean.TaxiLogoutReqBean -import com.mogo.och.common.module.biz.network.LoginDefaultManage -import com.mogo.och.common.module.biz.network.OchCommonServiceCallback - -class LoginBusImpl: LoginDefaultManage { - - override fun getPhoneCode( - context: Context, phone: String?, - callback: OchCommonServiceCallback? - ) { - OchCommonServiceManager.getPhoneCode(context,phone,callback) - } - - override fun gotoLoginBycode( - context: Context, - phone: String?, - code: String?, - location4Login: TaxiLoginReqBean.Location4Login?, - callback: OchCommonServiceCallback? - ) { - OchCommonServiceManager.gotoLoginBycode(context,phone,code,location4Login,callback) - } - - override fun logout( - context: Context, - location4Login: TaxiLogoutReqBean.Location4Login?, - callback: OchCommonServiceCallback? - ) { - OchCommonServiceManager.logout(context,location4Login,callback) - } - - override fun queryDriverServiceStatus( - context: Context, - callback: OchCommonServiceCallback? - ) { - OchCommonServiceManager.queryDriverServiceStatus(context,callback) - } - - -} \ No newline at end of file diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/net/login/OchCommonServiceManager.kt b/OCH/bus/driver/src/main/java/com/mogo/och/bus/net/login/OchCommonServiceManager.kt deleted file mode 100644 index 55e1c742a0..0000000000 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/net/login/OchCommonServiceManager.kt +++ /dev/null @@ -1,150 +0,0 @@ -package com.mogo.och.bus.net.login - -import android.content.Context -import com.mogo.cloud.passport.MoGoAiCloudClientConfig -import com.mogo.och.common.module.biz.bean.TaxiLoginSmsReqBean -import com.mogo.och.common.module.biz.bean.TaxiLoginReqBean -import com.mogo.och.common.module.biz.bean.TaxiLoginRespBean -import com.mogo.och.common.module.biz.bean.TaxiLogoutReqBean -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean -import com.mogo.och.common.module.biz.constant.OchCommonConst -import com.mogo.cloud.passport.MoGoAiCloudClient -import com.mogo.commons.debug.DebugConfig -import com.mogo.eagle.core.data.BaseData -import com.mogo.eagle.core.network.MoGoRetrofitFactory -import com.mogo.commons.storage.SharedPrefsMgr -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 - -/** - * Created by pangfan on 2021/8/19 - */ -object OchCommonServiceManager { - - private const val TAG = "OchCommonServiceManager" - - private val mLoginServiceApi: OchLoginServiceApi = - MoGoRetrofitFactory.getInstance(OchCommonConst.getBaseUrl()).create( - OchLoginServiceApi::class.java - ) - - private val mLoginSaasServiceApi: OchSAASLoginServiceApi = - MoGoRetrofitFactory.getInstance(OchCommonConst.getBaseUrl()).create( - OchSAASLoginServiceApi::class.java - ) - - /** - * 获取手机验证码 - * @param context - * @param callback - */ - @JvmStatic - fun getPhoneCode( - context: Context, phone: String?, - callback: OchCommonServiceCallback? - ) { - if (DebugConfig.getProjectFlavor().contains("saas")){ - mLoginSaasServiceApi.getPhoneCode( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - TaxiLoginSmsReqBean(phone) - ).transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "getPhoneCode")) - }else{ - mLoginServiceApi.getPhoneCode( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - TaxiLoginSmsReqBean(phone) - ).transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "getPhoneCode")) - } - } - - /** - * 通过验证码登录 - * @param context - * @param callback - */ - @JvmStatic - fun gotoLoginBycode( - context: Context, phone: String?, code: String?, - location4Login: TaxiLoginReqBean.Location4Login?, - callback: OchCommonServiceCallback? - ) { - val sn = SharedPrefsMgr.getInstance().sn - - if (DebugConfig.getProjectFlavor().contains("saas")){ - mLoginSaasServiceApi.gotoLoginBycode4Bus( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - TaxiLoginReqBean(phone, code, sn, location4Login) - ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "gotoLoginBycode")) - }else{ - mLoginServiceApi.gotoLoginBycode4Bus( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - TaxiLoginReqBean(phone, code, sn, location4Login) - ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "gotoLoginBycode")) - } - } - - /** - * 登出 - */ - @JvmStatic - fun logout( - context: Context, - location4Login: TaxiLogoutReqBean.Location4Login?, - callback: OchCommonServiceCallback? - ) { - if (DebugConfig.getProjectFlavor().contains("saas")){ - mLoginSaasServiceApi.logout4Bus( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - TaxiLogoutReqBean(SharedPrefsMgr.getInstance().sn, location4Login) - ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "logout")) - }else{ - mLoginServiceApi.logout4Bus( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - TaxiLogoutReqBean(SharedPrefsMgr.getInstance().sn, location4Login) - ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "logout")) - } - } - - /** - * 接单状态和登录状态查询 - * - * @param context - * @param callback - */ - @JvmStatic - fun queryDriverServiceStatus( - context: Context, - callback: OchCommonServiceCallback? - ) { - if (SharedPrefsMgr.getInstance().token.isEmpty()) { - callback?.onFail(OchCommonConst.WAIT_TAKEN, "等待令牌中请稍等") - MoGoAiCloudClient.getInstance().refreshToken() - return - } - if (DebugConfig.getProjectFlavor().contains("saas")){ - mLoginSaasServiceApi.queryDriverServiceStatusAndLoginStatus( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - SharedPrefsMgr.getInstance().sn - ).transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverServiceStatus")) - }else{ - mLoginServiceApi.queryDriverServiceStatusAndLoginStatus( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - SharedPrefsMgr.getInstance().sn - ).transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverServiceStatus")) - } - - } - -} \ No newline at end of file diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/net/login/OchSAASLoginServiceApi.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/net/login/OchSAASLoginServiceApi.java deleted file mode 100644 index 847d766400..0000000000 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/net/login/OchSAASLoginServiceApi.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.mogo.och.bus.net.login; - -import com.mogo.eagle.core.data.BaseData; -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean; -import com.mogo.och.common.module.biz.bean.TaxiLoginReqBean; -import com.mogo.och.common.module.biz.bean.TaxiLoginRespBean; -import com.mogo.och.common.module.biz.bean.TaxiLoginSmsReqBean; -import com.mogo.och.common.module.biz.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 OchSAASLoginServiceApi { - /** - * 获取手机验证码 - * - * @return - */ - @Headers({"Content-type:application/json;charset=UTF-8"}) - @POST("/och-bus-cabin/api/sms/v1/driver/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-bus-cabin/cab/flow/v1/bus/driver/startOperation") - Observable gotoLoginBycode4Bus(@Header("appId") String appId - , @Header("ticket") String ticket, @Body TaxiLoginReqBean data); - - /** - * 登出接口 - */ - @Headers({"Content-type:application/json;charset=UTF-8"}) - @POST("/och-bus-cabin/cab/flow/v1/bus/driver/endOperation") - Observable logout4Bus(@Header("appId") String appId, @Header("ticket") String ticket, - @Body TaxiLogoutReqBean data); - - /** - * 接单状态和登录状态查询 出租车司机端、小巴车司机端、小巴车乘客端 - * - * @param sn - * @return - */ - @Headers({"Content-type:application/json;charset=UTF-8"}) - @GET("/och-bus-cabin/api/business/v1/loginStatus") - Observable queryDriverServiceStatusAndLoginStatus(@Header("appId") String appId - , @Header("ticket") String ticket, @Query("sn") String sn); - -} diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/presenter/BusPresenter.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/presenter/BusPresenter.java index 10deb32cd8..d3dea0521d 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/presenter/BusPresenter.java +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/presenter/BusPresenter.java @@ -27,9 +27,8 @@ import com.mogo.och.bus.fragment.BusFragment; import com.mogo.och.bus.model.OrderModel; import com.mogo.och.bus.util.BusTrajectoryManager; import com.mogo.och.bus.util.BusVoiceManager; -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean; -import com.mogo.och.common.module.biz.callback.ILoginCallback; -import com.mogo.och.common.module.biz.constant.LoginStatusManager; +import com.mogo.och.common.module.biz.login.ILoginCallback; +import com.mogo.och.common.module.biz.login.LoginStatusManager; import com.mogo.och.common.module.manager.autopilotmanager.OCHAdasAbilityManager; import com.mogo.och.common.module.manager.autopilotmanager.autopilot.ArrivedStation; import com.mogo.och.common.module.manager.autopilotmanager.autopilot.IOchAutopilotStatusListener; @@ -266,7 +265,7 @@ public class BusPresenter extends Presenter } @Override - public void loginSuccess(DriverStatusQueryRespBean data) { + public void loginSuccess() { CallerLogger.d(M_BUS + TAG, " loginStatus =" + LoginStatusManager.isLogin()); if(LoginStatusManager.isLogin()){ OrderModel.getInstance().startOrStopOrderLoop(true); @@ -281,11 +280,6 @@ public class BusPresenter extends Presenter } } - @Override - public void loginFail(boolean isLogin) { - - } - @Override public void playPassenger(WriteOffPassenger passenger) { int passengerNum = passenger.passengerSize; diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/util/BusTrajectoryManager.java b/OCH/bus/driver/src/main/java/com/mogo/och/bus/util/BusTrajectoryManager.java index 613fb2d050..0da507fedf 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/util/BusTrajectoryManager.java +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/util/BusTrajectoryManager.java @@ -9,9 +9,8 @@ import com.mogo.eagle.core.utilcode.util.GsonUtils; import com.mogo.och.bus.bean.BusRoutesResult; import com.mogo.och.bus.constant.BusConst; import com.mogo.och.bus.model.OrderModel; -import com.mogo.och.common.module.biz.constant.LoginStatusManager; +import com.mogo.och.common.module.biz.login.LoginStatusManager; import com.mogo.och.common.module.manager.orderlogmanager.OchChainLogManager; -import com.zhidao.socket.utils.LoginStatusUtil; import java.util.concurrent.TimeUnit; 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/MogoOCHBusPassenger.kt index 12a869c9aa..e99b9981b9 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/MogoOCHBusPassenger.kt @@ -15,6 +15,7 @@ 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.wigets.media.MediaPlayerActivity /** @@ -22,7 +23,7 @@ import com.mogo.och.common.module.wigets.media.MediaPlayerActivity * * Created on 2022/3/29 */ -@Route(path = BusPassengerConst.PATH) +@Route(path = OchCommonConst.BUS_PASSENGER) class MogoOCHBusPassenger : IMoGoFunctionProvider { private var mActivity: FragmentActivity? = null private var mContainerId = 0 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/CharterProvider.kt index 6c915054a7..a224c40be6 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/CharterProvider.kt @@ -8,13 +8,14 @@ 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.och.common.module.biz.constant.OchCommonConst /** * @author: wangmingjun * @date: 2023/2/22 */ -@Route(path = CharterConst.PATH) +@Route(path = OchCommonConst.CHARTER_DRIVER) class CharterProvider: IMoGoFunctionProvider{ private var mActivity: FragmentActivity? = null diff --git a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/fragment/DriverM1Fragment.kt b/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/fragment/DriverM1Fragment.kt index 350aa1d261..d4b30d1d6b 100644 --- a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/fragment/DriverM1Fragment.kt +++ b/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/fragment/DriverM1Fragment.kt @@ -5,13 +5,11 @@ import android.os.Bundle import android.os.CountDownTimer import android.view.View.GONE import android.view.View.VISIBLE -import com.alibaba.android.arouter.launcher.ARouter import com.magic.mogo.och.charter.R import com.magic.mogo.och.charter.base.CharterBaseFragment import com.magic.mogo.och.charter.bean.QueryCurrentOrderResponse import com.magic.mogo.och.charter.bean.QueryCurrentOrderResponse.Result.Companion.ARRIVING import com.magic.mogo.och.charter.constant.CharterConst.Companion.LOOP_PERIOD_60S -import com.magic.mogo.och.charter.net.login.LoginDriverM1Impl import com.magic.mogo.och.charter.presenter.DriverM1Presenter import com.magic.mogo.och.charter.view.SlidePanelView import com.mogo.commons.storage.SharedPrefsMgr @@ -19,8 +17,6 @@ import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.temp.EventLogout 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.LoginService import com.mogo.och.common.module.utils.DateTimeUtil import com.mogo.och.common.module.utils.createQRCodeWithPicture import com.mogo.och.common.module.wigets.BindQRCodeDialog @@ -47,7 +43,6 @@ import kotlin.math.roundToInt */ class DriverM1Fragment : CharterBaseFragment(), SlidePanelView.OnSlidePanelMoveToEndListener{ - private var loginService: LoginService? = null private var ochCommitDialog: OCHCommitDialog? = null var countDownTimer: CountDownTimer? = null @@ -57,11 +52,6 @@ class DriverM1Fragment : CharterBaseFragment=1 代表是重试 每次到站/路线结束清空置为0 - private var loginService: LoginService? = null companion object { val TAG = DriverM1Model::class.java.simpleName @@ -147,8 +146,6 @@ class DriverM1Model { //网络监听 IntentManager.getInstance().registerIntentListener(ConnectivityManager.CONNECTIVITY_ACTION, mNetWorkIntentListener) - loginService = ARouter.getInstance().build(OchCommonConst.LOGINSERVICE).navigation() as LoginService - //2022.1.28 // 调用Disposable.dispose() 时候会出现InterruptedException 导致出现崩溃 // The exception could not be delivered to the consumer because it has already canceled/disposed @@ -172,7 +169,6 @@ class DriverM1Model { // 注销定位监听 CallerChassisLocationGCJ02ListenerManager.removeListener(TAG) - loginService = null OCHAdasAbilityManager.getInstance().setAdasStartFailureCallback(null) releaseSocketMessageListener( OCHSocketMessageManager.msgMonitorType @@ -350,7 +346,7 @@ class DriverM1Model { d(SceneConstant.M_TAXI + TAG, "onIntentReceived = %s", intentStr) if (ConnectivityManager.CONNECTIVITY_ACTION == intentStr) { if (NetworkUtils.isConnected(mContext)) { - loginService!!.queryLoginStatusByNet() + LoginStatusManager.queryLoginStatusByNet() } } } @@ -517,7 +513,7 @@ class DriverM1Model { // 登出 fun logout() { - loginService!!.loginOut(mLatitude, mLongitude) + LoginStatusManager.loginOut(mLatitude, mLongitude) } fun triggerStartServiceEvent(isRestart: Boolean, send: Boolean) { diff --git a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/net/login/LoginDriverM1Impl.kt b/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/net/login/LoginDriverM1Impl.kt deleted file mode 100644 index d6374c2c73..0000000000 --- a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/net/login/LoginDriverM1Impl.kt +++ /dev/null @@ -1,47 +0,0 @@ -package com.magic.mogo.och.charter.net.login - -import android.content.Context -import com.mogo.eagle.core.data.BaseData -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean -import com.mogo.och.common.module.biz.bean.TaxiLoginReqBean -import com.mogo.och.common.module.biz.bean.TaxiLoginRespBean -import com.mogo.och.common.module.biz.bean.TaxiLogoutReqBean -import com.mogo.och.common.module.biz.network.LoginDefaultManage -import com.mogo.och.common.module.biz.network.OchCommonServiceCallback - -class LoginDriverM1Impl: LoginDefaultManage { - - override fun getPhoneCode( - context: Context, phone: String?, - callback: OchCommonServiceCallback? - ) { - OchCommonServiceManager.getPhoneCode(context,phone,callback) - } - - override fun gotoLoginBycode( - context: Context, - phone: String?, - code: String?, - location4Login: TaxiLoginReqBean.Location4Login?, - callback: OchCommonServiceCallback? - ) { - OchCommonServiceManager.gotoLoginBycode(context,phone,code,location4Login,callback) - } - - override fun logout( - context: Context, - location4Login: TaxiLogoutReqBean.Location4Login?, - callback: OchCommonServiceCallback? - ) { - OchCommonServiceManager.logout(context,location4Login,callback) - } - - override fun queryDriverServiceStatus( - context: Context, - callback: OchCommonServiceCallback? - ) { - OchCommonServiceManager.queryDriverServiceStatus(context,callback) - } - - -} \ No newline at end of file diff --git a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/net/login/OchLoginServiceApi.java b/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/net/login/OchLoginServiceApi.java deleted file mode 100644 index 1f2cd8b5cb..0000000000 --- a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/net/login/OchLoginServiceApi.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.magic.mogo.och.charter.net.login; - -import com.mogo.eagle.core.data.BaseData; -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean; -import com.mogo.och.common.module.biz.bean.TaxiLoginReqBean; -import com.mogo.och.common.module.biz.bean.TaxiLoginRespBean; -import com.mogo.och.common.module.biz.bean.TaxiLoginSmsReqBean; -import com.mogo.och.common.module.biz.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 OchLoginServiceApi { - /** - * 获取手机验证码 - * - * @return - */ - @Headers({"Content-type:application/json;charset=UTF-8"}) - @POST("/och-rental-cabin/api/sms/v1/driver/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-rental-cabin/api/flow/v1/driver/startOperation") - Observable gotoLoginBycode4Bus(@Header("appId") String appId - , @Header("ticket") String ticket, @Body TaxiLoginReqBean data); - - /** - * 登出接口 - */ - @Headers({"Content-type:application/json;charset=UTF-8"}) - @POST("/och-rental-cabin/api/flow/v1/driver/endOperation") - Observable logout4Bus(@Header("appId") String appId, @Header("ticket") String ticket, - @Body TaxiLogoutReqBean data); - - /** - * 接单状态和登录状态查询 出租车司机端、小巴车司机端、小巴车乘客端 - * - * @param sn - * @return - */ - @Headers({"Content-type:application/json;charset=UTF-8"}) - @GET("/och-rental-cabin/api/business/v1/driver/loginStatus") - Observable queryDriverServiceStatusAndLoginStatus(@Header("appId") String appId - , @Header("ticket") String ticket, @Query("sn") String sn); - -} diff --git a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/presenter/DriverM1Presenter.kt b/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/presenter/DriverM1Presenter.kt index 46f911e6fc..5cbb619bcf 100644 --- a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/presenter/DriverM1Presenter.kt +++ b/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/presenter/DriverM1Presenter.kt @@ -5,23 +5,19 @@ import com.magic.mogo.och.charter.R import com.magic.mogo.och.charter.bean.QueryCurrentOrderResponse import com.magic.mogo.och.charter.callback.ChangeDestCallback import com.magic.mogo.och.charter.callback.DriverM1OrderCallback -import com.magic.mogo.och.charter.callback.IDriverM1ControllerStatusCallback import com.magic.mogo.och.charter.fragment.DriverM1Fragment import com.magic.mogo.och.charter.manager.CharterTrajectoryManager import com.magic.mogo.och.charter.model.DriverM1Model import com.mogo.commons.AbsMogoApplication import com.mogo.commons.mvp.Presenter -import com.mogo.eagle.core.data.map.MogoLocation import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager 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.DateTimeUtils -import com.mogo.eagle.core.utilcode.util.ThreadUtils -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean -import com.mogo.och.common.module.biz.callback.ILoginCallback +import com.mogo.och.common.module.biz.login.ILoginCallback import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager.OPERATION_ROAD_SIDE_TYPE -import com.mogo.och.common.module.biz.constant.LoginStatusManager.isLogin +import com.mogo.och.common.module.biz.login.LoginStatusManager.isLogin import com.mogo.och.common.module.manager.autopilotmanager.OCHAdasAbilityManager import com.mogo.och.common.module.manager.beautifymode.BeautifyManager import com.mogo.och.common.module.manager.stopsidemanager.OCHPlanningActionsCallback @@ -36,7 +32,8 @@ import mogo_msg.MogoReportMsg * @date: 2023/2/22 */ class DriverM1Presenter(view: DriverM1Fragment?) : - Presenter(view),ILoginCallback, DriverM1OrderCallback, ChangeDestCallback, + Presenter(view), + ILoginCallback, DriverM1OrderCallback, ChangeDestCallback, IMoGoAutopilotStatusListener, OCHPlanningActionsCallback{ companion object{ @@ -70,7 +67,7 @@ class DriverM1Presenter(view: DriverM1Fragment?) : DriverM1Model.get().release() } - override fun loginSuccess(data: DriverStatusQueryRespBean?) { + override fun loginSuccess() { d(SceneConstant.M_BUS + TAG, " loginStatus =" + isLogin()) if(isLogin()){ // 查询服务状态 @@ -81,7 +78,7 @@ class DriverM1Presenter(view: DriverM1Fragment?) : } } - override fun loginFail(isLogin: Boolean) { + override fun loginFail() { DriverM1Model.get().stopQueryCurrentOrder() } 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 index 33007cf843..a815f39727 100644 --- 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 @@ -10,13 +10,14 @@ 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 /** * 网约车-Bus-乘客端 * * Created on 2022/3/29 */ -@Route(path = CharterPassengerConst.PATH) +@Route(path = OchCommonConst.CHARTER_PASSENGER) class MogoOCHBusPassenger : IMoGoFunctionProvider { private var mActivity: FragmentActivity? = null private var mContainerId = 0 diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/model/CharterPassengerModel.kt b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/model/CharterPassengerModel.kt index 8d27ffc4ea..7695645f93 100644 --- a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/model/CharterPassengerModel.kt +++ b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/model/CharterPassengerModel.kt @@ -37,9 +37,10 @@ import com.mogo.och.charter.passenger.utils.VoiceFocusManager import com.mogo.och.common.module.bean.dpmsg.BaseDPMsg import com.mogo.och.common.module.bean.dpmsg.ChangeDestMsg import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager -import com.mogo.och.common.module.biz.constant.LoginStatusManager +import com.mogo.och.common.module.biz.login.LoginStatusManager import com.mogo.och.common.module.biz.constant.OchCommonConst -import com.mogo.och.common.module.biz.constant.TaxiLoginStatusEnum +import com.mogo.och.common.module.biz.login.ILoginCallback +import com.mogo.och.common.module.biz.login.TaxiLoginStatusEnum import com.mogo.och.common.module.biz.network.OchCommonServiceCallback import com.mogo.och.common.module.manager.CharterSendTripInfoManager import com.mogo.och.common.module.manager.CharterSendTripInfoManager.LEAVE_STATION @@ -49,7 +50,6 @@ import com.mogo.och.common.module.manager.orderlogmanager.OchChainLogManager import com.mogo.och.common.module.utils.CoordinateCalculateRouteUtil import com.mogo.och.common.module.utils.DateTimeUtil import com.mogo.och.common.module.utils.PinYinUtil -import com.mogo.och.common.module.utils.RxUtils import com.mogo.och.common.module.voice.VoiceNotice import io.reactivex.Observable import io.reactivex.disposables.Disposable @@ -163,27 +163,26 @@ object CharterPassengerModel { * 启动轮询查询司机登录状态 */ private fun listenerLoginStatus() { - LoginStatusManager.setControllerStatusCallback(TAG, - object : LoginStatusManager.ILoginStatusChangeListener { - override fun onStatusChange(currentStatus: TaxiLoginStatusEnum) { - if (LoginStatusManager.isLogin()) { - // 1、打开视频播放、 - // 2 、打开空调暖风机灯设置页面 - // 3、车控页面、 - // 4、打开选择线路页面 - BizLoopManager.removeLoopFunction(TAGLOGIN) - d(M_BUS_P + TAG, "结束登录状态轮询") - // 启动订单轮 - startOrderLoop() - } else { - BizLoopManager.setLoopFunction( - TAGLOGIN, - LoopInfo(3, ::queryLoginStatus) - ) - d(M_BUS_P + TAG, "启动登录状态轮询") - } + LoginStatusManager.addListener(TAG,object : ILoginCallback{ + override fun onStatusChange(currentStatus: TaxiLoginStatusEnum?) { + if (LoginStatusManager.isLogin()) { + // 1、打开视频播放、 + // 2 、打开空调暖风机灯设置页面 + // 3、车控页面、 + // 4、打开选择线路页面 + BizLoopManager.removeLoopFunction(TAGLOGIN) + d(M_BUS_P + TAG, "结束登录状态轮询") + // 启动订单轮 + startOrderLoop() + } else { + BizLoopManager.setLoopFunction( + TAGLOGIN, + LoopInfo(3, ::queryLoginStatus) + ) + d(M_BUS_P + TAG, "启动登录状态轮询") } - }) + } + }) } // endregion @@ -291,26 +290,7 @@ object CharterPassengerModel { * 查询车辆登录状态、车牌、司机手机号、司机sn */ fun queryLoginStatus() { - BusPassengerServiceManager.queryDriverOperationStatus( - mContext, object : OchCommonServiceCallback { - override fun onSuccess(data: M1DriverLoginStatusResponse?) { - if (data?.data == null) return - LoginStatusManager.setLoginStatus(data.data.driverStatus) - } - - override fun onFail(code: Int, msg: String) { - RxUtils.createSubscribe { - queryLoginStatus() - } - } - - override fun onError() { - super.onError() - RxUtils.createSubscribe { - queryLoginStatus() - } - } - }) + LoginStatusManager.queryLoginStatusByNet() } //监听网络变化,避免启动机器时无网导致无法更新订单信息 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 95bb001ece..524318a88a 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 @@ -32,7 +32,7 @@ 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.constant.LoginStatusManager +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 diff --git a/OCH/common/biz/.gitignore b/OCH/common/biz/.gitignore new file mode 100644 index 0000000000..42afabfd2a --- /dev/null +++ b/OCH/common/biz/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/OCH/common/biz/build.gradle b/OCH/common/biz/build.gradle new file mode 100644 index 0000000000..82d96c1975 --- /dev/null +++ b/OCH/common/biz/build.gradle @@ -0,0 +1,63 @@ +plugins { + id 'com.android.library' + id 'kotlin-kapt' + id 'org.jetbrains.kotlin.android' + id 'kotlin-android-extensions' +} + +android { + compileSdkVersion rootProject.ext.android.compileSdkVersion + defaultConfig { + minSdkVersion rootProject.ext.android.minSdkVersion + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + consumerProguardFiles "consumer-rules.pro" + + kapt { + useBuildCache = false + arguments { + arg("AROUTER_MODULE_NAME", project.getName()) + } + } + } + + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' + } + } + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } + + lintOptions { + abortOnError false + } + kotlinOptions { + jvmTarget = '1.8' + } +} + +dependencies { + + implementation fileTree(dir: "libs", include: ["*.jar"]) + implementation rootProject.ext.dependencies.kotlinstdlib + implementation rootProject.ext.dependencies.androidxccorektx + implementation rootProject.ext.dependencies.androidxappcompat + implementation rootProject.ext.dependencies.material + implementation rootProject.ext.dependencies.rxandroid + implementation project(':OCH:common:common') + + implementation rootProject.ext.dependencies.arouter + kapt rootProject.ext.dependencies.aroutercompiler + + if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { + api rootProject.ext.dependencies.mogocommons + api rootProject.ext.dependencies.mogoutils + }else { + api project(":foudations:mogo-commons") + api project(":core:mogo-core-utils") + } + +} \ No newline at end of file diff --git a/OCH/common/biz/consumer-rules.pro b/OCH/common/biz/consumer-rules.pro new file mode 100644 index 0000000000..e69de29bb2 diff --git a/OCH/common/biz/proguard-rules.pro b/OCH/common/biz/proguard-rules.pro new file mode 100644 index 0000000000..481bb43481 --- /dev/null +++ b/OCH/common/biz/proguard-rules.pro @@ -0,0 +1,21 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile \ No newline at end of file diff --git a/OCH/common/biz/src/main/AndroidManifest.xml b/OCH/common/biz/src/main/AndroidManifest.xml new file mode 100644 index 0000000000..455cb3ef2a --- /dev/null +++ b/OCH/common/biz/src/main/AndroidManifest.xml @@ -0,0 +1,5 @@ + + + + \ 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 new file mode 100644 index 0000000000..1b7b82cbdf --- /dev/null +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/LoginProvider.kt @@ -0,0 +1,96 @@ +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.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 + +/** + * 网约车小巴业务实现入口 + * + * @author tongchenfei + */ +@Route(path = OchCommonConst.BIZ_LOGIN) +class LoginProvider : LoginService { + private lateinit var loginFragment: Fragment + + private var uiModel = true + + private var loginStatus: TaxiLoginStatusEnum = TaxiLoginStatusEnum.None + private var loginInfo: LoginInfo?=null + override fun init(context: Context) { + loginFragment = Fragment() + } + + override fun getFragment(): Fragment { + return loginFragment + } + + override fun setLoginStatus(status: Int) { + when (status) { + 0 -> { + setLoginStatus(TaxiLoginStatusEnum.Logout) + } + 1 -> { + setLoginStatus(TaxiLoginStatusEnum.Login) + } + else -> { + setLoginStatus(TaxiLoginStatusEnum.None) + } + } + } + + override fun queryLoginStatusByNet() { + OchCommonLoginStatusDefaultModel.queryCarStatus() + } + override fun showUiModel(show: Boolean) { + uiModel = show; + } + override fun loginOut(mLatitude: Double, mLongitude: Double) { + OchCommonLoginStatusDefaultModel.logout(mLatitude, mLongitude) + } + + override fun setLoginInfo(loginInfo: LoginInfo) { + this.loginInfo = loginInfo + } + + override fun getLoginInfo(): LoginInfo? { + return loginInfo + } + + override fun getPurpose(): TaxiDriverRoleEnum { + return TaxiDriverRoleEnum.valueOf(loginInfo?.purpose) + } + + override fun isLogin(): Boolean { + return loginStatus == TaxiLoginStatusEnum.Login + } + + override fun getLoginStatus(): TaxiLoginStatusEnum { + return loginStatus + } + + + override fun setLoginStatus(loginStatus: TaxiLoginStatusEnum) { + 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/bean/DriverStatusQueryRespBean.java b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/bean/DriverStatusQueryRespBean.java new file mode 100644 index 0000000000..4e6173b0ed --- /dev/null +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/bean/DriverStatusQueryRespBean.java @@ -0,0 +1,14 @@ +package com.mogo.och.biz.login.bean; + +import com.mogo.eagle.core.data.BaseData; +import com.mogo.och.common.module.biz.login.LoginInfo; + +/** + * Created by pangfan on 2021/8/19 + * + * 状态查询返回数据结构 + */ +public class DriverStatusQueryRespBean extends BaseData { + public LoginInfo data; + +} diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLoginReqBean.java b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/bean/TaxiLoginReqBean.java similarity index 93% rename from OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLoginReqBean.java rename to OCH/common/biz/src/main/java/com/mogo/och/biz/login/bean/TaxiLoginReqBean.java index 0af1851615..3cb357abb2 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLoginReqBean.java +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/bean/TaxiLoginReqBean.java @@ -1,4 +1,4 @@ -package com.mogo.och.common.module.biz.bean; +package com.mogo.och.biz.login.bean; /** * Created by yangyakun on 2021/8/19 diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLoginRespBean.java b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/bean/TaxiLoginRespBean.java similarity index 86% rename from OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLoginRespBean.java rename to OCH/common/biz/src/main/java/com/mogo/och/biz/login/bean/TaxiLoginRespBean.java index 9cda2a96c6..c48cb9dc7e 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLoginRespBean.java +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/bean/TaxiLoginRespBean.java @@ -1,4 +1,4 @@ -package com.mogo.och.common.module.biz.bean; +package com.mogo.och.biz.login.bean; import com.mogo.eagle.core.data.BaseData; diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLoginSmsReqBean.java b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/bean/TaxiLoginSmsReqBean.java similarity index 81% rename from OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLoginSmsReqBean.java rename to OCH/common/biz/src/main/java/com/mogo/och/biz/login/bean/TaxiLoginSmsReqBean.java index 3c246bc153..ef2a6232d2 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLoginSmsReqBean.java +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/bean/TaxiLoginSmsReqBean.java @@ -1,4 +1,4 @@ -package com.mogo.och.common.module.biz.bean; +package com.mogo.och.biz.login.bean; /** * Created by yyk on 2021/8/19 diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLogoutReqBean.java b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/bean/TaxiLogoutReqBean.java similarity index 91% rename from OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLogoutReqBean.java rename to OCH/common/biz/src/main/java/com/mogo/och/biz/login/bean/TaxiLogoutReqBean.java index c9f95f263b..e152ea2ce9 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/TaxiLogoutReqBean.java +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/bean/TaxiLogoutReqBean.java @@ -1,4 +1,4 @@ -package com.mogo.och.common.module.biz.bean; +package com.mogo.och.biz.login.bean; /** * Created by yyk on 2021/8/19 diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/callback/ILoginCallback.java b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/callback/ILoginCallback.java similarity index 52% rename from OCH/common/common/src/main/java/com/mogo/och/common/module/biz/callback/ILoginCallback.java rename to OCH/common/biz/src/main/java/com/mogo/och/biz/login/callback/ILoginCallback.java index 481a2cd75b..7da0cd0161 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/callback/ILoginCallback.java +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/callback/ILoginCallback.java @@ -1,6 +1,6 @@ -package com.mogo.och.common.module.biz.callback; +package com.mogo.och.biz.login.callback; -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean; +import com.mogo.och.biz.login.bean.DriverStatusQueryRespBean; public interface ILoginCallback { void loginSuccess(DriverStatusQueryRespBean data); diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/callback/ITaxiLoginCallback.java b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/callback/ITaxiLoginCallback.java similarity index 85% rename from OCH/common/common/src/main/java/com/mogo/och/common/module/biz/callback/ITaxiLoginCallback.java rename to OCH/common/biz/src/main/java/com/mogo/och/biz/login/callback/ITaxiLoginCallback.java index 5cbca0d853..bedbc2580e 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/callback/ITaxiLoginCallback.java +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/callback/ITaxiLoginCallback.java @@ -1,4 +1,4 @@ -package com.mogo.och.common.module.biz.callback; +package com.mogo.och.biz.login.callback; /** * Created on 2021/9/8 diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginModel.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/OchCommonLoginModel.kt similarity index 89% rename from OCH/common/common/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginModel.kt rename to OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/OchCommonLoginModel.kt index ebf531dbfb..b694c786bd 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginModel.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/OchCommonLoginModel.kt @@ -1,4 +1,4 @@ -package com.mogo.och.common.module.biz.model +package com.mogo.och.biz.login.model import android.annotation.SuppressLint import android.content.Context @@ -6,14 +6,14 @@ import com.mogo.eagle.core.data.BaseData import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.util.NetworkUtils -import com.mogo.och.common.module.R -import com.mogo.och.common.module.biz.bean.TaxiLoginReqBean -import com.mogo.och.common.module.biz.bean.TaxiLoginRespBean -import com.mogo.och.common.module.biz.callback.ITaxiLoginCallback -import com.mogo.och.common.module.biz.constant.LoginStatusManager -import com.mogo.och.common.module.biz.constant.TaxiLoginStatusEnum +import com.mogo.och.biz.R +import com.mogo.och.biz.login.bean.TaxiLoginReqBean +import com.mogo.och.biz.login.bean.TaxiLoginRespBean +import com.mogo.och.biz.login.callback.ITaxiLoginCallback +import com.mogo.och.biz.login.net.OchCommonServiceManager +import com.mogo.och.common.module.biz.login.LoginStatusManager +import com.mogo.och.common.module.biz.login.TaxiLoginStatusEnum import com.mogo.och.common.module.biz.network.OchCommonServiceCallback -import com.mogo.och.common.module.biz.network.OchCommonServiceManager import com.mogo.och.common.module.utils.ToastUtilsOch import com.mogo.och.common.module.wigets.toast.ToastCharterUtils @@ -45,7 +45,7 @@ object OchCommonLoginModel { } fun setiTaxiLoginCallback(iTaxiLoginCallback: ITaxiLoginCallback?) { - this.iTaxiLoginCallback = iTaxiLoginCallback + OchCommonLoginModel.iTaxiLoginCallback = iTaxiLoginCallback } fun release() { diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginStatusDefaultModel.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/OchCommonLoginStatusDefaultModel.kt similarity index 69% rename from OCH/common/common/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginStatusDefaultModel.kt rename to OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/OchCommonLoginStatusDefaultModel.kt index afaf7bbf28..4891451a8f 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginStatusDefaultModel.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/OchCommonLoginStatusDefaultModel.kt @@ -1,16 +1,15 @@ -package com.mogo.och.common.module.biz.model +package com.mogo.och.biz.login.model import android.annotation.SuppressLint 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 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.bean.DriverStatusQueryRespBean -import com.mogo.och.common.module.biz.callback.ILoginCallback -import com.mogo.och.common.module.biz.callback.ILoginViewCallback -import com.mogo.och.common.module.biz.constant.LoginStatusManager +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 @@ -22,18 +21,15 @@ object OchCommonLoginStatusDefaultModel : OchCommonLoginStatusModel() { var loginCallback: ILoginCallback? = null - var loginViewCallback: ILoginViewCallback? = null override fun loginSuccess(data: DriverStatusQueryRespBean?) { CallerLogger.d(SceneConstant.M_TAXI + TAG, "loginSuccess:${LoginStatusManager.isLogin()}") if (LoginStatusManager.isLogin()) { SharedPrefsMgr.getInstance().putString("och_account", data?.data?.phone) - loginViewCallback?.hideLoginDialogFragment() } else { SharedPrefsMgr.getInstance().putString("och_account", "") - loginViewCallback?.showLoginDialogFragment() } - loginCallback?.loginSuccess(data) + loginCallback?.loginSuccess() data?.data?.driverStatus?.let { updateLoginLocalStatus(it) } @@ -45,15 +41,10 @@ object OchCommonLoginStatusDefaultModel : OchCommonLoginStatusModel() { GsonUtils.toJson(loginCacheStatus)) } + override fun loginFail(isLogin: Boolean) { CallerLogger.d(SceneConstant.M_TAXI + TAG, "loginFail:$isLogin") - if (isLogin) { - loginViewCallback?.hideLoginDialogFragment() - } else { - loginViewCallback?.showLoginDialogFragment() - } - loginCallback?.loginFail(isLogin) - + loginCallback?.loginFail() updateLoginLocalStatus(0) } diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginStatusModel.java b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/OchCommonLoginStatusModel.java similarity index 92% rename from OCH/common/common/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginStatusModel.java rename to OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/OchCommonLoginStatusModel.java index 9d23783a11..09b343f1aa 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/model/OchCommonLoginStatusModel.java +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/model/OchCommonLoginStatusModel.java @@ -1,4 +1,4 @@ -package com.mogo.och.common.module.biz.model; +package com.mogo.och.biz.login.model; import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI; @@ -8,14 +8,13 @@ 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; -import com.mogo.eagle.core.utilcode.util.ToastUtils; -import com.mogo.och.common.module.R; -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean; -import com.mogo.och.common.module.biz.bean.TaxiLogoutReqBean; -import com.mogo.och.common.module.biz.constant.LoginStatusManager; +import com.mogo.och.biz.R; +import com.mogo.och.biz.login.bean.DriverStatusQueryRespBean; +import com.mogo.och.biz.login.bean.TaxiLogoutReqBean; +import com.mogo.och.biz.login.net.OchCommonServiceManager; +import com.mogo.och.common.module.biz.login.LoginStatusManager; 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.OchCommonServiceManager; import com.mogo.och.common.module.utils.ToastUtilsOch; import com.mogo.och.common.module.wigets.toast.ToastCharterUtils; @@ -60,6 +59,7 @@ public abstract class OchCommonLoginStatusModel { public void onSuccess(DriverStatusQueryRespBean data) { if (null != data && 0 == data.code) { LoginStatusManager.setLoginStatus(data.data.driverStatus); + LoginStatusManager.setLoginInfo(data.data); CallerLogger.d(M_TAXI + TAG, "changeCarStatus:" + LoginStatusManager.getLoginStatus()); loginSuccess(data); } diff --git a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/net/login/OchCommonServiceManager.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/net/OchCommonServiceManager.kt similarity index 63% rename from OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/net/login/OchCommonServiceManager.kt rename to OCH/common/biz/src/main/java/com/mogo/och/biz/login/net/OchCommonServiceManager.kt index 68412ada11..c83b64a357 100644 --- a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/net/login/OchCommonServiceManager.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/net/OchCommonServiceManager.kt @@ -1,32 +1,44 @@ -package com.magic.mogo.och.charter.net.login +package com.mogo.och.biz.login.net import android.content.Context import com.mogo.cloud.passport.MoGoAiCloudClientConfig -import com.mogo.och.common.module.biz.bean.TaxiLoginSmsReqBean -import com.mogo.och.common.module.biz.bean.TaxiLoginReqBean -import com.mogo.och.common.module.biz.bean.TaxiLoginRespBean -import com.mogo.och.common.module.biz.bean.TaxiLogoutReqBean -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean -import com.mogo.och.common.module.biz.constant.OchCommonConst -import com.mogo.cloud.passport.MoGoAiCloudClient -import com.mogo.eagle.core.data.BaseData -import com.mogo.eagle.core.network.MoGoRetrofitFactory import com.mogo.commons.storage.SharedPrefsMgr +import com.mogo.och.biz.login.bean.DriverStatusQueryRespBean +import com.mogo.och.biz.login.bean.TaxiLoginReqBean +import com.mogo.eagle.core.data.BaseData +import com.mogo.eagle.core.data.config.FunctionBuildConfig +import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager +import com.mogo.eagle.core.network.MoGoRetrofitFactory +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils +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 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 -/** - * Created by pangfan on 2021/8/19 - */ object OchCommonServiceManager { private const val TAG = "OchCommonServiceManager" - private val mLoginServiceApi: OchLoginServiceApi = + private val loginDefaultManage: OchLoginServiceApi = MoGoRetrofitFactory.getInstance(OchCommonConst.getBaseUrl()).create( OchLoginServiceApi::class.java ) + private var draiverSnCacher = "" + /** + * 获取Bus司机端的sn + * @return + */ + val draiverSn: String + get(){ + val serverToken = CallerTelematicManager.getServerToken() + if (serverToken != draiverSnCacher && serverToken.isNotEmpty()) { + draiverSnCacher = serverToken + } + return draiverSnCacher + } /** * 获取手机验证码 @@ -38,7 +50,7 @@ object OchCommonServiceManager { context: Context, phone: String?, callback: OchCommonServiceCallback? ) { - mLoginServiceApi.getPhoneCode( + loginDefaultManage.getPhoneCode( MoGoAiCloudClientConfig.getInstance().serviceAppId, SharedPrefsMgr.getInstance().token, TaxiLoginSmsReqBean(phone) @@ -54,11 +66,11 @@ object OchCommonServiceManager { @JvmStatic fun gotoLoginBycode( context: Context, phone: String?, code: String?, - location4Login: TaxiLoginReqBean.Location4Login?, + location4Login: TaxiLoginReqBean.Location4Login, callback: OchCommonServiceCallback? ) { val sn = SharedPrefsMgr.getInstance().sn - mLoginServiceApi.gotoLoginBycode4Bus( + loginDefaultManage.gotoLoginBycode( MoGoAiCloudClientConfig.getInstance().serviceAppId, SharedPrefsMgr.getInstance().token, TaxiLoginReqBean(phone, code, sn, location4Login) @@ -74,10 +86,12 @@ object OchCommonServiceManager { location4Login: TaxiLogoutReqBean.Location4Login?, callback: OchCommonServiceCallback? ) { - mLoginServiceApi.logout4Bus( - MoGoAiCloudClientConfig.getInstance().serviceAppId, + loginDefaultManage.logout(MoGoAiCloudClientConfig.getInstance().serviceAppId, SharedPrefsMgr.getInstance().token, - TaxiLogoutReqBean(SharedPrefsMgr.getInstance().sn, location4Login) + TaxiLogoutReqBean( + SharedPrefsMgr.getInstance().sn, + location4Login + ) ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "logout")) } @@ -92,15 +106,16 @@ object OchCommonServiceManager { context: Context, callback: OchCommonServiceCallback? ) { - if (SharedPrefsMgr.getInstance().token.isEmpty()) { - callback?.onFail(OchCommonConst.WAIT_TAKEN, "等待令牌中请稍等") - MoGoAiCloudClient.getInstance().refreshToken() - return + val sn = + if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) { + SharedPrefsMgr.getInstance().sn + } else{ + draiverSn } - mLoginServiceApi.queryDriverServiceStatusAndLoginStatus( + loginDefaultManage.queryDriverServiceStatusAndLoginStatus( MoGoAiCloudClientConfig.getInstance().serviceAppId, SharedPrefsMgr.getInstance().token, - SharedPrefsMgr.getInstance().sn + sn ).transformTry() .subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverServiceStatus")) } diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/net/login/OchLoginServiceApi.java b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/net/OchLoginServiceApi.java similarity index 75% rename from OCH/bus/driver/src/main/java/com/mogo/och/bus/net/login/OchLoginServiceApi.java rename to OCH/common/biz/src/main/java/com/mogo/och/biz/login/net/OchLoginServiceApi.java index fed3c8e1bc..9fcfeb8a31 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/net/login/OchLoginServiceApi.java +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/net/OchLoginServiceApi.java @@ -1,11 +1,11 @@ -package com.mogo.och.bus.net.login; +package com.mogo.och.biz.login.net; import com.mogo.eagle.core.data.BaseData; -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean; -import com.mogo.och.common.module.biz.bean.TaxiLoginReqBean; -import com.mogo.och.common.module.biz.bean.TaxiLoginRespBean; -import com.mogo.och.common.module.biz.bean.TaxiLoginSmsReqBean; -import com.mogo.och.common.module.biz.bean.TaxiLogoutReqBean; +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; @@ -13,7 +13,6 @@ import retrofit2.http.GET; import retrofit2.http.Header; import retrofit2.http.Headers; import retrofit2.http.POST; -import retrofit2.http.Path; import retrofit2.http.Query; /** @@ -42,7 +41,7 @@ interface OchLoginServiceApi { */ @Headers({"Content-type:application/json;charset=UTF-8"}) @POST("/autopilot-car-hailing/cab/flow/v1/bus/driver/bus/startOperation") - Observable gotoLoginBycode4Bus(@Header("appId") String appId + Observable gotoLoginBycode(@Header("appId") String appId , @Header("ticket") String ticket, @Body TaxiLoginReqBean data); /** @@ -50,7 +49,7 @@ interface OchLoginServiceApi { */ @Headers({"Content-type:application/json;charset=UTF-8"}) @POST("/autopilot-car-hailing/cab/flow/v1/bus/driver/bus/endOperation") - Observable logout4Bus(@Header("appId") String appId, @Header("ticket") String ticket, + Observable logout(@Header("appId") String appId, @Header("ticket") String ticket, @Body TaxiLogoutReqBean data); /** diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/presenter/OchCommonLoginPresenter.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/presenter/OchCommonLoginPresenter.kt similarity index 92% rename from OCH/common/common/src/main/java/com/mogo/och/common/module/biz/presenter/OchCommonLoginPresenter.kt rename to OCH/common/biz/src/main/java/com/mogo/och/biz/login/presenter/OchCommonLoginPresenter.kt index 784d7f3e43..c1dd0f307c 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/presenter/OchCommonLoginPresenter.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/presenter/OchCommonLoginPresenter.kt @@ -1,4 +1,4 @@ -package com.mogo.och.common.module.biz.presenter +package com.mogo.och.biz.login.presenter import androidx.lifecycle.LifecycleOwner import com.mogo.commons.AbsMogoApplication @@ -6,10 +6,10 @@ import com.mogo.commons.mvp.Presenter 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.RegexUtils -import com.mogo.och.common.module.R -import com.mogo.och.common.module.biz.callback.ITaxiLoginCallback -import com.mogo.och.common.module.biz.model.OchCommonLoginModel -import com.mogo.och.common.module.biz.ui.TaxiLoginDialogFragment +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.model.OchCommonLoginModel import com.mogo.och.common.module.wigets.toast.ToastCharterUtils import io.reactivex.Observable import io.reactivex.android.schedulers.AndroidSchedulers diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/ui/TaxiLoginDialogFragment.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/ui/TaxiLoginDialogFragment.kt new file mode 100644 index 0000000000..e58f292a0a --- /dev/null +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/ui/TaxiLoginDialogFragment.kt @@ -0,0 +1,204 @@ +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 +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 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 + + +/** + * @author: yangyakun + * @date: 2022/8/15 + */ +class TaxiLoginDialogFragment : + MvpFragment(){ + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + } + override fun onCreateView( + inflater: LayoutInflater, + container: ViewGroup?, + savedInstanceState: Bundle? + ): View? { + return super.onCreateView(inflater, container, savedInstanceState) + } + + override fun getLayoutId(): Int { + return R.layout.taxi_login_view + } + + override fun initViews() { + inputPhoneNormal() + initBg() + initListener() + } + + 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) + } + } + + @SuppressLint("ClickableViewAccessibility") + private fun initListener() { + mRootView.isFocusable = true + mRootView.isFocusableInTouchMode = true + mRootView.setOnTouchListener { _, event -> + when (event?.action) { + MotionEvent.ACTION_DOWN -> { + closeSoftInput() + } + } + false + } + acbtn_login.onClick { + val phone = ace_login_phone_value.text.toString() + val code = acet_phone_code_value.text.toString() + mPresenter?.gotoLogin(phone, code) + } + actv_welcome_login_title.setOnClickListener { + continuousClick() + } + cl_main.viewTreeObserver.addOnGlobalLayoutListener { + val rect = Rect() + cl_main.getWindowVisibleDisplayFrame(rect) + val mainInvisibleHeight = cl_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 + if (srollHeight > 0) { + cl_main.scrollTo(0, srollHeight) + } + CallerLogger.d(SceneConstant.M_TAXI_P + TAG, "滚动的距离:$srollHeight") + } else { + cl_main.scrollTo(0, 0) + } + } + actv_login_get_code.onClick { + mPresenter?.getPhoneCode(ace_login_phone_value.text.toString()) + } + actv_login_show_sn.setOnLongClickListener { + val loginService = ARouter.getInstance().build(OchCommonConst.LOGINSERVICE) + .navigation() as LoginService + loginService.showUiModel(false) + true + } + ace_login_phone_value.addTextChangedListener { + it?.let { itEditable -> + if (itEditable.isNotEmpty()) { + inputPhoneNormal() + } + } + } + actv_login_show_sn.text = SharedPrefsMgr.getInstance().sn + } + + /** + * 关闭键盘 + */ + fun closeSoftInput() { + mRootView.requestFocus() + KeyboardUtils.hideSoftInput(ActivityUtils.getTopActivity()) + } + + 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 + } else { + actv_login_get_code.text = text + 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) + 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) + } + } + + 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) + } + } + + override fun createPresenter(): OchCommonLoginPresenter { + return OchCommonLoginPresenter(this) + } + + override fun getTagName(): String { + return TAG + } + + 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 + } + } + + private var mHits = LongArray(COUNTS) + + private fun continuousClick() { + //每次点击时,数组向前移动一位 + System.arraycopy(mHits, 1, mHits, 0, mHits.size - 1) + //为数组最后一位赋值 + mHits[mHits.size - 1] = SystemClock.uptimeMillis() + if (mHits[0] >= (SystemClock.uptimeMillis() - DURATION)) { + mHits = LongArray(COUNTS) //重新初始化数组 + mPresenter?.gotoLogin("13288888888", "8888") + } + } + + fun loginSuccess() { + + } +} \ No newline at end of file diff --git a/OCH/common/common/src/main/res/drawable-xhdpi/bus_ic_login_bg.webp b/OCH/common/biz/src/main/res/drawable-nodpi/bus_ic_login_bg.webp similarity index 100% rename from OCH/common/common/src/main/res/drawable-xhdpi/bus_ic_login_bg.webp rename to OCH/common/biz/src/main/res/drawable-nodpi/bus_ic_login_bg.webp diff --git a/OCH/common/common/src/main/res/drawable-xhdpi/taxi_ic_login_bg.webp b/OCH/common/biz/src/main/res/drawable-nodpi/taxi_ic_login_bg.webp similarity index 100% rename from OCH/common/common/src/main/res/drawable-xhdpi/taxi_ic_login_bg.webp rename to OCH/common/biz/src/main/res/drawable-nodpi/taxi_ic_login_bg.webp diff --git a/OCH/common/common/src/main/res/layout/taxi_login_view.xml b/OCH/common/biz/src/main/res/layout/taxi_login_view.xml similarity index 100% rename from OCH/common/common/src/main/res/layout/taxi_login_view.xml rename to OCH/common/biz/src/main/res/layout/taxi_login_view.xml diff --git a/OCH/common/biz/src/main/res/values/strings.xml b/OCH/common/biz/src/main/res/values/strings.xml new file mode 100644 index 0000000000..60dcf03c44 --- /dev/null +++ b/OCH/common/biz/src/main/res/values/strings.xml @@ -0,0 +1,20 @@ + + + + 欢迎您登录 + 登录 + 获取验证码 + 请输入验证码 + 获取验证码成功 + 登录成功 + 请输入正确的手机号 + 请输入正确的验证码 + 请输入手机号 + 请输入手机号 + + 网络异常,请稍后重试 + 请求出现异常,请稍后重试 + + 取消 + 扫描二维码完成车辆绑定 + \ No newline at end of file diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/DriverStatusQueryRespBean.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/DriverStatusQueryRespBean.java deleted file mode 100644 index 0b8692ae59..0000000000 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/bean/DriverStatusQueryRespBean.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.mogo.och.common.module.biz.bean; - -import com.mogo.eagle.core.data.BaseData; - -/** - * Created by pangfan on 2021/8/19 - * - * 状态查询返回数据结构 - */ -public class DriverStatusQueryRespBean extends BaseData { - public Result data; - - public static class Result { - public int servingStatus; //1接单,1暂停接单 - public int driverStatus; //1登录,0登出 - public String orderNo; - public int purpose; // 1 运营, 2 测试, 3演示 - - public String sn; - public String plateNumber;//车牌号 - public String phone;//手机号 - public Integer lineId;//线路id - public Integer taskId;//任务id - } -} diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/callback/ILoginViewCallback.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/callback/ILoginViewCallback.kt deleted file mode 100644 index 033e900e77..0000000000 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/callback/ILoginViewCallback.kt +++ /dev/null @@ -1,13 +0,0 @@ -package com.mogo.och.common.module.biz.callback - -interface ILoginViewCallback { - /** - * 展示登录页面 - */ - fun showLoginDialogFragment() - - /** - * 隐藏登录页面 - */ - fun hideLoginDialogFragment() -} \ No newline at end of file diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/constant/LoginStatusManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/constant/LoginStatusManager.kt deleted file mode 100644 index 8f339cebde..0000000000 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/constant/LoginStatusManager.kt +++ /dev/null @@ -1,59 +0,0 @@ -package com.mogo.och.common.module.biz.constant - -import java.util.concurrent.ConcurrentHashMap - -object LoginStatusManager { - /** - * 登录状态 - */ - private var loginStatus: TaxiLoginStatusEnum = TaxiLoginStatusEnum.None - private val mStatusChangeListener = ConcurrentHashMap() - - @JvmStatic - fun setLoginStatus(status: Int) { - when (status) { - 0 -> { - setLoginStatus(TaxiLoginStatusEnum.Logout) - } - 1 -> { - setLoginStatus(TaxiLoginStatusEnum.Login) - } - else -> { - setLoginStatus(TaxiLoginStatusEnum.None) - } - } - } - @JvmStatic - fun setLoginStatus(loginStatus: TaxiLoginStatusEnum) { - if(loginStatus!=this.loginStatus){ - this.loginStatus = loginStatus - for (callback in mStatusChangeListener.values) { - callback.onStatusChange(loginStatus) - } - } - } - @JvmStatic - fun getLoginStatus(): TaxiLoginStatusEnum { - return loginStatus - } - @JvmStatic - fun isLogin():Boolean { - if(loginStatus== TaxiLoginStatusEnum.Login){ - return true - } - return false - } - - fun setControllerStatusCallback(tag: String, callback: ILoginStatusChangeListener?) { - if (tag.isBlank()) return - if (callback == null) { - mStatusChangeListener.remove(tag) - return - } - mStatusChangeListener[tag] = callback - } - - interface ILoginStatusChangeListener{ - fun onStatusChange(currentStatus:TaxiLoginStatusEnum) - } -} \ No newline at end of file diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/constant/OchCommonConst.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/constant/OchCommonConst.kt index e6fec1f2d5..da228eac91 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/constant/OchCommonConst.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/constant/OchCommonConst.kt @@ -30,6 +30,25 @@ class OchCommonConst { const val LOGINSERVICE = "/ochbiz/common/login" + 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 // 自动驾驶自动规划的最大距离 diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/ILoginCallback.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/ILoginCallback.java new file mode 100644 index 0000000000..1b3e385d12 --- /dev/null +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/ILoginCallback.java @@ -0,0 +1,10 @@ +package com.mogo.och.common.module.biz.login; + +public interface ILoginCallback { + default void loginSuccess(){} + + default void loginFail(){} + + default void onStatusChange(TaxiLoginStatusEnum currentStatus){} + +} diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginInfo.java b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginInfo.java new file mode 100644 index 0000000000..3a50efcfb9 --- /dev/null +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginInfo.java @@ -0,0 +1,12 @@ +package com.mogo.och.common.module.biz.login; + +public class LoginInfo { + public int driverStatus; //1登录,0登出 + public String orderNo; + public int purpose; // 1 运营, 2 测试, 3演示 + public String sn; + public String plateNumber;//车牌号 + public String phone;//手机号 + public Integer lineId;//线路id + public Integer taskId;//任务id +} diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginService.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginService.kt new file mode 100644 index 0000000000..1c13778b12 --- /dev/null +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginService.kt @@ -0,0 +1,25 @@ +package com.mogo.och.common.module.biz.login + +import com.mogo.och.common.module.biz.provider.CommonService + +interface LoginService : CommonService { + fun setLoginInfo(loginInfo: LoginInfo) + fun getLoginInfo():LoginInfo? + + fun getPurpose():TaxiDriverRoleEnum + + fun isLogin():Boolean + fun getLoginStatus(): TaxiLoginStatusEnum + fun setLoginStatus(loginStatus: TaxiLoginStatusEnum) + fun setLoginStatus(status: Int) + + fun queryLoginStatusByNet() + + fun showUiModel(show:Boolean) + + /** + * 登出 + */ + fun loginOut(mLatitude:Double,mLongitude:Double) + +} \ No newline at end of file diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginStatusManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginStatusManager.kt new file mode 100644 index 0000000000..7c85843c02 --- /dev/null +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/LoginStatusManager.kt @@ -0,0 +1,74 @@ +package com.mogo.och.common.module.biz.login + + +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 +import com.mogo.och.common.module.utils.CallerBase +import java.util.concurrent.ConcurrentHashMap + +object LoginStatusManager : CallerBase() { + + private var loginService: LoginService? = + ARouter.getInstance().build(OchCommonConst.BIZ_LOGIN).navigation() as LoginService + + @JvmStatic + fun loginOut(mLatitude: Double, mLongitude: Double) { + loginService?.loginOut(mLatitude, mLongitude) + } + + @JvmStatic + fun queryLoginStatusByNet() { + loginService?.queryLoginStatusByNet() + } + @JvmStatic + fun getPurpose(): TaxiDriverRoleEnum { + loginService?.let { + return it.getPurpose() + } + return TaxiDriverRoleEnum.None + } + + @JvmStatic + fun setLoginInfo(loginInfo: LoginInfo) { + loginService?.setLoginInfo(loginInfo) + } + + fun getLoginInfo(): LoginInfo? { + return loginService?.getLoginInfo() + } + + @JvmStatic + fun setLoginStatus(status: Int) { + loginService?.setLoginStatus(status) + } + + @JvmStatic + fun setLoginStatus(loginStatus: TaxiLoginStatusEnum) { + loginService?.setLoginStatus(loginStatus) + } + + @JvmStatic + fun getLoginStatus(): TaxiLoginStatusEnum { + loginService?.let { + return it.getLoginStatus() + } + return TaxiLoginStatusEnum.None + } + + @JvmStatic + fun isLogin(): Boolean { + loginService?.let { + return it.isLogin() + } + return false + } + + fun invokeLoginStatusChange(currentStatus: TaxiLoginStatusEnum) { + M_LISTENERS.forEach { + val listener = it.value + listener.onStatusChange(currentStatus) + } + } + +} \ No newline at end of file diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/TaxiDriverRoleEnum.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/TaxiDriverRoleEnum.kt new file mode 100644 index 0000000000..c909366ed1 --- /dev/null +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/TaxiDriverRoleEnum.kt @@ -0,0 +1,25 @@ +package com.mogo.och.common.module.biz.login + +/** + * Created on 2021/12/7 + * 1 运营, 2 测试, 3演示 + */ +enum class TaxiDriverRoleEnum(val code: Int) { + None( 0), + OPERATION( 1), + TEST( 2), + DEMO( 3); + + + companion object { + @JvmStatic + fun valueOf(code: Int?): TaxiDriverRoleEnum { + for (value in TaxiDriverRoleEnum.values()) { + if (value.code == code) { + return value + } + } + return TaxiDriverRoleEnum.None + } + } +} \ No newline at end of file diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/constant/TaxiLoginStatusEnum.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/TaxiLoginStatusEnum.kt similarity index 90% rename from OCH/common/common/src/main/java/com/mogo/och/common/module/biz/constant/TaxiLoginStatusEnum.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/TaxiLoginStatusEnum.kt index 451196d777..b29afbbeca 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/constant/TaxiLoginStatusEnum.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/login/TaxiLoginStatusEnum.kt @@ -1,4 +1,4 @@ -package com.mogo.och.common.module.biz.constant +package com.mogo.och.common.module.biz.login /** * Created on 2022/08/19 diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/LoginDefaultManage.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/LoginDefaultManage.kt deleted file mode 100644 index 9637d39f2c..0000000000 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/LoginDefaultManage.kt +++ /dev/null @@ -1,30 +0,0 @@ -package com.mogo.och.common.module.biz.network - -import android.content.Context -import com.mogo.eagle.core.data.BaseData -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean -import com.mogo.och.common.module.biz.bean.TaxiLoginReqBean -import com.mogo.och.common.module.biz.bean.TaxiLoginRespBean -import com.mogo.och.common.module.biz.bean.TaxiLogoutReqBean - -interface LoginDefaultManage { - fun getPhoneCode( - context: Context, - phone: String?, - callback: OchCommonServiceCallback? - ) - fun gotoLoginBycode( - context: Context, phone: String?, code: String?, - location4Login: TaxiLoginReqBean.Location4Login?, - callback: OchCommonServiceCallback? - ) - fun logout( - context: Context, - location4Login: TaxiLogoutReqBean.Location4Login?, - callback: OchCommonServiceCallback? - ) - fun queryDriverServiceStatus( - context: Context, - callback: OchCommonServiceCallback? - ) -} \ No newline at end of file diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/OchCommonServiceManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/OchCommonServiceManager.kt deleted file mode 100644 index ba78e36d5b..0000000000 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/OchCommonServiceManager.kt +++ /dev/null @@ -1,85 +0,0 @@ -package com.mogo.och.common.module.biz.network - -import android.content.Context -import com.mogo.och.common.module.biz.constant.OchCommonConst.Companion.getBaseUrl -import com.mogo.cloud.passport.MoGoAiCloudClientConfig -import com.mogo.och.common.module.biz.bean.TaxiLoginSmsReqBean -import com.mogo.och.common.module.biz.bean.TaxiLoginReqBean -import com.mogo.och.common.module.biz.bean.TaxiLoginRespBean -import com.mogo.och.common.module.biz.bean.TaxiLogoutReqBean -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean -import com.mogo.och.common.module.biz.constant.OchCommonConst -import com.mogo.cloud.passport.MoGoAiCloudClient -import com.mogo.commons.debug.DebugConfig -import com.mogo.eagle.core.data.BaseData -import com.mogo.eagle.core.network.MoGoRetrofitFactory -import com.mogo.och.common.module.biz.network.interceptor.transformTry -import io.reactivex.Observable - -/** - * Created by pangfan on 2021/8/19 - */ -object OchCommonServiceManager { - - private const val TAG = "OchCommonServiceManager" - - private var loginDefaultManage: LoginDefaultManage?=null - - fun setLoginDefaultManage(loginDefaultManage: LoginDefaultManage?){ - this.loginDefaultManage = loginDefaultManage - } - - /** - * 获取手机验证码 - * @param context - * @param callback - */ - @JvmStatic - fun getPhoneCode( - context: Context, phone: String?, - callback: OchCommonServiceCallback? - ) { - loginDefaultManage?.getPhoneCode(context,phone,callback) - } - - /** - * 通过验证码登录 - * @param context - * @param callback - */ - @JvmStatic - fun gotoLoginBycode( - context: Context, phone: String?, code: String?, - location4Login: TaxiLoginReqBean.Location4Login?, - callback: OchCommonServiceCallback? - ) { - loginDefaultManage?.gotoLoginBycode(context,phone,code,location4Login,callback) - } - - /** - * 登出 - */ - @JvmStatic - fun logout( - context: Context, - location4Login: TaxiLogoutReqBean.Location4Login?, - callback: OchCommonServiceCallback? - ) { - loginDefaultManage?.logout(context,location4Login,callback) - } - - /** - * 接单状态和登录状态查询 - * - * @param context - * @param callback - */ - @JvmStatic - fun queryDriverServiceStatus( - context: Context, - callback: OchCommonServiceCallback? - ) { - loginDefaultManage?.queryDriverServiceStatus(context,callback) - } - -} \ No newline at end of file diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/interceptor/FRetryWithTime.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/interceptor/FRetryWithTime.kt index 5e7796806e..38dd32ffb6 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/interceptor/FRetryWithTime.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/network/interceptor/FRetryWithTime.kt @@ -2,8 +2,8 @@ package com.mogo.och.common.module.biz.network.interceptor import com.mogo.cloud.passport.MoGoAiCloudClient import com.mogo.eagle.core.data.BaseData -import com.mogo.och.common.module.biz.constant.LoginStatusManager -import com.mogo.och.common.module.biz.constant.TaxiLoginStatusEnum +import com.mogo.och.common.module.biz.login.LoginStatusManager +import com.mogo.och.common.module.biz.login.TaxiLoginStatusEnum import io.reactivex.Observable import io.reactivex.ObservableSource import io.reactivex.functions.Function diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/presenter/OchCommonLoginStatusDefaultPresenter.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/presenter/OchCommonLoginStatusDefaultPresenter.kt deleted file mode 100644 index a4c77ec190..0000000000 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/presenter/OchCommonLoginStatusDefaultPresenter.kt +++ /dev/null @@ -1,48 +0,0 @@ -package com.mogo.och.common.module.biz.presenter - -import androidx.lifecycle.Lifecycle -import androidx.lifecycle.LifecycleObserver -import androidx.lifecycle.LifecycleOwner -import androidx.lifecycle.OnLifecycleEvent -import com.mogo.och.common.module.biz.callback.ILoginCallback -import com.mogo.och.common.module.biz.callback.ILoginViewCallback -import com.mogo.och.common.module.biz.model.OchCommonLoginStatusDefaultModel - -/** - * @author yangyakun - * @since 2020-09-19 - */ -class OchCommonLoginStatusDefaultPresenter : LifecycleObserver { - private var isFirstShow = true - - @OnLifecycleEvent(Lifecycle.Event.ON_CREATE) - fun onCreate(owner: LifecycleOwner) { - OchCommonLoginStatusDefaultModel.init() - } - - @OnLifecycleEvent(Lifecycle.Event.ON_RESUME) - fun onResume(owner: LifecycleOwner) { - if (isFirstShow) { - isFirstShow = false - } else { - queryLoginStatus() - } - } - @OnLifecycleEvent(Lifecycle.Event.ON_DESTROY) - fun onDestory(owner: LifecycleOwner) { - OchCommonLoginStatusDefaultModel.release() - } - - fun queryLoginStatus() { - OchCommonLoginStatusDefaultModel.queryCarStatus() - } - - fun logOut(mLatitude:Double,mLongitude:Double){ - OchCommonLoginStatusDefaultModel.logout(mLatitude, mLongitude) - } - - fun setLoginCallback(loginCallback: ILoginCallback?,loginViewCallback: ILoginViewCallback?){ - OchCommonLoginStatusDefaultModel.loginCallback = loginCallback - OchCommonLoginStatusDefaultModel.loginViewCallback = loginViewCallback - } -} \ No newline at end of file diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/provider/CommonService.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/provider/CommonService.kt new file mode 100644 index 0000000000..df69c79cf8 --- /dev/null +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/provider/CommonService.kt @@ -0,0 +1,10 @@ +package com.mogo.och.common.module.biz.provider + +import androidx.fragment.app.Fragment +import com.alibaba.android.arouter.facade.template.IProvider + +interface CommonService : IProvider { + + fun getFragment():Fragment + +} \ No newline at end of file diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/provider/LoginService.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/provider/LoginService.kt deleted file mode 100644 index 485014cee5..0000000000 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/provider/LoginService.kt +++ /dev/null @@ -1,32 +0,0 @@ -package com.mogo.och.common.module.biz.provider - -import androidx.fragment.app.Fragment -import com.alibaba.android.arouter.facade.template.IProvider -import com.mogo.och.common.module.biz.callback.ILoginCallback -import com.mogo.och.common.module.biz.network.LoginDefaultManage - -interface LoginService : IProvider { - /** - * 注册页面 - * @param fragment 主页面 - * @param callback 回调 - */ - fun registerFragment(fragment: Fragment?,loginCallback: ILoginCallback?,logindefaultmanage: LoginDefaultManage?) - - fun unRegisterFragment() - - /** - * 查询登录状态 - */ - fun queryLoginStatus():Boolean - - fun queryLoginStatusByNet() - - fun showUiModel(show:Boolean) - - /** - * 登出 - */ - fun loginOut(mLatitude:Double,mLongitude:Double) - -} \ No newline at end of file diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/provider/LoginServiceImpl.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/provider/LoginServiceImpl.kt deleted file mode 100644 index 71a2afd619..0000000000 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/provider/LoginServiceImpl.kt +++ /dev/null @@ -1,139 +0,0 @@ -package com.mogo.och.common.module.biz.provider - -import android.content.Context -import android.content.DialogInterface -import androidx.fragment.app.DialogFragment -import androidx.fragment.app.Fragment -import com.alibaba.android.arouter.facade.annotation.Route -import com.mogo.eagle.core.function.call.hmi.CallerHmiManager -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.AppStateManager.currentActivity -import com.mogo.eagle.core.utilcode.util.ClickUtils -import com.mogo.och.common.module.biz.callback.ILoginCallback -import com.mogo.och.common.module.biz.callback.ILoginViewCallback -import com.mogo.och.common.module.biz.constant.LoginStatusManager -import com.mogo.och.common.module.biz.constant.OchCommonConst -import com.mogo.och.common.module.biz.network.LoginDefaultManage -import com.mogo.och.common.module.biz.network.OchCommonServiceManager -import com.mogo.och.common.module.biz.presenter.OchCommonLoginStatusDefaultPresenter -import com.mogo.och.common.module.biz.ui.TaxiLoginDialogFragment -import com.mogo.och.common.module.biz.ui.TaxiLoginDialogFragment.Companion.newInstance -import java.lang.ref.WeakReference - -@Route(path = OchCommonConst.LOGINSERVICE) -class LoginServiceImpl : LoginService,ILoginViewCallback { - - companion object{ - const val TAG = "LoginServiceImpl" - } - - private var fragment: Fragment?=null - private var taxiLoginDialogFragment: WeakReference? = null - private var presenter: OchCommonLoginStatusDefaultPresenter?=null - private var uiModel = true - - override fun init(context: Context) { - - } - - override fun registerFragment(fragment: Fragment?,loginCallback: ILoginCallback?,logindefaultmanage: LoginDefaultManage?) { - OchCommonServiceManager.setLoginDefaultManage(logindefaultmanage) - presenter = OchCommonLoginStatusDefaultPresenter() - this.fragment = fragment - presenter?.let { - it.setLoginCallback(loginCallback, this) - this.fragment?.lifecycle?.addObserver(it) - } - } - - override fun unRegisterFragment() { - this.presenter?.let { - it.setLoginCallback(null,null) - this.fragment?.lifecycle?.removeObserver(it) - } - this.fragment = null - } - - - override fun showLoginDialogFragment() { - if(uiModel) { - fragment?.let { - CallerHmiManager.hideToolsView() - CallerHmiManager.hideSOPSettingView() - val parentFragmentManager = it.childFragmentManager - val fragmentByTag: Fragment? = parentFragmentManager.findFragmentByTag(TAG) - if (fragmentByTag is DialogFragment) { - if (fragmentByTag.dialog != null && fragmentByTag.dialog!!.isShowing) { - return - } - if (fragmentByTag.dialog != null && fragmentByTag.isAdded) { - if (currentActivity() == null) { // 没有在当前应用内 在启动页面关闭应用 - CallerLogger.d(SceneConstant.M_TAXI + TAG, "showLoginDialogFragment 权限验证") - return - } - } - } - - if (taxiLoginDialogFragment?.get() == null) { - taxiLoginDialogFragment = WeakReference(newInstance()) - } - val taxiLoginDialog = taxiLoginDialogFragment?.get() - if (taxiLoginDialog != null) { - if (taxiLoginDialog.dialog != null && taxiLoginDialog.dialog!!.isShowing) { - return - } - if (taxiLoginDialog.isAdded) { //解决方法就是添加这行代码,如果已经添加了,就移除掉然后再show,就不会出现Fragment already added的错误了。 - parentFragmentManager.beginTransaction().remove(taxiLoginDialog) - .commitAllowingStateLoss() - } - if (isFastClick()) { - taxiLoginDialog.show(parentFragmentManager, TAG) - taxiLoginDialog.setOnDismissListener(DialogInterface.OnDismissListener { dialog: DialogInterface? -> - taxiLoginDialogFragment?.clear() - presenter?.queryLoginStatus() - }) - CallerLogger.d(SceneConstant.M_TAXI + TAG, "showLoginDialogFragment 展示登录界面") - }else{ - CallerLogger.d(SceneConstant.M_TAXI + TAG, "showLoginDialogFragment 展示登录界面 5s内执行一次") - } - } - } - } - } - // 5s 还没有执行说明在anr了 - private val MIN_CLICK_DELAY_TIME = 5000 - private var lastClickTime: Long = 0 - - fun isFastClick(): Boolean { - var flag = false - val curClickTime = System.currentTimeMillis() - if (curClickTime - lastClickTime >= MIN_CLICK_DELAY_TIME) { - flag = true - } - lastClickTime = curClickTime - return flag - } - - override fun hideLoginDialogFragment() { - CallerLogger.d(SceneConstant.M_TAXI + TAG, "hideLoginDialogFragment 隐藏登录界面") - if (taxiLoginDialogFragment?.get() != null) { - taxiLoginDialogFragment?.get()?.dismissAllowingStateLoss() - } - } - override fun queryLoginStatus():Boolean { - return LoginStatusManager.isLogin() - } - - override fun queryLoginStatusByNet() { - presenter?.queryLoginStatus() - } - - override fun showUiModel(show:Boolean) { - uiModel = show; - } - - override fun loginOut(mLatitude:Double,mLongitude:Double) { - presenter?.logOut(mLatitude,mLongitude) - } -} \ No newline at end of file diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/ui/TaxiLoginDialogFragment.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/ui/TaxiLoginDialogFragment.kt deleted file mode 100644 index 802b3e6c32..0000000000 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/ui/TaxiLoginDialogFragment.kt +++ /dev/null @@ -1,284 +0,0 @@ -package com.mogo.och.common.module.biz.ui - -import android.annotation.SuppressLint -import android.content.DialogInterface -import android.graphics.Rect -import android.os.Bundle -import android.os.SystemClock -import android.util.Log -import android.view.* -import androidx.appcompat.widget.AppCompatButton -import androidx.appcompat.widget.AppCompatEditText -import androidx.appcompat.widget.AppCompatImageView -import androidx.appcompat.widget.AppCompatTextView -import androidx.constraintlayout.widget.ConstraintLayout -import androidx.core.content.ContextCompat -import androidx.core.widget.addTextChangedListener -import androidx.fragment.app.DialogFragment -import androidx.fragment.app.FragmentManager -import androidx.fragment.app.FragmentTransaction -import com.alibaba.android.arouter.launcher.ARouter -import com.mogo.commons.mvp.MvpDialogFragment -import com.mogo.commons.storage.SharedPrefsMgr -import com.mogo.eagle.core.data.config.FunctionBuildConfig -import com.mogo.eagle.core.function.call.hmi.CallerHmiManager -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.KeyboardUtils -import com.mogo.och.common.module.R -import com.mogo.och.common.module.biz.constant.OchCommonConst -import com.mogo.och.common.module.biz.presenter.OchCommonLoginPresenter -import com.mogo.och.common.module.biz.provider.LoginService - - -/** - * @author: yangyakun - * @date: 2022/8/15 - */ -class TaxiLoginDialogFragment : - MvpDialogFragment(), - DialogInterface.OnKeyListener { - - lateinit var clMain: ConstraintLayout - lateinit var acbtnLogin: AppCompatButton - lateinit var actvLoginGetCode: AppCompatTextView - lateinit var actvLoginShowSn: AppCompatTextView - lateinit var aceLoginPhoneValue: AppCompatEditText - lateinit var acetPhoneCodeValue: AppCompatEditText - lateinit var actvWelcomeLoginTitle: AppCompatTextView - lateinit var acivLoginBg: AppCompatImageView - private var mOnClickListener: DialogInterface.OnDismissListener? = null - - - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - setStyle(STYLE_NO_TITLE, R.style.DialogFullScreen) //dialog全屏 - } - override fun onCreateView( - inflater: LayoutInflater, - container: ViewGroup?, - savedInstanceState: Bundle? - ): View? { - dialog?.setOnKeyListener(this) - return super.onCreateView(inflater, container, savedInstanceState) - } - - override fun getLayoutId(): Int { - return R.layout.taxi_login_view - } - - override fun initViews() { - clMain = mRootView.findViewById(R.id.cl_main) - acbtnLogin = mRootView.findViewById(R.id.acbtn_login) - actvLoginGetCode = mRootView.findViewById(R.id.actv_login_get_code) - aceLoginPhoneValue = mRootView.findViewById(R.id.ace_login_phone_value) - acetPhoneCodeValue = mRootView.findViewById(R.id.acet_phone_code_value) - actvWelcomeLoginTitle = mRootView.findViewById(R.id.actv_welcome_login_title) - actvLoginShowSn = mRootView.findViewById(R.id.actv_login_show_sn) - acivLoginBg = mRootView.findViewById(R.id.aciv_login_bg) - inputPhoneNormal() - initBg() - initListener() - dialog?.window?.let { - context?.let { _ -> - CallerHmiManager.setStatusBarDarkOrLight(false) - } - } - } - - private fun initBg() { - if (AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode) && - AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) { - //出租车司机 - acivLoginBg.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)) { - //小巴车司机 - acivLoginBg.setImageResource(R.drawable.bus_ic_login_bg) - } - } - - @SuppressLint("ClickableViewAccessibility") - private fun initListener() { - mRootView.isFocusable = true - mRootView.isFocusableInTouchMode = true - mRootView.setOnTouchListener { _, event -> - when (event?.action) { - MotionEvent.ACTION_DOWN -> { - closeSoftInput() - } - } - false - } - acbtnLogin.onClick { - val phone = aceLoginPhoneValue.text.toString() - val code = acetPhoneCodeValue.text.toString() - mPresenter?.gotoLogin(phone, code) - } - actvWelcomeLoginTitle.setOnClickListener { - continuousClick() - } - clMain.viewTreeObserver.addOnGlobalLayoutListener { - val rect = Rect() - clMain.getWindowVisibleDisplayFrame(rect) - val mainInvisibleHeight = clMain.rootView.height - rect.bottom - if (mainInvisibleHeight > 100) { - val outLocation = IntArray(2) - acbtnLogin.getLocationInWindow(outLocation) - val srollHeight = (outLocation[1] + acbtnLogin.height) - rect.bottom - if (srollHeight > 0) { - clMain.scrollTo(0, srollHeight) - } - CallerLogger.d(SceneConstant.M_TAXI_P + TAG, "滚动的距离:$srollHeight") - } else { - clMain.scrollTo(0, 0) - } - } - actvLoginGetCode.onClick { - mPresenter?.getPhoneCode(aceLoginPhoneValue.text.toString()) - } - actvLoginShowSn.setOnLongClickListener { - val loginService = ARouter.getInstance().build(OchCommonConst.LOGINSERVICE) - .navigation() as LoginService - loginService.showUiModel(false) - dismissAllowingStateLoss() - true - } - aceLoginPhoneValue.addTextChangedListener { - it?.let { itEditable -> - if (itEditable.isNotEmpty()) { - inputPhoneNormal() - } - } - } - actvLoginShowSn.text = SharedPrefsMgr.getInstance().sn - } - - /** - * 关闭键盘 - */ - fun closeSoftInput() { - mRootView.requestFocus() - dialog?.window?.let { - KeyboardUtils.hideSoftInput(it) - } - } - - fun setCountDownText(text: String, enable: Boolean) { - if (enable) { - actvLoginGetCode.setText(R.string.module_och_taxi_login_get_code) - actvLoginGetCode.isEnabled = true - } else { - actvLoginGetCode.text = text - actvLoginGetCode.isEnabled = false - } - } - - fun inputPhoneError() { - aceLoginPhoneValue.text?.clear() - aceLoginPhoneValue.setHint(R.string.module_och_taxi_login_phone_error) - context?.let { - aceLoginPhoneValue.setHintTextColor(ContextCompat.getColor(it, R.color.taxi_EF262C)) - aceLoginPhoneValue.setBackgroundResource(R.drawable.taxi_login_phone_error) - } - } - - private fun inputPhoneNormal() { - //aceLoginPhoneValue.setHint(R.string.module_och_taxi_login_phone_hint_text) - context?.let { - aceLoginPhoneValue.setHintTextColor(ContextCompat.getColor(it, R.color.taxi_878890)) - aceLoginPhoneValue.setBackgroundResource(R.drawable.taxi_login_phone_normal) - } - } - - override fun createPresenter(): OchCommonLoginPresenter { - return OchCommonLoginPresenter(this) - } - - override fun getTagName(): String { - return TAG - } - - 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 - } - } - - private var mHits = LongArray(COUNTS) - - private fun continuousClick() { - //每次点击时,数组向前移动一位 - System.arraycopy(mHits, 1, mHits, 0, mHits.size - 1) - //为数组最后一位赋值 - mHits[mHits.size - 1] = SystemClock.uptimeMillis() - if (mHits[0] >= (SystemClock.uptimeMillis() - DURATION)) { - mHits = LongArray(COUNTS) //重新初始化数组 - mPresenter?.gotoLogin("13288888888", "8888") - } - } - - override fun onKey(dialog: DialogInterface, keyCode: Int, event: KeyEvent): Boolean { - return keyCode == KeyEvent.KEYCODE_BACK - } - - fun loginSuccess() { - dismissAllowingStateLoss() - } - - fun setOnDismissListener(listener: DialogInterface.OnDismissListener?) { - mOnClickListener = listener - } - - override fun onDismiss(dialog: DialogInterface) { - super.onDismiss(dialog) - mOnClickListener?.onDismiss(dialog) - CallerHmiManager.setStatusBarDarkOrLight(false) - } - - /** - * 重写父类show()方法 - * 避免出现java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState - */ - override fun show(manager: FragmentManager, tag: String?) { - try { - var cls = this.javaClass.superclass ?: return - while (cls != null) { - if (cls.name == "java.lang.Object") { - break - } - cls = cls.superclass!! - if (cls == DialogFragment::class.java) { - break - } - } - val mDismissed = cls.getDeclaredField("mDismissed") - val mShownByMe = cls.getDeclaredField("mShownByMe") - mDismissed.isAccessible = true - mShownByMe.isAccessible = true - mDismissed.setBoolean(this, false) - mShownByMe.setBoolean(this, true) - if (isAdded) { //解决方法就是添加这行代码,如果已经添加了,就移除掉然后再show,就不会出现Fragment already added的错误了。 - return - } - val ft: FragmentTransaction = manager.beginTransaction() - ft.add(this, tag) - ft.commitAllowingStateLoss() - } catch (e: Exception) { - Log.e("DialogFragment", "show", e.fillInStackTrace()) - } - } - -} \ No newline at end of file diff --git a/OCH/facade/.gitignore b/OCH/facade/.gitignore new file mode 100644 index 0000000000..42afabfd2a --- /dev/null +++ b/OCH/facade/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/OCH/facade/build.gradle b/OCH/facade/build.gradle new file mode 100644 index 0000000000..c80b809423 --- /dev/null +++ b/OCH/facade/build.gradle @@ -0,0 +1,61 @@ +plugins { + id 'com.android.library' + id 'org.jetbrains.kotlin.android' + id 'kotlin-kapt' +} + +android { + compileSdkVersion rootProject.ext.android.compileSdkVersion + defaultConfig { + minSdkVersion rootProject.ext.android.minSdkVersion + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + consumerProguardFiles "consumer-rules.pro" + kapt { + useBuildCache = false + arguments { + arg("AROUTER_MODULE_NAME", project.getName()) + } + } + } + + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' + } + } + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } + + lintOptions { + abortOnError false + } + kotlinOptions { + jvmTarget = '1.8' + } +} + +dependencies { + + implementation fileTree(dir: "libs", include: ["*.jar"]) + implementation rootProject.ext.dependencies.kotlinstdlib + implementation rootProject.ext.dependencies.androidxccorektx + implementation rootProject.ext.dependencies.androidxappcompat + implementation rootProject.ext.dependencies.material + implementation rootProject.ext.dependencies.rxandroid + implementation rootProject.ext.dependencies.arouter + kapt rootProject.ext.dependencies.aroutercompiler + + apply from: "./script/och.gradle" + + implementation project(":OCH:common:common") + implementation project(":OCH:common:biz") + + if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { + api rootProject.ext.dependencies.mogoutils + }else { + api project(":core:mogo-core-utils") + } +} \ No newline at end of file diff --git a/OCH/facade/consumer-rules.pro b/OCH/facade/consumer-rules.pro new file mode 100644 index 0000000000..e69de29bb2 diff --git a/OCH/facade/proguard-rules.pro b/OCH/facade/proguard-rules.pro new file mode 100644 index 0000000000..481bb43481 --- /dev/null +++ b/OCH/facade/proguard-rules.pro @@ -0,0 +1,21 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile \ No newline at end of file diff --git a/OCH/facade/script/och.gradle b/OCH/facade/script/och.gradle new file mode 100644 index 0000000000..d9bf3768fd --- /dev/null +++ b/OCH/facade/script/och.gradle @@ -0,0 +1,60 @@ +apply from: "./script/utils.gradle" +// 网约车服务:仅小巴车、出租车渠道用 +project.dependencies { + if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { + + } else { + if (isCurrentDriver("ochFT")) { + implementation project.project(':OCH:sweeper:driver') + } else if (isCurrentDriver("ochJL")) { + implementation project.project(':OCH:shuttle:driver') + implementation project.project(':OCH:bus:driver') + } else if (isCurrentPassenger("ochJL")) { + implementation project.project(':OCH:bus:passenger') + implementation project.project(':OCH:shuttle:passenger') + } else if (isCurrentDriver("ochM1")) { + println "utils.gradle------isDriverOchM1" + implementation project.project(':OCH:charter:driver') + } else if (isCurrentPassenger("ochM1")) { + implementation project.project(':OCH:charter:passenger') + println "utils.gradle------isPassengerM1" + } else if (isCurrentDriver("ochM2")) { + implementation project.project(':OCH:shuttle:driver') + implementation project.project(':OCH:bus:driver') + } else if (isCurrentPassenger("ochM2")) { + implementation project.project(':OCH:bus:passenger') + implementation project.project(':OCH:shuttle:passenger') + } else if (isCurrentDriver("ochDFHQ")) { + implementation project.project(':OCH:taxi:driver') + implementation project.project(':OCH:taxi:unmanned-driver') + } else if (isCurrentPassenger("ochDFHQ")) { + implementation project.project(':OCH:taxi:passenger') + implementation project.project(':OCH:taxi:unmanned-passenger') + } else { + implementation project.project(':OCH:bus:driver') + implementation project.project(':OCH:bus:passenger') + implementation project.project(':OCH:charter:driver') + implementation project.project(':OCH:charter:passenger') + implementation project.project(':OCH:shuttle:driver') + implementation project.project(':OCH:shuttle:passenger') + implementation project.project(':OCH:sweeper:driver') + implementation project.project(':OCH:taxi:driver') + implementation project.project(':OCH:taxi:passenger') + implementation project.project(':OCH:taxi:unmanned-driver') + implementation project.project(':OCH:taxi:unmanned-passenger') + } + + // 多屏幕-Bus司机端 +// fMultiDisplayOchBusImplementation (project(':OCH:mogo-och-bus')) +// // 多屏幕-Bus乘客端 +// fMultiDisplayOchBusImplementation (project(':OCH:mogo-och-bus-passenger')) +// +// // taxi司机端 +// fMultiDisplayOchTaxiImplementation (project(':OCH:mogo-och-taxi')) +// // 多屏幕-taxi乘客端 +// fMultiDisplayOchTaxiImplementation (project(':OCH:mogo-och-taxi-passenger')) +// +// // 清扫车-多屏幕 +// fMultiDisplaySweeperImplementation (project(':OCH:mogo-och-sweeper')) + } +} diff --git a/OCH/facade/script/utils.gradle b/OCH/facade/script/utils.gradle new file mode 100644 index 0000000000..9db724526c --- /dev/null +++ b/OCH/facade/script/utils.gradle @@ -0,0 +1,70 @@ +boolean isCurrentDriver(String flavors) { + if(isDriver() && isCurrentFlavors(flavors)){ + return true + } + return false +} + +boolean isCurrentPassenger(String flavors) { + if(isPassenger() && isCurrentFlavors(flavors)){ + return true + } + return false +} + +boolean isDriver() { + for (String s : gradle.startParameter.taskNames) { + if (s.contains("Driver") | s.contains("driver")) { + return true + } + } + return false +} + +boolean isPassenger() { + for (String s : gradle.startParameter.taskNames) { + if (s.contains("Passenger") | s.contains("passenger")) { + return true + } + } + return false +} + +boolean isJL() { + for (String s : gradle.startParameter.taskNames) { + if (s.contains("OchJL") | s.contains("ochJL")) { + return true + } + } + return false +} + +boolean isM2() { + for (String s : gradle.startParameter.taskNames) { + if (s.contains("OchM2") | s.contains("ochM2")) { + return true + } + } + return false +} + +boolean isCurrentFlavors(String flavors){ + for (String s : gradle.startParameter.taskNames) { + + def lowerCase = flavors.toLowerCase() + if (s.toLowerCase().contains(lowerCase)) { + return true + } + } + return false +} + +ext { + isPassenger = this.&isPassenger + isDriver = this.&isDriver + isCurrentFlavors = this.&isCurrentFlavors + isCurrentDriver = this.&isCurrentDriver + isCurrentPassenger = this.&isCurrentPassenger + isJL = this.&isJL + isM2 = this.&isM2 +} \ No newline at end of file diff --git a/OCH/facade/src/main/AndroidManifest.xml b/OCH/facade/src/main/AndroidManifest.xml new file mode 100644 index 0000000000..79b2ca8c74 --- /dev/null +++ b/OCH/facade/src/main/AndroidManifest.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/OCH/facade/src/main/java/com/mogo/och/facade/constant/FacadeConst.kt b/OCH/facade/src/main/java/com/mogo/och/facade/constant/FacadeConst.kt new file mode 100644 index 0000000000..cf5bd72fe3 --- /dev/null +++ b/OCH/facade/src/main/java/com/mogo/och/facade/constant/FacadeConst.kt @@ -0,0 +1,13 @@ +package com.mogo.och.facade.constant + +/** + * Created on 2021/12/6 + */ +class FacadeConst { + companion object { + // OCH arouter 路由path + const val DRIVER_PATH = "/driver/api" + const val PASSENGER_PATH = "/passenger/api" + + } +} \ No newline at end of file diff --git a/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeDriverProvider.java b/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeDriverProvider.java new file mode 100644 index 0000000000..5e3425728d --- /dev/null +++ b/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeDriverProvider.java @@ -0,0 +1,77 @@ + +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) { + + } +} 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 new file mode 100644 index 0000000000..f80f99f473 --- /dev/null +++ b/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadePassengerProvider.java @@ -0,0 +1,62 @@ + +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/shuttle/driver/src/main/java/com/mogo/och/bus/BusProvider.java b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/BusProvider.java index 5d4584dd99..fe56db278f 100644 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/BusProvider.java +++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/BusProvider.java @@ -12,6 +12,7 @@ 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; @@ -21,7 +22,7 @@ import org.jetbrains.annotations.Nullable; * * @author tongchenfei */ -@Route(path = BusConst.PATH) +@Route(path = OchCommonConst.SHUTTLE_DRIVER) public class BusProvider implements IMoGoFunctionProvider { private static final String TAG = "BusProvider"; diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/fragment/ShuttleFragment.java b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/fragment/ShuttleFragment.java index 7a73ef12e8..1f2532228a 100644 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/fragment/ShuttleFragment.java +++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/fragment/ShuttleFragment.java @@ -32,13 +32,10 @@ import com.mogo.map.overlay.point.Point; import com.mogo.och.bus.R; import com.mogo.och.data.bean.BusStationBean; import com.mogo.och.bus.constant.BusConst; -import com.mogo.och.bus.net.login.LoginBusImpl; import com.mogo.och.bus.presenter.BusPresenter; import com.mogo.och.bus.ui.BusStationCommonItem; import com.mogo.och.bus.ui.BusSwitchLineActivity; import com.mogo.och.bus.view.SlidePanelView; -import com.mogo.och.common.module.biz.constant.OchCommonConst; -import com.mogo.och.common.module.biz.provider.LoginService; import com.mogo.och.common.module.utils.BlinkAnimationUtil; import com.mogo.och.common.module.utils.OCHThreadPoolManager; import com.mogo.och.common.module.utils.QRUtilsKt; @@ -76,7 +73,6 @@ public class ShuttleFragment extends BaseShuttleTabFragment=1 代表是重试 每次到站/路线结束清空置为0 private volatile int firstStartAutopilot = 0; - private LoginService loginService; - public static OrderModel getInstance() { if (sInstance == null) { synchronized (OrderModel.class) { @@ -131,7 +128,6 @@ public class OrderModel { public void init() { mContext = AbsMogoApplication.getApp(); - loginService = (LoginService) ARouter.getInstance().build(OchCommonConst.LOGINSERVICE).navigation(); // 定位监听 CallerChassisLocationGCJ02ListenerManager.INSTANCE.addListener(TAG,5,mMapLocationListener); @@ -265,8 +261,6 @@ public class OrderModel { // 注销定位监听 CallerChassisLocationGCJ02ListenerManager.INSTANCE.removeListener(TAG); - loginService = null; - OCHAdasAbilityManager.getInstance().setAdasStartFailureCallback(null); OCHSocketMessageManager.INSTANCE.releaseSocketMessageListener( @@ -1135,7 +1129,7 @@ public class OrderModel { // 登出 public void logout() { MogoLocation gcj02 = CallerChassisLocationGCJ02ListenerManager.INSTANCE.getChassisLocationGCJ02(); - loginService.loginOut(gcj02.getLatitude(), gcj02.getLongitude()); + LoginStatusManager.loginOut(gcj02.getLatitude(), gcj02.getLongitude()); } public void triggerStartServiceEvent(boolean isRestart, boolean send) { diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/net/login/LoginBusImpl.kt b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/net/login/LoginBusImpl.kt deleted file mode 100644 index 0f3c2d294f..0000000000 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/net/login/LoginBusImpl.kt +++ /dev/null @@ -1,47 +0,0 @@ -package com.mogo.och.bus.net.login - -import android.content.Context -import com.mogo.eagle.core.data.BaseData -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean -import com.mogo.och.common.module.biz.bean.TaxiLoginReqBean -import com.mogo.och.common.module.biz.bean.TaxiLoginRespBean -import com.mogo.och.common.module.biz.bean.TaxiLogoutReqBean -import com.mogo.och.common.module.biz.network.LoginDefaultManage -import com.mogo.och.common.module.biz.network.OchCommonServiceCallback - -class LoginBusImpl: LoginDefaultManage { - - override fun getPhoneCode( - context: Context, phone: String?, - callback: OchCommonServiceCallback? - ) { - OchCommonServiceManager.getPhoneCode(context,phone,callback) - } - - override fun gotoLoginBycode( - context: Context, - phone: String?, - code: String?, - location4Login: TaxiLoginReqBean.Location4Login?, - callback: OchCommonServiceCallback? - ) { - OchCommonServiceManager.gotoLoginBycode(context,phone,code,location4Login,callback) - } - - override fun logout( - context: Context, - location4Login: TaxiLogoutReqBean.Location4Login?, - callback: OchCommonServiceCallback? - ) { - OchCommonServiceManager.logout(context,location4Login,callback) - } - - override fun queryDriverServiceStatus( - context: Context, - callback: OchCommonServiceCallback? - ) { - OchCommonServiceManager.queryDriverServiceStatus(context,callback) - } - - -} \ No newline at end of file diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/net/login/OchCommonServiceManager.kt b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/net/login/OchCommonServiceManager.kt deleted file mode 100644 index a31ffeb463..0000000000 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/net/login/OchCommonServiceManager.kt +++ /dev/null @@ -1,108 +0,0 @@ -package com.mogo.och.bus.net.login - -import android.content.Context -import com.mogo.cloud.passport.MoGoAiCloudClientConfig -import com.mogo.och.common.module.biz.bean.TaxiLoginSmsReqBean -import com.mogo.och.common.module.biz.bean.TaxiLoginReqBean -import com.mogo.och.common.module.biz.bean.TaxiLoginRespBean -import com.mogo.och.common.module.biz.bean.TaxiLogoutReqBean -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean -import com.mogo.och.common.module.biz.constant.OchCommonConst -import com.mogo.cloud.passport.MoGoAiCloudClient -import com.mogo.eagle.core.data.BaseData -import com.mogo.eagle.core.network.MoGoRetrofitFactory -import com.mogo.commons.storage.SharedPrefsMgr -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 - -/** - * Created by pangfan on 2021/8/19 - */ -object OchCommonServiceManager { - - private const val TAG = "OchCommonServiceManager" - - private val mLoginServiceApi: OchLoginServiceApi = - MoGoRetrofitFactory.getInstance(OchCommonConst.getShuttleUrl()).create( - OchLoginServiceApi::class.java - ) - - /** - * 获取手机验证码 - * @param context - * @param callback - */ - @JvmStatic - fun getPhoneCode( - context: Context, phone: String?, - callback: OchCommonServiceCallback? - ) { - mLoginServiceApi.getPhoneCode( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - TaxiLoginSmsReqBean(phone) - ).transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "getPhoneCode")) - } - - /** - * 通过验证码登录 - * @param context - * @param callback - */ - @JvmStatic - fun gotoLoginBycode( - context: Context, phone: String?, code: String?, - location4Login: TaxiLoginReqBean.Location4Login?, - callback: OchCommonServiceCallback? - ) { - val sn = SharedPrefsMgr.getInstance().sn - mLoginServiceApi.gotoLoginBycode4Bus( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - TaxiLoginReqBean(phone, code, sn, location4Login) - ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "gotoLoginBycode")) - } - - /** - * 登出 - */ - @JvmStatic - fun logout( - context: Context, - location4Login: TaxiLogoutReqBean.Location4Login?, - callback: OchCommonServiceCallback? - ) { - mLoginServiceApi.logout4Bus( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - TaxiLogoutReqBean(SharedPrefsMgr.getInstance().sn, location4Login) - ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "logout")) - } - - /** - * 接单状态和登录状态查询 - * - * @param context - * @param callback - */ - @JvmStatic - fun queryDriverServiceStatus( - context: Context, - callback: OchCommonServiceCallback? - ) { - if (SharedPrefsMgr.getInstance().token.isEmpty()) { - callback?.onFail(OchCommonConst.WAIT_TAKEN, "等待令牌中请稍等") - MoGoAiCloudClient.getInstance().refreshToken() - return - } - mLoginServiceApi.queryDriverServiceStatusAndLoginStatus( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - SharedPrefsMgr.getInstance().sn - ).transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverServiceStatus")) - } - -} \ No newline at end of file diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/net/login/OchLoginServiceApi.java b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/net/login/OchLoginServiceApi.java deleted file mode 100644 index 81a0206a40..0000000000 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/net/login/OchLoginServiceApi.java +++ /dev/null @@ -1,65 +0,0 @@ -package com.mogo.och.bus.net.login; - -import com.mogo.eagle.core.data.BaseData; -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean; -import com.mogo.och.common.module.biz.bean.TaxiLoginReqBean; -import com.mogo.och.common.module.biz.bean.TaxiLoginRespBean; -import com.mogo.och.common.module.biz.bean.TaxiLoginSmsReqBean; -import com.mogo.och.common.module.biz.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.Path; -import retrofit2.http.Query; - -/** - * Created by pangfan on 2021/8/19 - *

- * 网约车-出租车接口定义 - */ -interface OchLoginServiceApi { - /** - * 获取手机验证码 - * - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) - @POST( "/och-shuttle-cabin/api/sms/v1/driver/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-shuttle-cabin/api/flow/v1/driver/startOperation" ) - Observable gotoLoginBycode4Bus(@Header("appId") String appId - , @Header("ticket") String ticket, @Body TaxiLoginReqBean data); - - /** - * 登出接口 - */ - @Headers({"Content-type:application/json;charset=UTF-8"}) - @POST("/och-shuttle-cabin/api/flow/v1/driver/endOperation") - Observable logout4Bus(@Header("appId") String appId, @Header("ticket") String ticket, - @Body TaxiLogoutReqBean data); - - /** - * 接单状态和登录状态查询 出租车司机端、小巴车司机端、小巴车乘客端 - * @param sn - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) - @GET( "/och-shuttle-cabin/api/business/v1/driver/loginStatus") - Observable queryDriverServiceStatusAndLoginStatus(@Header("appId") String appId - , @Header("ticket") String ticket, @Query("sn") String sn); - -} diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/presenter/BusPresenter.java b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/presenter/BusPresenter.java index 4a118676de..91ee7264ce 100644 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/presenter/BusPresenter.java +++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/presenter/BusPresenter.java @@ -27,9 +27,8 @@ import com.mogo.och.bus.callback.ISlidePannelHideCallback; import com.mogo.och.bus.fragment.ShuttleFragment; import com.mogo.och.bus.model.OrderModel; import com.mogo.och.bus.util.BusTrajectoryManager; -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean; -import com.mogo.och.common.module.biz.callback.ILoginCallback; -import com.mogo.och.common.module.biz.constant.LoginStatusManager; +import com.mogo.och.common.module.biz.login.ILoginCallback; +import com.mogo.och.common.module.biz.login.LoginStatusManager; import com.mogo.och.common.module.manager.autopilotmanager.OCHAdasAbilityManager; import com.zhjt.mogo.adas.data.AdasConstants; @@ -258,7 +257,7 @@ public class BusPresenter extends Presenter } @Override - public void loginSuccess(DriverStatusQueryRespBean data) { + public void loginSuccess() { CallerLogger.d(M_BUS + TAG, " loginStatus =" + LoginStatusManager.isLogin()); if(LoginStatusManager.isLogin()){ // OrderModel.getInstance().queryBusRoutes(); @@ -272,11 +271,6 @@ public class BusPresenter extends Presenter } } - @Override - public void loginFail(boolean isLogin) { - - } - @Override public void onStartAdasFailure() { runOnUIThread(() -> mView.stopAnimAndUpdateBtnStatus()); diff --git a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/util/BusTrajectoryManager.java b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/util/BusTrajectoryManager.java index 19e5310c91..5648ab04c3 100644 --- a/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/util/BusTrajectoryManager.java +++ b/OCH/shuttle/driver/src/main/java/com/mogo/och/bus/util/BusTrajectoryManager.java @@ -10,7 +10,7 @@ import com.mogo.och.common.module.manager.orderlogmanager.OchChainLogManager; import com.mogo.och.data.bean.BusRoutesResult; import com.mogo.och.bus.constant.BusConst; import com.mogo.och.bus.model.OrderModel; -import com.mogo.och.common.module.biz.constant.LoginStatusManager; +import com.mogo.och.common.module.biz.login.LoginStatusManager; import java.util.concurrent.TimeUnit; 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/MogoOCHShuttlePassenger.kt index 4a3719d191..17041c181d 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/MogoOCHShuttlePassenger.kt @@ -12,6 +12,7 @@ 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.MultiDisplayUtils +import com.mogo.och.common.module.biz.constant.OchCommonConst 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 @@ -23,7 +24,7 @@ import com.mogo.och.shuttle.passenger.ui.PM2BaseFragment * * Created on 2022/3/29 */ -@Route(path = BusPassengerConst.PATH) +@Route(path = OchCommonConst.SHUTTLE_PASSENGER) class MogoOCHShuttlePassenger : IMoGoFunctionProvider { private var mActivity: FragmentActivity? = null private var mContainerId = 0 diff --git a/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/SweeperProvider.java b/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/SweeperProvider.java index 2ccf94dc3b..86502102e6 100644 --- a/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/SweeperProvider.java +++ b/OCH/sweeper/driver/src/main/java/com/mogo/och/sweeper/SweeperProvider.java @@ -20,6 +20,7 @@ import com.mogo.eagle.core.utilcode.mogo.vehicle.SweeperVehicleConfigUtils; import com.mogo.eagle.core.utilcode.util.AppUtils; import com.mogo.eagle.core.utilcode.util.ToastUtils; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; +import com.mogo.och.common.module.biz.constant.OchCommonConst; import com.mogo.och.common.module.utils.ToastUtilsOch; import com.mogo.och.sweeper.cloud.fragment.SweeperCloudFragment; import com.mogo.och.sweeper.common.constant.SweeperConst; @@ -39,7 +40,7 @@ import io.reactivex.schedulers.Schedulers; * * @author tongchenfei */ -@Route(path = SweeperConst.PATH) +@Route(path = OchCommonConst.SWEEPER_DRIVER) public class SweeperProvider implements IMogoOCH, IMoGoSweeperModeListener { private static final String TAG = "SweeperProvider"; diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/TaxiProvider.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/TaxiProvider.java index 4e8031561a..783f8bda60 100644 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/TaxiProvider.java +++ b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/TaxiProvider.java @@ -11,6 +11,7 @@ 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; @@ -24,7 +25,7 @@ public *

* 网约车-出租车 */ -@Route( path = TaxiConst.PATH ) +@Route( path = OchCommonConst.TAXI_DRIVER ) class TaxiProvider implements IMogoOCH { private static final String TAG = "TaxiProvider"; diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/constant/TaxtServingStatusManager.kt b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/constant/TaxtServingStatusManager.kt deleted file mode 100644 index 7a42236e8b..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/constant/TaxtServingStatusManager.kt +++ /dev/null @@ -1,38 +0,0 @@ -package com.mogo.och.taxi.constant - -object TaxtServingStatusManager { - - /** - * 接单状态 - */ - private var openOrderStatus: TaxiOpenOrderStatusEnum = TaxiOpenOrderStatusEnum.None - - // region 是否可用接单 - @JvmStatic - fun isOpeningOrderStatus():Boolean{ - if(openOrderStatus==TaxiOpenOrderStatusEnum.Ordering){ - return true - } - return false - } - @JvmStatic - fun setOpenOrderStatus(status: Int) { - when (status) { - 0 -> { - this.openOrderStatus = TaxiOpenOrderStatusEnum.UnOrdering - } - 1 -> { - this.openOrderStatus = TaxiOpenOrderStatusEnum.Ordering - } - else -> { - this.openOrderStatus = TaxiOpenOrderStatusEnum.None - } - } - } - @JvmStatic - fun getOpenOrderStatus(): TaxiOpenOrderStatusEnum { - return openOrderStatus - } - - //endregion -} \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/model/TaxiModel.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/model/TaxiModel.java index f1928219a7..8db94e3362 100644 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/model/TaxiModel.java +++ b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/model/TaxiModel.java @@ -42,10 +42,8 @@ import com.mogo.eagle.core.utilcode.util.ToastUtils; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager; import com.mogo.och.common.module.biz.common.socketmessage.data.OCHOperationalMessage; -import com.mogo.och.common.module.biz.constant.LoginStatusManager; -import com.mogo.och.common.module.biz.constant.OchCommonConst; +import com.mogo.och.common.module.biz.login.LoginStatusManager; import com.mogo.och.common.module.biz.network.OchCommonServiceCallback; -import com.mogo.och.common.module.biz.provider.LoginService; import com.mogo.och.common.module.callback.OchAdasStartFailureCallback; import com.mogo.och.common.module.manager.AbnormalFactorsLoopManager; import com.mogo.och.common.module.manager.autopilotmanager.OCHAdasAbilityManager; @@ -79,7 +77,6 @@ import com.mogo.och.taxi.callback.ITaxiOrderStatusCallback; import com.mogo.och.taxi.constant.TaxiConst; import com.mogo.och.taxi.constant.TaxiOrderStatusEnum; import com.mogo.och.taxi.constant.TaxiOrderTypeEnum; -import com.mogo.och.taxi.constant.TaxtServingStatusManager; import com.mogo.och.taxi.network.TaxiServiceManager; import com.mogo.och.taxi.utils.OrderUtil; import com.mogo.och.taxi.utils.TaxiAnalyticsManager; @@ -139,8 +136,6 @@ public class TaxiModel { private double mLongitude, mLatitude; private MogoLocation mLocation = null; - private LoginService loginService; - private TaxiModel() { } @@ -168,7 +163,6 @@ public class TaxiModel { public void init(Context context) { mContext = context.getApplicationContext(); initListeners(); - loginService = (LoginService) ARouter.getInstance().build(OchCommonConst.LOGINSERVICE).navigation(); // TODO: 2021/8/27 因需要通过此回调的location进行坐标上传,暂改为全程监听,退出后再反注册, // 待后续整体调整location获取来源 @@ -214,7 +208,6 @@ public class TaxiModel { startOrStopOrderLoop(false); startOrStopCalculateRouteInfo(false); releaseListeners(); - loginService = null; } private void initListeners() { @@ -291,10 +284,11 @@ public class TaxiModel { //更新接单状态 public void updateCarStatus() { if (!LoginStatusManager.isLogin()) { - loginService.queryLoginStatusByNet(); + LoginStatusManager.queryLoginStatusByNet(); return; } - boolean currentOrderStatus = TaxtServingStatusManager.isOpeningOrderStatus(); + boolean currentOrderStatus = LoginStatusManager.isLogin(); + TaxiServiceManager.changeOrderServing(mContext, currentOrderStatus, new OchCommonServiceCallback() { @Override @@ -307,7 +301,7 @@ public class TaxiModel { // 上个状态是暂停接单 暂停成功 VoiceNotice.showNotice("开始接单啦!"); } - loginService.queryLoginStatusByNet(); + LoginStatusManager.queryLoginStatusByNet(); } } @@ -1065,8 +1059,8 @@ public class TaxiModel { CallerLogger.d(M_TAXI + TAG, "onIntentReceived = %s", intentStr); if (ConnectivityManager.CONNECTIVITY_ACTION.equals(intentStr)) { if (NetworkUtils.isConnected(mContext)) { - startOrStopOrderLoop(LoginStatusManager.isLogin() && TaxtServingStatusManager.isOpeningOrderStatus()); - loginService.queryLoginStatusByNet(); + startOrStopOrderLoop(LoginStatusManager.isLogin()); + LoginStatusManager.queryLoginStatusByNet(); } } } @@ -1735,7 +1729,7 @@ public class TaxiModel { // 登出 public void logout() { - loginService.loginOut(mLatitude, mLongitude); + LoginStatusManager.loginOut(mLatitude, mLongitude); } //导航去订单终点目的地 diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/LoginBusImpl.kt b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/LoginBusImpl.kt deleted file mode 100644 index c57492cd1e..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/LoginBusImpl.kt +++ /dev/null @@ -1,47 +0,0 @@ -package com.mogo.och.taxi.network - -import android.content.Context -import com.mogo.eagle.core.data.BaseData -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean -import com.mogo.och.common.module.biz.bean.TaxiLoginReqBean -import com.mogo.och.common.module.biz.bean.TaxiLoginRespBean -import com.mogo.och.common.module.biz.bean.TaxiLogoutReqBean -import com.mogo.och.common.module.biz.network.LoginDefaultManage -import com.mogo.och.common.module.biz.network.OchCommonServiceCallback - -class LoginBusImpl: LoginDefaultManage { - - override fun getPhoneCode( - context: Context, phone: String?, - callback: OchCommonServiceCallback? - ) { - OchCommonServiceManager.getPhoneCode(context,phone,callback) - } - - override fun gotoLoginBycode( - context: Context, - phone: String?, - code: String?, - location4Login: TaxiLoginReqBean.Location4Login?, - callback: OchCommonServiceCallback? - ) { - OchCommonServiceManager.gotoLoginBycode(context,phone,code,location4Login,callback) - } - - override fun logout( - context: Context, - location4Login: TaxiLogoutReqBean.Location4Login?, - callback: OchCommonServiceCallback? - ) { - OchCommonServiceManager.logout(context,location4Login,callback) - } - - override fun queryDriverServiceStatus( - context: Context, - callback: OchCommonServiceCallback? - ) { - OchCommonServiceManager.queryDriverServiceStatus(context,callback) - } - - -} \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/OchCommonServiceManager.kt b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/OchCommonServiceManager.kt deleted file mode 100644 index 47c58418ff..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/OchCommonServiceManager.kt +++ /dev/null @@ -1,109 +0,0 @@ -package com.mogo.och.taxi.network - -import android.content.Context -import com.mogo.och.common.module.biz.constant.OchCommonConst.Companion.getBaseUrl -import com.mogo.cloud.passport.MoGoAiCloudClientConfig -import com.mogo.och.common.module.biz.bean.TaxiLoginSmsReqBean -import com.mogo.och.common.module.biz.bean.TaxiLoginReqBean -import com.mogo.och.common.module.biz.bean.TaxiLoginRespBean -import com.mogo.och.common.module.biz.bean.TaxiLogoutReqBean -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean -import com.mogo.och.common.module.biz.constant.OchCommonConst -import com.mogo.cloud.passport.MoGoAiCloudClient -import com.mogo.eagle.core.data.BaseData -import com.mogo.eagle.core.network.MoGoRetrofitFactory -import com.mogo.commons.storage.SharedPrefsMgr -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 - -/** - * Created by pangfan on 2021/8/19 - */ -object OchCommonServiceManager { - - private const val TAG = "OchCommonServiceManager" - - private val mOCHTaxiServiceApi: OchLoginServiceApi = - MoGoRetrofitFactory.getInstance(getBaseUrl()).create( - OchLoginServiceApi::class.java - ) - - /** - * 获取手机验证码 - * @param context - * @param callback - */ - @JvmStatic - fun getPhoneCode( - context: Context, phone: String?, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.getPhoneCode( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - TaxiLoginSmsReqBean(phone) - ).transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "getPhoneCode")) - } - - /** - * 通过验证码登录 - * @param context - * @param callback - */ - @JvmStatic - fun gotoLoginBycode( - context: Context, phone: String?, code: String?, - location4Login: TaxiLoginReqBean.Location4Login?, - callback: OchCommonServiceCallback? - ) { - val sn = SharedPrefsMgr.getInstance().sn - mOCHTaxiServiceApi.gotoLoginBycode4Taxi( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - TaxiLoginReqBean(phone, code, sn, location4Login) - ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "gotoLoginBycode")) - } - - /** - * 登出 - */ - @JvmStatic - fun logout( - context: Context, - location4Login: TaxiLogoutReqBean.Location4Login?, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.logout4Taxi( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - TaxiLogoutReqBean(SharedPrefsMgr.getInstance().sn, location4Login) - ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "logout")) - } - - /** - * 接单状态和登录状态查询 - * - * @param context - * @param callback - */ - @JvmStatic - fun queryDriverServiceStatus( - context: Context, - callback: OchCommonServiceCallback? - ) { - if (SharedPrefsMgr.getInstance().token.isEmpty()) { - callback?.onFail(OchCommonConst.WAIT_TAKEN, "等待令牌中请稍等") - MoGoAiCloudClient.getInstance().refreshToken() - return - } - mOCHTaxiServiceApi.queryDriverServiceStatusAndLoginStatus( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - SharedPrefsMgr.getInstance().sn - ).transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverServiceStatus")) - } - -} \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/OchLoginServiceApi.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/OchLoginServiceApi.java deleted file mode 100644 index 19c9e85fbf..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/OchLoginServiceApi.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.mogo.och.taxi.network; -import com.mogo.eagle.core.data.BaseData; -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean; -import com.mogo.och.common.module.biz.bean.TaxiLoginReqBean; -import com.mogo.och.common.module.biz.bean.TaxiLoginRespBean; -import com.mogo.och.common.module.biz.bean.TaxiLoginSmsReqBean; -import com.mogo.och.common.module.biz.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 OchLoginServiceApi { - /** - * 获取手机验证码 - * - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) - @POST( "/autopilot-car-hailing/driver/v2/driver/taxi/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( "/autopilot-car-hailing/cab/flow/v1/driver/taxi/startOperation" ) - Observable gotoLoginBycode4Taxi(@Header("appId") String appId - , @Header("ticket") String ticket, @Body TaxiLoginReqBean data); - - /** - * 登出接口 - */ - @Headers({"Content-type:application/json;charset=UTF-8"}) - @POST("/autopilot-car-hailing/cab/flow/v1/driver/taxi/endOperation") - Observable logout4Taxi(@Header("appId") String appId, @Header("ticket") String ticket, - @Body TaxiLogoutReqBean data); - - /** - * 接单状态和登录状态查询 出租车司机端、小巴车司机端、小巴车乘客端 - * @param sn - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) - @GET( "/autopilot-car-hailing/operation/v1/driver/taxi/loginStatus") - Observable queryDriverServiceStatusAndLoginStatus(@Header ("appId") String appId - , @Header("ticket") String ticket, @Query("sn") String sn); - -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/presenter/TaxiPresenter.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/presenter/TaxiPresenter.java index be5e671701..6495795a39 100644 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/presenter/TaxiPresenter.java +++ b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/presenter/TaxiPresenter.java @@ -11,15 +11,13 @@ import androidx.lifecycle.LifecycleOwner; import com.mogo.commons.AbsMogoApplication; import com.mogo.commons.mvp.Presenter; -import com.mogo.eagle.core.data.map.MogoLocation; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager; import com.mogo.eagle.core.function.call.order.CallerOrderListenerManager; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean; -import com.mogo.och.common.module.biz.callback.ILoginCallback; -import com.mogo.och.common.module.biz.constant.LoginStatusManager; +import com.mogo.och.common.module.biz.login.ILoginCallback; +import com.mogo.och.common.module.biz.login.LoginStatusManager; import com.mogo.och.common.module.manager.autopilotmanager.OCHAdasAbilityManager; import com.mogo.och.common.module.voice.VoiceNotice; import com.mogo.och.taxi.bean.OrderQueryRespBean; @@ -30,7 +28,6 @@ import com.mogo.och.taxi.callback.ITaxiOrderStatusCallback; import com.mogo.och.taxi.constant.TaxiConst; import com.mogo.och.taxi.constant.TaxiDriverRoleEnum; import com.mogo.och.taxi.constant.TaxiOrderStatusEnum; -import com.mogo.och.taxi.constant.TaxtServingStatusManager; import com.mogo.och.taxi.model.TaxiModel; import com.mogo.och.taxi.ui.TaxiFragment; @@ -41,7 +38,7 @@ import java.util.List; /** * @author congtaowang * @since 2021/1/18 - * + *

* 描述 */ public class TaxiPresenter extends Presenter implements ITaxiADASStatusCallback, @@ -57,14 +54,14 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS } @Override - public void onCreate( @NonNull LifecycleOwner owner ) { - super.onCreate( owner ); - CallerLogger.d( M_TAXI + TAG, "网约车-出租车拿到订单" ); + public void onCreate(@NonNull LifecycleOwner owner) { + super.onCreate(owner); + CallerLogger.d(M_TAXI + TAG, "网约车-出租车拿到订单"); } @Override - public void onDestroy( @NonNull LifecycleOwner owner ) { - super.onDestroy( owner ); + public void onDestroy(@NonNull LifecycleOwner owner) { + super.onDestroy(owner); releaseListeners(); TaxiModel.getInstance().release(); @@ -84,12 +81,12 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS TaxiModel.getInstance().setMoGoAutopilotPlanningListener(null); } - private void runOnUIThread( Runnable executor ) { - if ( executor == null ) { + private void runOnUIThread(Runnable executor) { + if (executor == null) { return; } - if ( Looper.myLooper() != Looper.getMainLooper() ) { - UiThreadHandler.post( executor ); + if (Looper.myLooper() != Looper.getMainLooper()) { + UiThreadHandler.post(executor); } else { executor.run(); } @@ -105,14 +102,14 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS /** * 人工模式 */ - public void startManualDrive(){ + public void startManualDrive() { TaxiModel.getInstance().startServicePilotDone(); } /** * 跳过乘客验证环节 */ - public void jumpPassengerCheckDone(){ + public void jumpPassengerCheckDone() { TaxiModel.getInstance().jumpPassengerCheckDone(); } @@ -170,15 +167,15 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS } //导航去订单目的地 - public void startNaviToEndStation(boolean isShow){ - TaxiModel.getInstance().startNaviToEndStation(isShow); + public void startNaviToEndStation(boolean isShow) { + TaxiModel.getInstance().startNaviToEndStation(isShow); } - public void reportToEndDisAndTime(long lastSumLength, long duration){//米/秒 - TaxiModel.getInstance().reportOrderRemain(lastSumLength,duration); + public void reportToEndDisAndTime(long lastSumLength, long duration) {//米/秒 + TaxiModel.getInstance().reportOrderRemain(lastSumLength, duration); } - public void closeOrderByMan(){ + public void closeOrderByMan() { TaxiModel.getInstance().arriveTerminal(); } @@ -202,7 +199,7 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS @Override public void onAutopilotRunning() { runOnUIThread(() -> mView.updateAutopilotStatus( - IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING)); + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING)); } @@ -235,13 +232,13 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS @RequiresApi(api = Build.VERSION_CODES.P) @Override public void onCurrentOrderStatusChanged(OrderQueryRespBean.Result order) { - CallerLogger.d(M_TAXI + TAG,"order = "+order.toString()); - if (TaxiOrderStatusEnum.UserArriveAtStart.getCode() == order.orderStatus){ + CallerLogger.d(M_TAXI + TAG, "order = " + order.toString()); + if (TaxiOrderStatusEnum.UserArriveAtStart.getCode() == order.orderStatus) { TaxiModel.getInstance().queryAutopilotStatus(true); TaxiModel.getInstance().setStation(); } - if (TaxiOrderStatusEnum.OnTheWayToEnd.getCode() == order.orderStatus){ + if (TaxiOrderStatusEnum.OnTheWayToEnd.getCode() == order.orderStatus) { TaxiModel.getInstance().startDynamicCalculateRouteInfo(); TaxiModel.getInstance().setStation(); runOnUIThread(() -> { @@ -252,8 +249,8 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS } if (TaxiOrderStatusEnum.ArriveAtEnd.getCode() == order.orderStatus || - TaxiOrderStatusEnum.Cancel.getCode() == order.orderStatus || - TaxiOrderStatusEnum.JourneyCompleted.getCode() == order.orderStatus){ + TaxiOrderStatusEnum.Cancel.getCode() == order.orderStatus || + TaxiOrderStatusEnum.JourneyCompleted.getCode() == order.orderStatus) { TaxiModel.getInstance().startOrStopCalculateRouteInfo(false); TaxiModel.getInstance().cleanLineMarker(); TaxiModel.getInstance().cleanStation(); @@ -263,12 +260,12 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS */ mView.updateCtvAutopilotStatusTag(false); - if(TaxiOrderStatusEnum.ArriveAtEnd.getCode() == order.orderStatus){ + if (TaxiOrderStatusEnum.ArriveAtEnd.getCode() == order.orderStatus) { CallerOrderListenerManager.INSTANCE.invokeOrderStatus(false); } }); } - if(TaxiOrderStatusEnum.Cancel.getCode() == order.orderStatus){ + if (TaxiOrderStatusEnum.Cancel.getCode() == order.orderStatus) { VoiceNotice.showNotice("乘客已取消行程"); } runOnUIThread(() -> mView.updateCurrentOrderStatusChanged(order)); @@ -295,17 +292,17 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS @Override public void onCurrentOrderDistToEndChanged(long meters, long timeInSecond) { - runOnUIThread(() -> mView.onCurrentOrderDistToEndChanged(meters,timeInSecond)); + runOnUIThread(() -> mView.onCurrentOrderDistToEndChanged(meters, timeInSecond)); } @Override public void onNewBookingOrderGot(OrderQueryRespBean.Result order) { - runOnUIThread(() -> mView.onNewBookingOrderGot(order)); + runOnUIThread(() -> mView.onNewBookingOrderGot(order)); } @Override public void onGrabOrderExecuteDone() { - runOnUIThread(() -> mView.onGrabOrderExecuteDone()); + runOnUIThread(() -> mView.onGrabOrderExecuteDone()); } @Override @@ -320,12 +317,12 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS @Override public void onDriverHasCheckedPilotCondition(boolean isSafe) { - runOnUIThread(() -> mView.onCheckPilotConditionSafe(isSafe)); + runOnUIThread(() -> mView.onCheckPilotConditionSafe(isSafe)); } @Override public void onNaviToEnd(boolean isAmap, boolean isShow) { - runOnUIThread( () -> mView.onNaviToEnd(isAmap,isShow)); + runOnUIThread(() -> mView.onNaviToEnd(isAmap, isShow)); } @Override @@ -336,27 +333,21 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS } @Override - public void loginSuccess(DriverStatusQueryRespBean data) { - //设置 接单状态 - TaxtServingStatusManager.setOpenOrderStatus(data.data.servingStatus); + public void loginSuccess() { //设置 是否启动订单轮训 - TaxiModel.getInstance().startOrStopOrderLoop(LoginStatusManager.isLogin()&&TaxtServingStatusManager.isOpeningOrderStatus()); + TaxiModel.getInstance().startOrStopOrderLoop(LoginStatusManager.isLogin()); // 设置当前用户角色 String role = ""; - if (TaxiDriverRoleEnum.DEMO.getCode() == data.data.purpose) { + if (TaxiDriverRoleEnum.DEMO.getCode() == LoginStatusManager.getPurpose().getCode()) { role = TaxiConst.DEMO_USER; - } else if (TaxiDriverRoleEnum.TEST.getCode() == data.data.purpose) { + } else if (TaxiDriverRoleEnum.TEST.getCode() == LoginStatusManager.getPurpose().getCode()) { role = TaxiConst.TEST_USER; } String finalRole = role; runOnUIThread(() -> { - mView.updateOperationStatus(TaxtServingStatusManager.isOpeningOrderStatus(), finalRole); + mView.updateOperationStatus(LoginStatusManager.isLogin(), finalRole); }); } - @Override - public void loginFail(boolean isLogin) { - - } } diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiFragment.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiFragment.java index 89f97e6b1d..1e3b0d2e2d 100644 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiFragment.java +++ b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiFragment.java @@ -15,18 +15,13 @@ import androidx.annotation.Nullable; import androidx.annotation.RequiresApi; import androidx.fragment.app.FragmentTransaction; -import com.alibaba.android.arouter.launcher.ARouter; -import com.mogo.commons.module.status.MogoStatusManager; import com.mogo.eagle.core.data.temp.EventLogout; 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.LoginService; import com.mogo.och.taxi.R; import com.mogo.och.taxi.constant.TaxiOrderStatusEnum; import com.mogo.och.taxi.bean.OrderQueryRespBean; import com.mogo.och.taxi.bean.OrderQueryRouteInfoRespBean; import com.mogo.och.taxi.model.TaxiModel; -import com.mogo.och.taxi.network.LoginBusImpl; import com.mogo.och.taxi.presenter.TaxiPresenter; import com.mogo.och.taxi.utils.TPRouteDataTestUtils; @@ -61,15 +56,10 @@ public class TaxiFragment extends BaseTaxiTabFragment grabOrderFragmentWR; private WeakReference serverOrdersFragmentWR; private WeakReference personalDialogFragment = null; - private LoginService loginService; @Override public void onActivityCreated(@Nullable Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); - loginService = (LoginService) ARouter.getInstance().build(OchCommonConst.LOGINSERVICE).navigation(); - if(loginService!=null){ - loginService.registerFragment(this, getPresenter(),new LoginBusImpl()); - } } @Nullable @@ -162,8 +152,6 @@ public class TaxiFragment extends BaseTaxiTabFragment * 网约车-出租车-乘客端 */ -@Route(path = TaxiPassengerConst.PATH) +@Route(path = OchCommonConst.TAXI_PASSENGER) public class MogoOCHTaxiPassenger implements IMoGoFunctionProvider { private static final String TAG = "MogoOCHTaxiPassenger"; 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/TaxiUnmannedProvider.kt index 7679529957..c743a132e5 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/TaxiUnmannedProvider.kt @@ -7,6 +7,7 @@ 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.scene.SceneConstant +import com.mogo.och.common.module.biz.constant.OchCommonConst import com.mogo.och.taxi.constant.TaxiUnmannedConst import com.mogo.och.taxi.ui.base.TaxiFragment @@ -17,7 +18,7 @@ import com.mogo.och.taxi.ui.base.TaxiFragment * * 网约车-出租车 */ -@Route(path = TaxiUnmannedConst.PATH) +@Route(path = OchCommonConst.TAXI_UNMANNED_DRIVER) class TaxiUnmannedProvider : IMogoOCH { private var ochTaxiFragment: TaxiFragment? = null private var mActivity: FragmentActivity? = null diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/constant/TaxiCarServingStatusManager.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/constant/TaxiCarServingStatusManager.kt deleted file mode 100644 index d90f12096f..0000000000 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/constant/TaxiCarServingStatusManager.kt +++ /dev/null @@ -1,48 +0,0 @@ -package com.mogo.och.taxi.constant - -/** - * 车当前的 接单 状态管理类 - */ -object TaxiCarServingStatusManager { - - /** - * 接单状态 - */ - private var currentCarServingStatus: TaxiOpenOrderStatusEnum = TaxiOpenOrderStatusEnum.None - - /** - * 是否可接单状态 - */ - @JvmStatic - fun isCarServingStatus(): Boolean { - if (currentCarServingStatus == TaxiOpenOrderStatusEnum.Ordering) { - return true - } - return false - } - - /** - * 设置当前的接单状态 - */ - @JvmStatic - fun setCarServingStatus(status: Int) { - when (status) { - 0 -> { - this.currentCarServingStatus = TaxiOpenOrderStatusEnum.UnOrdering - } - - 1 -> { - this.currentCarServingStatus = TaxiOpenOrderStatusEnum.Ordering - } - - else -> { - this.currentCarServingStatus = TaxiOpenOrderStatusEnum.None - } - } - } - - @JvmStatic - fun getCurrentCarServingStatus(): TaxiOpenOrderStatusEnum { - return currentCarServingStatus - } -} \ No newline at end of file diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/constant/TaxiDriverRoleEnum.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/constant/TaxiDriverRoleEnum.kt deleted file mode 100644 index 07572efcd4..0000000000 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/constant/TaxiDriverRoleEnum.kt +++ /dev/null @@ -1,11 +0,0 @@ -package com.mogo.och.taxi.constant - -/** - * Created on 2021/12/7 - * 1 运营, 2 测试, 3演示 - */ -enum class TaxiDriverRoleEnum(val code: Int) { - OPERATION( 1), - TEST( 2), - DEMO( 3); -} \ No newline at end of file diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiDriverLoginImpl.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiDriverLoginImpl.kt deleted file mode 100644 index 305a5cfd41..0000000000 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiDriverLoginImpl.kt +++ /dev/null @@ -1,45 +0,0 @@ -package com.mogo.och.taxi.network - -import android.content.Context -import com.mogo.eagle.core.data.BaseData -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean -import com.mogo.och.common.module.biz.bean.TaxiLoginReqBean -import com.mogo.och.common.module.biz.bean.TaxiLoginRespBean -import com.mogo.och.common.module.biz.bean.TaxiLogoutReqBean -import com.mogo.och.common.module.biz.network.LoginDefaultManage -import com.mogo.och.common.module.biz.network.OchCommonServiceCallback - -class TaxiDriverLoginImpl : LoginDefaultManage { - - override fun getPhoneCode( - context: Context, phone: String?, - callback: OchCommonServiceCallback? - ) { - TaxiDriverLoginServiceManager.getPhoneCode(context, phone, callback) - } - - override fun gotoLoginBycode( - context: Context, - phone: String?, - code: String?, - location4Login: TaxiLoginReqBean.Location4Login?, - callback: OchCommonServiceCallback? - ) { - TaxiDriverLoginServiceManager.gotoLoginBycode(context, phone, code, location4Login, callback) - } - - override fun logout( - context: Context, - location4Login: TaxiLogoutReqBean.Location4Login?, - callback: OchCommonServiceCallback? - ) { - TaxiDriverLoginServiceManager.logout(context, location4Login, callback) - } - - override fun queryDriverServiceStatus( - context: Context, - callback: OchCommonServiceCallback? - ) { - TaxiDriverLoginServiceManager.queryDriverServiceStatus(context, callback) - } -} \ No newline at end of file diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiDriverLoginServiceApi.java b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiDriverLoginServiceApi.java deleted file mode 100644 index dd841840bf..0000000000 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiDriverLoginServiceApi.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.mogo.och.taxi.network; - -import com.mogo.eagle.core.data.BaseData; -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean; -import com.mogo.och.common.module.biz.bean.TaxiLoginRespBean; -import com.mogo.och.common.module.biz.bean.TaxiLoginSmsReqBean; -import com.mogo.och.taxi.bean.UnmannedLoginReqBean; -import com.mogo.och.taxi.bean.UnmannedLogoutReqBean; - -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 TaxiDriverLoginServiceApi { - /** - * 获取手机验证码 - * - * @return - */ - @Headers({"Content-type:application/json;charset=UTF-8"}) - @POST("/och-taxi-cabin/api/sms/v1/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-taxi-cabin/api/flow/v1/startOperation") - Observable gotoLoginBycode4Taxi(@Header("appId") String appId - , @Header("ticket") String ticket, @Body UnmannedLoginReqBean data); - - /** - * 登出接口 - */ - @Headers({"Content-type:application/json;charset=UTF-8"}) - @POST("/och-taxi-cabin/api/flow/v1/endOperation") - Observable logout4Taxi(@Header("appId") String appId, @Header("ticket") String ticket, - @Body UnmannedLogoutReqBean data); - - /** - * 接单状态和登录状态查询 出租车司机端、小巴车司机端、小巴车乘客端 - * - * @param sn - * @return - */ - @Headers({"Content-type:application/json;charset=UTF-8"}) - @GET("/och-taxi-cabin/api/business/v1/loginStatus") - Observable queryDriverServiceStatusAndLoginStatus(@Header("appId") String appId - , @Header("ticket") String ticket, @Query("sn") String sn); - -} diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiDriverLoginServiceManager.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiDriverLoginServiceManager.kt deleted file mode 100644 index 24428404ae..0000000000 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/network/TaxiDriverLoginServiceManager.kt +++ /dev/null @@ -1,129 +0,0 @@ -package com.mogo.och.taxi.network - -import android.content.Context -import android.util.Log -import com.mogo.och.common.module.biz.constant.OchCommonConst.Companion.getBaseUrl -import com.mogo.cloud.passport.MoGoAiCloudClientConfig -import com.mogo.och.common.module.biz.bean.TaxiLoginSmsReqBean -import com.mogo.och.common.module.biz.bean.TaxiLoginReqBean -import com.mogo.och.common.module.biz.bean.TaxiLoginRespBean -import com.mogo.och.common.module.biz.bean.TaxiLogoutReqBean -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean -import com.mogo.och.common.module.biz.constant.OchCommonConst -import com.mogo.cloud.passport.MoGoAiCloudClient -import com.mogo.eagle.core.data.BaseData -import com.mogo.eagle.core.network.MoGoRetrofitFactory -import com.mogo.eagle.core.network.utils.GsonUtil -import com.mogo.commons.storage.SharedPrefsMgr -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.taxi.bean.GcjLatLon -import com.mogo.och.taxi.bean.UnmannedLoginReqBean -import com.mogo.och.taxi.bean.UnmannedLogoutReqBean - -/** - * Created by pangfan on 2021/8/19 - */ -object TaxiDriverLoginServiceManager { - - private const val TAG = "OchCommonServiceManager" - - private val mOCHTaxiServiceApi: TaxiDriverLoginServiceApi = - MoGoRetrofitFactory.getInstance(getBaseUrl()).create( - TaxiDriverLoginServiceApi::class.java - ) - - /** - * 获取手机验证码 - * @param context - * @param callback - */ - @JvmStatic - fun getPhoneCode( - context: Context, phone: String?, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.getPhoneCode( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - TaxiLoginSmsReqBean(phone) - ).transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "getPhoneCode")) - } - - /** - * 通过验证码登录 - * @param context - * @param callback - */ - @JvmStatic - fun gotoLoginBycode( - context: Context, phone: String?, code: String?, - location4Login: TaxiLoginReqBean.Location4Login?, - callback: OchCommonServiceCallback? - ) { - //新saas 接口变换, 参数变换, 重新组装 - val unmannedLocation4Login = location4Login?.let { - GcjLatLon( - it.lat,it.lon - ) - } - Log.d("taxiUnmanned-request = " , GsonUtil.jsonFromObject(mOCHTaxiServiceApi)) - val sn = SharedPrefsMgr.getInstance().sn - mOCHTaxiServiceApi.gotoLoginBycode4Taxi( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - UnmannedLoginReqBean(phone, code, sn, unmannedLocation4Login) - ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "gotoLoginBycode")) - } - - /** - * 登出 - */ - @JvmStatic - fun logout( - context: Context, - location4Login: TaxiLogoutReqBean.Location4Login?, - callback: OchCommonServiceCallback? - ) { - //新saas 接口变换, 参数变换, 重新组装 - val unmannedLocation4Login = location4Login?.let { - GcjLatLon( - it.lat,it.lon - ) - } - Log.d("taxiUnmanned-request = " , GsonUtil.jsonFromObject(mOCHTaxiServiceApi)) - - mOCHTaxiServiceApi.logout4Taxi( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - UnmannedLogoutReqBean(SharedPrefsMgr.getInstance().sn, unmannedLocation4Login) - ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "logout")) - } - - /** - * 接单状态和登录状态查询 - * - * @param context - * @param callback - */ - @JvmStatic - fun queryDriverServiceStatus( - context: Context, - callback: OchCommonServiceCallback? - ) { - if (SharedPrefsMgr.getInstance().token.isEmpty()) { - callback?.onFail(OchCommonConst.WAIT_TAKEN, "等待令牌中请稍等") - MoGoAiCloudClient.getInstance().refreshToken() - return - } - mOCHTaxiServiceApi.queryDriverServiceStatusAndLoginStatus( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - SharedPrefsMgr.getInstance().sn - ).transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverServiceStatus")) - } - -} \ No newline at end of file diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/base/TaxiFragment.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/base/TaxiFragment.kt index a08a6a4805..876c8bf849 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/base/TaxiFragment.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/base/TaxiFragment.kt @@ -6,7 +6,6 @@ import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import androidx.fragment.app.FragmentTransaction -import com.alibaba.android.arouter.launcher.ARouter import com.mogo.commons.module.status.MogoStatusManager import com.mogo.commons.module.status.StatusDescriptor import com.mogo.eagle.core.data.temp.EventLogout @@ -15,13 +14,10 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.e import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.core.utilcode.util.ToastUtils import com.mogo.eagle.core.utilcode.util.UiThreadHandler -import com.mogo.och.common.module.biz.constant.OchCommonConst -import com.mogo.och.common.module.biz.provider.LoginService import com.mogo.och.common.module.utils.FlowBus import com.mogo.och.taxi.R import com.mogo.och.taxi.constant.TaxiDriverEventConst import com.mogo.och.taxi.constant.TaxiOrderStatusEnum -import com.mogo.och.taxi.network.TaxiDriverLoginImpl import com.mogo.och.taxi.ui.operational.TaxiOperationalDialogFragment import com.mogo.och.taxi.ui.routing.TaxiRoutingFragment import com.mogo.och.taxi.ui.task.TaxiTaskModel @@ -49,7 +45,6 @@ class TaxiFragment : BaseTaxiTabFragment(), private var taskTabFragment: WeakReference? = null private var personalDialogFragment: WeakReference? = null private var routingVerifyFragment: WeakReference? = null - private var loginService: LoginService? = null @Subscribe(threadMode = ThreadMode.MAIN) fun changeOverview(eventLogout: EventLogout) { @@ -83,9 +78,6 @@ class TaxiFragment : BaseTaxiTabFragment(), override fun onActivityCreated(savedInstanceState: Bundle?) { super.onActivityCreated(savedInstanceState) - loginService = - ARouter.getInstance().build(OchCommonConst.LOGINSERVICE).navigation() as LoginService - loginService?.registerFragment(this, presenter, TaxiDriverLoginImpl()) } override fun onCreateView( @@ -225,8 +217,6 @@ class TaxiFragment : BaseTaxiTabFragment(), override fun onDestroyView() { super.onDestroyView() - loginService!!.unRegisterFragment() - loginService = null EventBus.getDefault().unregister(this) } diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/base/TaxiPresenter.java b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/base/TaxiPresenter.java index 7cf4e7c07b..d9a7e154bb 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/base/TaxiPresenter.java +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/base/TaxiPresenter.java @@ -12,14 +12,13 @@ import com.mogo.eagle.core.data.map.MogoLocation; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; -import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean; -import com.mogo.och.common.module.biz.callback.ILoginCallback; +import com.mogo.och.common.module.biz.login.ILoginCallback; +import com.mogo.och.common.module.biz.login.LoginStatusManager; import com.mogo.och.common.module.manager.autopilotmanager.OCHAdasAbilityManager; import com.mogo.och.taxi.callback.ITaxiADASStatusCallback; import com.mogo.och.taxi.callback.ITaxiControllerStatusCallback; import com.mogo.och.taxi.callback.ITaxiOrderStatusCallback; -import com.mogo.och.taxi.constant.TaxiCarServingStatusManager; -import com.mogo.och.taxi.constant.TaxiDriverRoleEnum; +import com.mogo.och.common.module.biz.login.TaxiDriverRoleEnum; import com.mogo.och.taxi.constant.TaxiUnmannedConst; import com.mogo.och.taxi.ui.routing.TaxiRoutingModel; import com.mogo.och.taxi.ui.task.TaxiTaskModel; @@ -200,20 +199,18 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS @Override - public void loginSuccess(DriverStatusQueryRespBean data) { - //设置 接单状态 - TaxiCarServingStatusManager.setCarServingStatus(data.data.servingStatus); + public void loginSuccess() { // 设置当前用户角色 String role = ""; - if (TaxiDriverRoleEnum.DEMO.getCode() == data.data.purpose) { + if (TaxiDriverRoleEnum.DEMO == LoginStatusManager.getPurpose()) { role = TaxiUnmannedConst.DEMO_USER; - } else if (TaxiDriverRoleEnum.TEST.getCode() == data.data.purpose) { + } else if (TaxiDriverRoleEnum.TEST == LoginStatusManager.getPurpose()) { role = TaxiUnmannedConst.TEST_USER; } String finalRole = role; runOnUIThread(() -> { - mView.updateOperationStatus(TaxiCarServingStatusManager.isCarServingStatus(), finalRole); + mView.updateOperationStatus(LoginStatusManager.isLogin(), finalRole); }); if (!TaxiTaskModel.INSTANCE.checkCurrentTaskCondition()) { @@ -223,10 +220,6 @@ public class TaxiPresenter extends Presenter implements ITaxiADASS TaxiTaskModel.INSTANCE.updatePrepareTaskDelayUI(); } - @Override - public void loginFail(boolean isLogin) { - } - public void stopAutoStartAutopilot() { TaxiTaskModel.INSTANCE.stopAutoStartAutopilot(); } diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/task/TaxiTaskModel.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/task/TaxiTaskModel.kt index f04a93a918..4c58840930 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/task/TaxiTaskModel.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/task/TaxiTaskModel.kt @@ -40,10 +40,10 @@ import com.mogo.eagle.core.utilcode.util.ToastUtils import com.mogo.eagle.core.utilcode.util.UiThreadHandler import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager import com.mogo.och.common.module.biz.common.socketmessage.data.OCHOperationalMessage -import com.mogo.och.common.module.biz.constant.LoginStatusManager +import com.mogo.och.common.module.biz.login.LoginStatusManager 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.provider.LoginService +import com.mogo.och.common.module.biz.login.LoginService import com.mogo.och.common.module.callback.OchAdasStartFailureCallback import com.mogo.och.common.module.manager.AbnormalFactorsLoopManager import com.mogo.och.common.module.manager.autopilotmanager.OCHAdasAbilityManager @@ -68,7 +68,6 @@ import com.mogo.och.taxi.callback.ITaxiOrderStatusCallback import com.mogo.och.taxi.callback.ITaxiTaskWithOrderCallback import com.mogo.och.taxi.constant.TaskStatusEnum import com.mogo.och.taxi.constant.TaskTypeEnum -import com.mogo.och.taxi.constant.TaxiCarServingStatusManager import com.mogo.och.taxi.constant.TaxiOrderStatusEnum import com.mogo.och.taxi.constant.TaxiUnmannedConst import com.mogo.och.taxi.constant.TaxiUnmannedConst.Companion.BUSINESSTYPE @@ -201,15 +200,12 @@ object TaxiTaskModel { } fun init() { - loginService = - ARouter.getInstance().build(OchCommonConst.LOGINSERVICE).navigation() as LoginService initListeners() RxJavaUtils.setErrorHandler(TAG) } fun release() { releaseListeners() - loginService = null } private fun initListeners() { @@ -513,7 +509,7 @@ object TaxiTaskModel { d(TAG, "mNetWorkIntentListener: onIntentReceived=$intentStr") if ((ConnectivityManager.CONNECTIVITY_ACTION == intentStr)) { if (NetworkUtils.isConnected(mContext)) { - loginService?.queryLoginStatusByNet() + LoginStatusManager.queryLoginStatusByNet() DebugView.printInfoMsg("[网络状态变化] isConnected=true") } else { DebugView.printErrorMsg("[网络状态变化] isConnected=false") @@ -996,7 +992,7 @@ object TaxiTaskModel { d( TAG, "prepareNextTask onSuccess:${GsonUtil.jsonFromObject(data)}, " + - "isCarServingStatus = ${TaxiCarServingStatusManager.isCarServingStatus()}" + "isCarServingStatus = ${LoginStatusManager.isLogin()}" ) DebugView.printInfoMsg("[PrepareNextTask] 请求success") isPrepareingNextTask = false @@ -1006,7 +1002,7 @@ object TaxiTaskModel { DebugView.printErrorMsg("[PrepareNextTask] 请求fail, code=$code ,msg=$msg") d(TAG, "prepareNextTask onFail: code=$code ,msg=$msg") isPrepareingNextTask = false - if (LoginStatusManager.isLogin() && TaxiCarServingStatusManager.isCarServingStatus() + if (LoginStatusManager.isLogin() && QueryCurrentTaskRespBean.isTaskCompleteTaskType(mCurrentTaskWithOrder)) { mCurrentTaskWithOrder?.endSite?.siteId?.also { startPrepareTaskDelay(TaxiUnmannedConst.START_PREPARE_TASK_RETRY_INTERVAL,it) @@ -1020,7 +1016,7 @@ object TaxiTaskModel { "net = ${NetworkUtils.isConnected(mContext)}") d(TAG, "prepareNextTask onError, , net = ${NetworkUtils.isConnected(mContext)}") isPrepareingNextTask = false - if (LoginStatusManager.isLogin() && TaxiCarServingStatusManager.isCarServingStatus() + if (LoginStatusManager.isLogin() && QueryCurrentTaskRespBean.isTaskCompleteTaskType(mCurrentTaskWithOrder)) { mCurrentTaskWithOrder?.endSite?.siteId?.also { startPrepareTaskDelay(TaxiUnmannedConst.START_PREPARE_TASK_RETRY_INTERVAL,it) @@ -1106,17 +1102,17 @@ object TaxiTaskModel { fun updateCarServingStatus() { if (!LoginStatusManager.isLogin()) { - loginService?.queryLoginStatusByNet() + LoginStatusManager.queryLoginStatusByNet() return } - if (TaxiCarServingStatusManager.isCarServingStatus()) {//接单状态下,去结束 + if (LoginStatusManager.isLogin()) {//接单状态下,去结束 DebugView.printInfoMsg("[暂停接单] 准备发送请求") TaxiTaskWithOrderServiceManager.endService( mContext, object : OchCommonServiceCallback { override fun onSuccess(data: BaseData?) { DebugView.printInfoMsg("[暂停接单] 请求success") - loginService?.queryLoginStatusByNet() + LoginStatusManager.queryLoginStatusByNet() //需要将虚拟任务停掉, 虚拟任务会再开始接单后获取新的 mDriveToNearestStationTask = null mTaxiCarServiceCallback?.onCarEndServiceSuccess( @@ -1146,7 +1142,7 @@ object TaxiTaskModel { if (data == null) return DebugView.printInfoMsg("[开始接单] 请求success") d(TAG, "data.data=" + GsonUtil.jsonFromObject(data.data)) - loginService?.queryLoginStatusByNet() + LoginStatusManager.queryLoginStatusByNet() mCurrentTaskWithOrder?.apply { if (endSite != null) { when { @@ -1450,7 +1446,7 @@ object TaxiTaskModel { // 登出 fun logout() { - loginService?.loginOut( + LoginStatusManager.loginOut( getChassisLocationGCJ02().latitude, getChassisLocationGCJ02().longitude ) @@ -1539,7 +1535,7 @@ object TaxiTaskModel { } fun updatePrepareTaskDelayUI() { - if (!TaxiCarServingStatusManager.isCarServingStatus()){ + if (!LoginStatusManager.isLogin()){ mTaxiTaskWithOrderCallbackMap.forEach { val listener = it.value listener.onStartPrepareTaskUI(0, false) 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 index ae1351af5f..8ec771aa7a 100644 --- 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 @@ -11,6 +11,7 @@ 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; @@ -23,7 +24,7 @@ import org.jetbrains.annotations.Nullable; *

* 网约车-出租车-乘客端 */ -@Route(path = TaxiPassengerConst.PATH) +@Route(path = OchCommonConst.TAXI_UNMANNED_PASSENGER) public class MogoOCHTaxiPassenger implements IMoGoFunctionProvider { private static final String TAG = "MogoOCHTaxiPassenger"; diff --git a/app/build.gradle b/app/build.gradle index cb6369e1e0..8c73f2512b 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -137,6 +137,8 @@ android { // ⑤构建的是否是演示(美化)模式 buildConfigField 'boolean', 'IS_DEMO_MODE', 'false' + buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.8.102\"" + // 是否支持卡顿检测 buildConfigField 'boolean', 'IS_SUPPORT_JUNK_DETECT', "${rootProject.isJunkDetectEnable()}" @@ -270,8 +272,7 @@ dependencies { androidTestImplementation project(':core:mogo-core-function-call') androidTestImplementation project(':core:mogo-core-res') - - apply from: "./script/functions/och.gradle" + implementation project(':OCH:facade') androidTestImplementation rootProject.ext.dependencies.androidx_test_core androidTestImplementation rootProject.ext.dependencies.androidx_test_core_ktx diff --git a/app/script/productFlavors/bus.gradle b/app/script/productFlavors/bus.gradle index 0597162542..09f87fdf7e 100644 --- a/app/script/productFlavors/bus.gradle +++ b/app/script/productFlavors/bus.gradle @@ -7,18 +7,11 @@ project.android.productFlavors { manifestPlaceholders = [ // 标识 CHANNEL_VALUE_HEAD: "Bus", - // 在启动的时候把Task给清空 -// ACTIVITY_ROOT : true, - // Activity的朝向 -// SCREEN_ORIENTATION:"landscape", ] // ①标识 buildConfigField 'String', 'APP_IDENTITY_MODE_HEAD', "\"Bus\"" - // ②连接的工控机IP地址 - buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.8.102\"" - if (isCurrentDriver("bus")) { // ③是否需要重写状态栏 buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' diff --git a/app/script/productFlavors/charter.gradle b/app/script/productFlavors/charter.gradle index 1177dbf48f..9d0edc8871 100644 --- a/app/script/productFlavors/charter.gradle +++ b/app/script/productFlavors/charter.gradle @@ -7,17 +7,10 @@ project.android.productFlavors { manifestPlaceholders = [ CHANNEL_VALUE_HEAD: "Charter", - // 在启动的时候把Task给清空 -// ACTIVITY_ROOT : true, - // Activity的朝向 -// SCREEN_ORIENTATION:"landscape", ] // ①标识 buildConfigField 'String', 'APP_IDENTITY_MODE_HEAD', "\"Charter\"" - // ②连接的工控机IP地址 - buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.8.102\"" - // ④构建 是否支持多屏异显异交互 buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' diff --git a/app/script/productFlavors/shuttle.gradle b/app/script/productFlavors/shuttle.gradle index dbe16ce151..8f06d2dbdb 100644 --- a/app/script/productFlavors/shuttle.gradle +++ b/app/script/productFlavors/shuttle.gradle @@ -8,43 +8,34 @@ project.android.productFlavors { manifestPlaceholders = [ // 标识 CHANNEL_VALUE_HEAD: "Shuttle", - // 在启动的时候把Task给清空 -// ACTIVITY_ROOT : true, ] // ①标识 buildConfigField 'String', 'APP_IDENTITY_MODE_HEAD', "\"Shuttle\"" - // ②连接的工控机IP地址 - buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.8.102\"" - if (isCurrentDriver("shuttle")) { // ③是否需要重写状态栏 buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' // ④构建 是否支持多屏异显异交互 buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' - manifestPlaceholders.put("SCREEN_ORIENTATION", "landscape") } else if (isCurrentPassenger("shuttle")) { if (isM2()) { // ③是否需要重写状态栏 buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'true' // ④构建 是否支持多屏异显异交互 buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' - manifestPlaceholders.put("SCREEN_ORIENTATION", "portrait") } if (isJL()) { // ③是否需要重写状态栏 buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'true' // ④构建 是否支持多屏异显异交互 buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'true' - manifestPlaceholders.put("SCREEN_ORIENTATION", "landscape") } } else { // ③是否需要重写状态栏 buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'true' // ④构建 是否支持多屏异显异交互 buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'true' - manifestPlaceholders.put("SCREEN_ORIENTATION", "landscape") } } } \ No newline at end of file diff --git a/app/script/productFlavors/sweeperCloud.gradle b/app/script/productFlavors/sweeperCloud.gradle index 6016cb90e2..57a356beff 100644 --- a/app/script/productFlavors/sweeperCloud.gradle +++ b/app/script/productFlavors/sweeperCloud.gradle @@ -6,18 +6,11 @@ project.android.productFlavors { manifestPlaceholders = [ // 标识 CHANNEL_VALUE_HEAD: "Sweeper", - // 在启动的时候把Task给清空 -// ACTIVITY_ROOT : true, - // Activity的朝向 -// SCREEN_ORIENTATION:"landscape", ] // ①标识 buildConfigField 'String', 'APP_IDENTITY_MODE_HEAD', "\"Sweeper\"" - // ②连接的工控机IP地址 - buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.8.102\"" - // ③是否需要重写状态栏 buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' diff --git a/app/script/productFlavors/sweeperOperate.gradle b/app/script/productFlavors/sweeperOperate.gradle index 7391c3b2f5..2369092ea9 100644 --- a/app/script/productFlavors/sweeperOperate.gradle +++ b/app/script/productFlavors/sweeperOperate.gradle @@ -6,18 +6,11 @@ project.android.productFlavors { manifestPlaceholders = [ // 标识 CHANNEL_VALUE_HEAD: "Sweeper", - // 在启动的时候把Task给清空 -// ACTIVITY_ROOT : true, - // Activity的朝向 -// SCREEN_ORIENTATION:"landscape", ] // ①标识 buildConfigField 'String', 'APP_IDENTITY_MODE_HEAD', "\"Sweeper\"" - // ②连接的工控机IP地址 - buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.8.102\"" - // ③是否需要重写状态栏 buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' diff --git a/app/script/productFlavors/taxi.gradle b/app/script/productFlavors/taxi.gradle index 6564946ad4..a444f2e61c 100644 --- a/app/script/productFlavors/taxi.gradle +++ b/app/script/productFlavors/taxi.gradle @@ -5,30 +5,20 @@ project.android.productFlavors { manifestPlaceholders = [ CHANNEL_VALUE_HEAD: "Taxi", - // Activity的朝向 -// SCREEN_ORIENTATION:"landscape", ] // ①标识 buildConfigField 'String', 'APP_IDENTITY_MODE_HEAD', "\"Taxi\"" - // ②连接的工控机IP地址 - buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.1.102\"" - // ④构建 是否支持多屏异显异交互 buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' if (isCurrentDriver("taxi")) { - // 在启动的时候把Task给清空 - manifestPlaceholders.put("ACTIVITY_ROOT", true) // ③是否需要重写状态栏 buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' }else if (isCurrentPassenger("taxi")) { - // 在启动的时候把Task给清空 - manifestPlaceholders.put("ACTIVITY_ROOT", false) // ③是否需要重写状态栏 buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'true' }else { - manifestPlaceholders.put("ACTIVITY_ROOT", false) // ③是否需要重写状态栏 buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' } diff --git a/app/script/productFlavors/taxiunmanned.gradle b/app/script/productFlavors/taxiunmanned.gradle index 84c7697b6a..ac861e859e 100644 --- a/app/script/productFlavors/taxiunmanned.gradle +++ b/app/script/productFlavors/taxiunmanned.gradle @@ -5,30 +5,20 @@ project.android.productFlavors { dimension "product" manifestPlaceholders = [ CHANNEL_VALUE_HEAD: "Taxi", - // Activity的朝向 -// SCREEN_ORIENTATION:"landscape", ] // ①标识 buildConfigField 'String', 'APP_IDENTITY_MODE_HEAD', "\"Taxi\"" - // ②连接的工控机IP地址 - buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.1.102\"" - // ④构建 是否支持多屏异显异交互 buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' if (isCurrentDriver("taxi")) { - // 在启动的时候把Task给清空 - manifestPlaceholders.put("ACTIVITY_ROOT", true) // ③是否需要重写状态栏 buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' }else if (isCurrentPassenger("taxi")) { - // 在启动的时候把Task给清空 - manifestPlaceholders.put("ACTIVITY_ROOT", false) // ③是否需要重写状态栏 buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'true' }else { - manifestPlaceholders.put("ACTIVITY_ROOT", false) // ③是否需要重写状态栏 buildConfigField 'boolean', 'IS_REPLACE_STATUSVIEW', 'false' } diff --git a/app/src/f8xxLauncherOnlineRelease/AndroidManifest.xml b/app/src/f8xxLauncherOnlineRelease/AndroidManifest.xml deleted file mode 100644 index d755054676..0000000000 --- a/app/src/f8xxLauncherOnlineRelease/AndroidManifest.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - \ No newline at end of file diff --git a/settings.gradle b/settings.gradle index 8cd044ade9..5b164b1816 100644 --- a/settings.gradle +++ b/settings.gradle @@ -70,6 +70,8 @@ include ':OCH:taxi:unmanned-passenger' include(':OCH:common:common') include ':OCH:common:data' +include ':OCH:common:biz' +include ':OCH:facade' include ':OCH:sweeper:driver'