Merge branch 'dev_robotaxi-d_240401_6.4.0' into dev_robotaxi-d_240401_6.4.0_work_order

This commit is contained in:
xuxinchao
2024-04-18 19:58:27 +08:00
513 changed files with 7630 additions and 5896 deletions

View File

@@ -1,6 +1,7 @@
apply plugin: 'com.android.library' apply plugin: 'com.android.library'
apply plugin: 'kotlin-android' apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions' apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'
android { android {
compileSdkVersion rootProject.ext.android.compileSdkVersion compileSdkVersion rootProject.ext.android.compileSdkVersion
@@ -15,9 +16,10 @@ android {
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles "consumer-rules.pro" consumerProguardFiles "consumer-rules.pro"
javaCompileOptions { kapt {
annotationProcessorOptions { useBuildCache = false
arguments = [AROUTER_MODULE_NAME: project.getName()] arguments {
arg("AROUTER_MODULE_NAME", "bus"+project.getName())
} }
} }
} }
@@ -42,21 +44,6 @@ android {
} }
} }
flavorDimensions "vehicle"
productFlavors {
// 车型:金旅星辰、开沃 小巴业务
jinlvvan {
dimension "vehicle"
buildConfigField 'int', 'NEW_TEST', '0'
}
// 车型金旅m2 小巴业务
m2 {
dimension "vehicle"
buildConfigField 'int', 'NEW_TEST', '1'
}
}
} }
dependencies { dependencies {
@@ -64,7 +51,7 @@ dependencies {
implementation rootProject.ext.dependencies.kotlinstdlib implementation rootProject.ext.dependencies.kotlinstdlib
implementation rootProject.ext.dependencies.androidxappcompat implementation rootProject.ext.dependencies.androidxappcompat
implementation rootProject.ext.dependencies.arouter implementation rootProject.ext.dependencies.arouter
annotationProcessor rootProject.ext.dependencies.aroutercompiler kapt rootProject.ext.dependencies.aroutercompiler
implementation rootProject.ext.dependencies.androidxconstraintlayout implementation rootProject.ext.dependencies.androidxconstraintlayout
implementation rootProject.ext.dependencies.amapnavi3dmap implementation rootProject.ext.dependencies.amapnavi3dmap

View File

@@ -0,0 +1,31 @@
package com.mogo.och.bus
import android.content.Context
import androidx.fragment.app.Fragment
import com.alibaba.android.arouter.facade.annotation.Route
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.och.bus.fragment.BusFragment
import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.biz.provider.CommonService
import com.mogo.och.common.module.biz.provider.CommonServiceImpl
/**
* 网约车小巴业务实现入口
*
* @author tongchenfei
*/
@Route(path = OchCommonConst.BUS_DRIVER)
class BusDriverProvider : CommonServiceImpl() {
private val tag = BusDriverProvider::class.java.simpleName
private lateinit var busFragment: BusFragment
override fun getFragment(): Fragment {
return busFragment
}
override fun init(context: Context) {
CallerLogger.d(tag, "准备show fragment")
busFragment = BusFragment()
}
}

View File

@@ -1,100 +0,0 @@
package com.mogo.och.bus;
import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_BUS;
import android.content.Context;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentActivity;
import androidx.fragment.app.FragmentManager;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.mogo.eagle.core.function.call.setting.CallerMoGoUiSettingManager;
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger;
import com.mogo.och.bus.constant.BusConst;
import com.mogo.och.bus.fragment.BusFragment;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
/**
* 网约车小巴业务实现入口
*
* @author tongchenfei
*/
@Route(path = BusConst.PATH)
public class BusProvider implements IMogoOCH {
private static final String TAG = "BusProvider";
private BusFragment busFragment;
private int containerId;
private FragmentActivity activity;
/**
* 进入鹰眼模式,设置手势缩放地图失效
*/
private void stepIntoVrMode() {
CallerLogger.d(M_BUS + TAG, "进入vr模式");
CallerMoGoUiSettingManager.INSTANCE.stepInNightMode();//夜间模式 状态栏字体颜色变黑
}
@Override
public void init(Context context) {
}
private void showFragment() {
FragmentManager supportFragmentManager = activity.getSupportFragmentManager();
if (busFragment == null) {
CallerLogger.d(TAG, "准备add fragment======");
Fragment fragmentByTag = supportFragmentManager.findFragmentByTag(BusFragment.TAG);
if (fragmentByTag instanceof BusFragment) {
busFragment = (BusFragment) fragmentByTag;
} else {
busFragment = new BusFragment();
}
if(!busFragment.isAdded()) {
supportFragmentManager.beginTransaction().add(containerId, busFragment, BusFragment.TAG).commitAllowingStateLoss();
}
return;
}
CallerLogger.d(TAG, "准备show fragment");
supportFragmentManager.beginTransaction().show(busFragment).commitAllowingStateLoss();
}
private void hideFragment() {
if (busFragment != null) {
CallerLogger.d(TAG, "准备hide fragment");
activity.getSupportFragmentManager().beginTransaction().hide(busFragment).commitAllowingStateLoss();
}
}
@Override
public void createCoverage(FragmentActivity activity, int containerId) {
}
@NotNull
@Override
public String getFunctionName() {
return TAG;
}
@Nullable
@Override
public Fragment createCoverage(@Nullable FragmentActivity fragmentActivity, @Nullable Integer integer) {
this.containerId = integer;
this.activity = fragmentActivity;
showFragment();
return null;
}
@Override
public void onDestroy() {
//若不调用finish, 设置中打开关闭UITouch,会造成och fragment 重叠
if (activity == null) return;
activity.finish();
}
}

View File

@@ -1,24 +0,0 @@
package com.mogo.och.bus;
import androidx.annotation.IdRes;
import androidx.fragment.app.FragmentActivity;
import com.mogo.eagle.core.function.api.base.IMoGoFunctionProvider;
public
/**
* @author congtaowang
* @since 2021/1/15
*
* 网约车抽象接口
*/
interface IMogoOCH extends IMoGoFunctionProvider {
/**
* 初始化网约车容器
*
* @param activity
* @param containerId 容器ID
*/
void createCoverage(FragmentActivity activity, @IdRes int containerId);
}

View File

@@ -74,7 +74,7 @@ public abstract class BaseBusTabFragment<V extends IView, P extends Presenter<V>
private FrameLayout flStationPanelContainer; private FrameLayout flStationPanelContainer;
private BizMapView mapBizView; private BizMapView mapBizView;
private Group groupTestPanel; private Group groupTestPanel;
private TrafficDataView mTrafficDataView; // private TrafficDataView mTrafficDataView;
// private BusTrafficLightView mTrafficLightView; // private BusTrafficLightView mTrafficLightView;
//远景和中景的切换 //远景和中景的切换
@@ -92,6 +92,7 @@ public abstract class BaseBusTabFragment<V extends IView, P extends Presenter<V>
public boolean isAnimateRunning = false; public boolean isAnimateRunning = false;
/** /**
* 滑动按钮触发的事件 * 滑动按钮触发的事件
*/ */
@@ -123,7 +124,15 @@ public abstract class BaseBusTabFragment<V extends IView, P extends Presenter<V>
// tvOperationStatus = findViewById(R.id.module_mogo_och_operation_status); // tvOperationStatus = findViewById(R.id.module_mogo_och_operation_status);
tvArrived = findViewById(R.id.module_mogo_och_arrived_tv); tvArrived = findViewById(R.id.module_mogo_och_arrived_tv);
mTrafficDataView = (TrafficDataView) findViewById(R.id.bus_arc); // mTrafficDataView = (TrafficDataView) findViewById(R.id.bus_arc);
FrameLayout flSpeed = findViewById(R.id.fl_speed);
if (flSpeed != null) {
CallerDevaToolsManager.INSTANCE.attachAutopilotBeforeLaunchView(flSpeed.getContext(), flSpeed);
}
LayoutInflater.from(getContext()).inflate(getStationPanelViewId(), flStationPanelContainer); LayoutInflater.from(getContext()).inflate(getStationPanelViewId(), flStationPanelContainer);
slidePanelView.setOnSlidePanelMoveToEndListener(onSlideToEndListener); slidePanelView.setOnSlidePanelMoveToEndListener(onSlideToEndListener);
@@ -517,15 +526,15 @@ public abstract class BaseBusTabFragment<V extends IView, P extends Presenter<V>
} }
} }
/** // /**
* 迈速表实时更新 // * 迈速表实时更新
*/ // */
public void updateSpeedView(float newSpeed) { // public void updateSpeedView(float newSpeed) {
int speed = (int) (Math.abs(newSpeed) * 3.6F); // 倒车时工控机反馈定位信息中speed为负值 // int speed = (int) (Math.abs(newSpeed) * 3.6F); // 倒车时工控机反馈定位信息中speed为负值
if (mTrafficDataView != null) { // if (mTrafficDataView != null) {
mTrafficDataView.updateSpeedWithValue(speed); // mTrafficDataView.updateSpeedWithValue(speed);
} // }
} // }
@Override @Override
public void onDestroy() { public void onDestroy() {

View File

@@ -15,7 +15,6 @@ import androidx.annotation.Nullable;
import androidx.constraintlayout.widget.ConstraintLayout; import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.constraintlayout.widget.Group; import androidx.constraintlayout.widget.Group;
import com.alibaba.android.arouter.launcher.ARouter;
import com.mogo.commons.storage.SharedPrefsMgr; import com.mogo.commons.storage.SharedPrefsMgr;
import com.mogo.eagle.core.data.config.FunctionBuildConfig; import com.mogo.eagle.core.data.config.FunctionBuildConfig;
import com.mogo.eagle.core.data.temp.EventLogout; import com.mogo.eagle.core.data.temp.EventLogout;
@@ -32,13 +31,10 @@ import com.mogo.map.overlay.point.Point;
import com.mogo.och.bus.R; import com.mogo.och.bus.R;
import com.mogo.och.bus.bean.BusStationBean; import com.mogo.och.bus.bean.BusStationBean;
import com.mogo.och.bus.constant.BusConst; 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.presenter.BusPresenter;
import com.mogo.och.bus.ui.BusStationCommonItem; import com.mogo.och.bus.ui.BusStationCommonItem;
import com.mogo.och.bus.ui.BusSwitchLineActivity; import com.mogo.och.bus.ui.BusSwitchLineActivity;
import com.mogo.och.bus.view.SlidePanelView; 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.BlinkAnimationUtil;
import com.mogo.och.common.module.utils.OCHThreadPoolManager; import com.mogo.och.common.module.utils.OCHThreadPoolManager;
import com.mogo.och.common.module.utils.QRUtilsKt; import com.mogo.och.common.module.utils.QRUtilsKt;
@@ -75,8 +71,6 @@ public class BusFragment extends BaseBusTabFragment<BusFragment, BusPresenter>
private BusStationCommonItem secondStationItem; private BusStationCommonItem secondStationItem;
private BusStationCommonItem thirdStationItem; private BusStationCommonItem thirdStationItem;
private LoginService loginService;
@Override @Override
public String getTagName() { public String getTagName() {
return "BusFragment"; return "BusFragment";
@@ -85,17 +79,11 @@ public class BusFragment extends BaseBusTabFragment<BusFragment, BusPresenter>
@Override @Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) { public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState); super.onActivityCreated(savedInstanceState);
loginService = (LoginService) ARouter.getInstance().build(OchCommonConst.LOGINSERVICE).navigation();
if (loginService != null) {
loginService.registerFragment(this, getPresenter(), new LoginBusImpl());
}
} }
@Override @Override
public void onDestroyView() { public void onDestroyView() {
super.onDestroyView(); super.onDestroyView();
loginService.unRegisterFragment();
loginService = null;
} }
@Override @Override
@@ -410,7 +398,7 @@ public class BusFragment extends BaseBusTabFragment<BusFragment, BusPresenter>
@Override @Override
public int getStationPanelViewId() { public int getStationPanelViewId() {
return R.layout.fragment_och_bus; return R.layout.bug_fragment_och;
} }
@Override @Override

View File

@@ -13,8 +13,8 @@ import com.mogo.och.bus.bean.BusRoutesResponse;
import com.mogo.och.bus.callback.IBusLinesCallback; import com.mogo.och.bus.callback.IBusLinesCallback;
import com.mogo.och.bus.net.OrderServiceManager; import com.mogo.och.bus.net.OrderServiceManager;
import com.mogo.och.bus.ui.BusSwitchLineActivity; import com.mogo.och.bus.ui.BusSwitchLineActivity;
import com.mogo.och.common.module.biz.network.OchCommonServiceCallback; import com.mogo.och.common.module.network.OchCommonServiceCallback;
import com.mogo.och.common.module.manager.orderlogmanager.OchChainLogManager; import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager;
/** /**
* @author: wangmingjun * @author: wangmingjun

View File

@@ -12,7 +12,6 @@ import android.text.TextUtils;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import com.alibaba.android.arouter.launcher.ARouter;
import com.elegant.network.utils.GsonUtil; import com.elegant.network.utils.GsonUtil;
import com.mogo.aicloud.services.socket.IMogoOnMessageListener; import com.mogo.aicloud.services.socket.IMogoOnMessageListener;
import com.mogo.commons.AbsMogoApplication; import com.mogo.commons.AbsMogoApplication;
@@ -55,21 +54,22 @@ import com.mogo.och.bus.util.BusAnalyticsManager;
import com.mogo.och.bus.util.BusSendTripInfoManager; import com.mogo.och.bus.util.BusSendTripInfoManager;
import com.mogo.och.bus.util.BusTrajectoryManager; import com.mogo.och.bus.util.BusTrajectoryManager;
import com.mogo.och.bus.util.BusVoiceManager; import com.mogo.och.bus.util.BusVoiceManager;
import com.mogo.och.common.module.bean.dpmsg.AppConnectMsg; import com.mogo.och.common.module.manager.socket.lan.LanSocketManager;
import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager; import com.mogo.och.common.module.manager.socket.lan.bean.AppConnectMsg;
import com.mogo.och.common.module.biz.common.socketmessage.data.OCHOperationalMessage; import com.mogo.och.common.module.manager.socket.cloud.OCHSocketMessageManager;
import com.mogo.och.common.module.biz.constant.OchCommonConst; import com.mogo.och.common.module.manager.socket.cloud.data.OCHOperationalMessage;
import com.mogo.och.common.module.biz.network.OchCommonServiceCallback; import com.mogo.och.common.module.constant.OchCommonConst;
import com.mogo.och.common.module.biz.provider.LoginService; import com.mogo.och.common.module.biz.login.LoginStatusManager;
import com.mogo.och.common.module.network.OchCommonServiceCallback;
import com.mogo.och.common.module.callback.OchAdasStartFailureCallback; import com.mogo.och.common.module.callback.OchAdasStartFailureCallback;
import com.mogo.och.common.module.manager.AbnormalFactorsLoopManager; import com.mogo.och.common.module.manager.socket.cloud.AbnormalFactorsLoopManager;
import com.mogo.och.common.module.manager.autopilotmanager.OCHAdasAbilityManager; import com.mogo.och.common.module.manager.autopilot.OCHAdasAbilityManager;
import com.mogo.och.common.module.manager.autopilotmanager.autopilot.ArrivedStation; import com.mogo.och.common.module.manager.autopilot.autopilot.ArrivedStation;
import com.mogo.och.common.module.manager.autopilotmanager.trajectory.ITrajectoryListListener; import com.mogo.och.common.module.manager.autopilot.trajectory.ITrajectoryListListener;
import com.mogo.och.common.module.manager.autopilotmanager.trajectory.TrajectoryManager; import com.mogo.och.common.module.manager.autopilot.trajectory.TrajectoryManager;
import com.mogo.och.common.module.manager.distancemamager.ITrajectoryListener; import com.mogo.och.common.module.manager.distance.ITrajectoryListener;
import com.mogo.och.common.module.manager.distancemamager.TrajectoryAndDistanceManager; import com.mogo.och.common.module.manager.distance.TrajectoryAndDistanceManager;
import com.mogo.och.common.module.manager.orderlogmanager.OchChainLogManager; import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager;
import com.mogo.och.common.module.utils.DateTimeUtil; import com.mogo.och.common.module.utils.DateTimeUtil;
import com.mogo.och.common.module.utils.MultiRequestLimitChecker; import com.mogo.och.common.module.utils.MultiRequestLimitChecker;
import com.mogo.och.common.module.utils.NumberFormatUtil; import com.mogo.och.common.module.utils.NumberFormatUtil;
@@ -123,8 +123,6 @@ public class OrderModel {
//0: 代表没有启动过 1代表是启动第一次当>=1 代表是重试 每次到站/路线结束清空置为0 //0: 代表没有启动过 1代表是启动第一次当>=1 代表是重试 每次到站/路线结束清空置为0
private volatile int firstStartAutopilot = 0; private volatile int firstStartAutopilot = 0;
private LoginService loginService;
private final Handler handler = new Handler(msg -> { private final Handler handler = new Handler(msg -> {
if (msg.what == MSG_QUERY_BUS_STATION) { if (msg.what == MSG_QUERY_BUS_STATION) {
queryBusRoutes(); queryBusRoutes();
@@ -149,7 +147,6 @@ public class OrderModel {
public void init() { public void init() {
mContext = AbsMogoApplication.getApp(); mContext = AbsMogoApplication.getApp();
loginService = (LoginService) ARouter.getInstance().build(OchCommonConst.LOGINSERVICE).navigation();
// 定位监听 // 定位监听
CallerChassisLocationGCJ02ListenerManager.INSTANCE.addListener(TAG,5, mMapLocationListener); CallerChassisLocationGCJ02ListenerManager.INSTANCE.addListener(TAG,5, mMapLocationListener);
@@ -315,7 +312,6 @@ public class OrderModel {
CallerChassisLocationGCJ02ListenerManager.INSTANCE.removeListener(TAG); CallerChassisLocationGCJ02ListenerManager.INSTANCE.removeListener(TAG);
TrajectoryManager.INSTANCE.addTrajectoryListListenerr(TAG,null); TrajectoryManager.INSTANCE.addTrajectoryListListenerr(TAG,null);
loginService = null;
OCHAdasAbilityManager.getInstance().setAdasStartFailureCallback(null); OCHAdasAbilityManager.getInstance().setAdasStartFailureCallback(null);
@@ -1136,9 +1132,7 @@ public class OrderModel {
public void sendWriteOffNumToClient(String msg){ public void sendWriteOffNumToClient(String msg){
AppConnectMsg passengerMsg = new AppConnectMsg(false,true,msg,-1); AppConnectMsg passengerMsg = new AppConnectMsg(false,true,msg,-1);
LanSocketManager.sendMsgToClient(passengerMsg);
CallerTelematicManager.INSTANCE.sendMsgToAllClients(OchCommonConst.BUSINESS_STRING,
GsonUtils.toJson(passengerMsg).getBytes());
} }
// 车机端上传心跳数据(只在出车状态时上传) // 车机端上传心跳数据(只在出车状态时上传)
@@ -1172,7 +1166,7 @@ public class OrderModel {
public void logout() { public void logout() {
double mLatitude = CallerChassisLocationGCJ02ListenerManager.INSTANCE.getChassisLocationGCJ02().getLatitude(); double mLatitude = CallerChassisLocationGCJ02ListenerManager.INSTANCE.getChassisLocationGCJ02().getLatitude();
double mLongitude =CallerChassisLocationGCJ02ListenerManager.INSTANCE.getChassisLocationGCJ02().getLongitude(); double mLongitude =CallerChassisLocationGCJ02ListenerManager.INSTANCE.getChassisLocationGCJ02().getLongitude();
loginService.loginOut(mLatitude, mLongitude); LoginStatusManager.loginOut(mLatitude, mLongitude);
} }
public void triggerStartServiceEvent(boolean isRestart, boolean send) { public void triggerStartServiceEvent(boolean isRestart, boolean send) {

View File

@@ -8,10 +8,10 @@ import com.mogo.eagle.core.network.MoGoRetrofitFactory
import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.commons.storage.SharedPrefsMgr
import com.mogo.eagle.core.data.map.MogoLocation import com.mogo.eagle.core.data.map.MogoLocation
import com.mogo.och.bus.bean.* import com.mogo.och.bus.bean.*
import com.mogo.och.common.module.biz.constant.OchCommonConst import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.biz.network.OchCommonServiceCallback import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.common.module.biz.network.OchCommonSubscribeImpl import com.mogo.och.common.module.network.OchCommonSubscribeImpl
import com.mogo.och.common.module.biz.network.interceptor.transformTry import com.mogo.och.common.module.network.interceptor.transformTry
/** /**
* @author: wangmingjun * @author: wangmingjun

View File

@@ -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<BaseData>?
) {
OchCommonServiceManager.getPhoneCode(context,phone,callback)
}
override fun gotoLoginBycode(
context: Context,
phone: String?,
code: String?,
location4Login: TaxiLoginReqBean.Location4Login?,
callback: OchCommonServiceCallback<TaxiLoginRespBean>?
) {
OchCommonServiceManager.gotoLoginBycode(context,phone,code,location4Login,callback)
}
override fun logout(
context: Context,
location4Login: TaxiLogoutReqBean.Location4Login?,
callback: OchCommonServiceCallback<BaseData>?
) {
OchCommonServiceManager.logout(context,location4Login,callback)
}
override fun queryDriverServiceStatus(
context: Context,
callback: OchCommonServiceCallback<DriverStatusQueryRespBean>?
) {
OchCommonServiceManager.queryDriverServiceStatus(context,callback)
}
}

View File

@@ -27,13 +27,13 @@ import com.mogo.och.bus.fragment.BusFragment;
import com.mogo.och.bus.model.OrderModel; import com.mogo.och.bus.model.OrderModel;
import com.mogo.och.bus.util.BusTrajectoryManager; import com.mogo.och.bus.util.BusTrajectoryManager;
import com.mogo.och.bus.util.BusVoiceManager; import com.mogo.och.bus.util.BusVoiceManager;
import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean; import com.mogo.och.common.module.biz.login.ILoginCallback;
import com.mogo.och.common.module.biz.callback.ILoginCallback; import com.mogo.och.common.module.biz.login.LoginStatusEnum;
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.autopilotmanager.OCHAdasAbilityManager; import com.mogo.och.common.module.manager.autopilot.OCHAdasAbilityManager;
import com.mogo.och.common.module.manager.autopilotmanager.autopilot.ArrivedStation; import com.mogo.och.common.module.manager.autopilot.autopilot.ArrivedStation;
import com.mogo.och.common.module.manager.autopilotmanager.autopilot.IOchAutopilotStatusListener; import com.mogo.och.common.module.manager.autopilot.autopilot.IOchAutopilotStatusListener;
import com.mogo.och.common.module.manager.autopilotmanager.autopilot.OchAutoPilotStatusListenerManager; import com.mogo.och.common.module.manager.autopilot.autopilot.OchAutoPilotStatusListenerManager;
import com.zhjt.mogo.adas.data.AdasConstants; import com.zhjt.mogo.adas.data.AdasConstants;
import java.util.ArrayList; import java.util.ArrayList;
@@ -62,6 +62,7 @@ public class BusPresenter extends Presenter<BusFragment>
OchAutoPilotStatusListenerManager.INSTANCE.addListener(TAG,this); OchAutoPilotStatusListenerManager.INSTANCE.addListener(TAG,this);
OrderModel.getInstance().init(); OrderModel.getInstance().init();
OCHAdasAbilityManager.getInstance().init(AbsMogoApplication.getApp()); OCHAdasAbilityManager.getInstance().init(AbsMogoApplication.getApp());
LoginStatusManager.INSTANCE.addListener(TAG,this);
} }
@Override @Override
@@ -202,9 +203,9 @@ public class BusPresenter extends Presenter<BusFragment>
@Override @Override
public void onCarLocationChanged(MogoLocation location) { public void onCarLocationChanged(MogoLocation location) {
if (null != location) { // if (null != location) {
runOnUIThread(() -> mView.updateSpeedView((float) location.getGnssSpeed())); // runOnUIThread(() -> mView.updateSpeedView((float) location.getGnssSpeed()));
} // }
} }
@Override @Override
@@ -266,7 +267,7 @@ public class BusPresenter extends Presenter<BusFragment>
} }
@Override @Override
public void loginSuccess(DriverStatusQueryRespBean data) { public void onStatusChange(LoginStatusEnum currentStatus) {
CallerLogger.d(M_BUS + TAG, " loginStatus =" + LoginStatusManager.isLogin()); CallerLogger.d(M_BUS + TAG, " loginStatus =" + LoginStatusManager.isLogin());
if(LoginStatusManager.isLogin()){ if(LoginStatusManager.isLogin()){
OrderModel.getInstance().startOrStopOrderLoop(true); OrderModel.getInstance().startOrStopOrderLoop(true);
@@ -281,11 +282,6 @@ public class BusPresenter extends Presenter<BusFragment>
} }
} }
@Override
public void loginFail(boolean isLogin) {
}
@Override @Override
public void playPassenger(WriteOffPassenger passenger) { public void playPassenger(WriteOffPassenger passenger) {
int passengerNum = passenger.passengerSize; int passengerNum = passenger.passengerSize;

View File

@@ -42,7 +42,7 @@ class BusSwitchLineActivity : MvpActivity<BusSwitchLineView?, BusLinePresenter?>
private lateinit var linearLayoutManager:LinearLayoutManager private lateinit var linearLayoutManager:LinearLayoutManager
private val mData: MutableList<BusQueryLinesResponse.Result> = ArrayList() private val mData: MutableList<BusQueryLinesResponse.Result> = ArrayList()
override fun getLayoutId(): Int { override fun getLayoutId(): Int {
return R.layout.activity_bus_switch_line return R.layout.bus_switch_line
} }
override fun createPresenter(): BusLinePresenter { override fun createPresenter(): BusLinePresenter {

View File

@@ -11,7 +11,7 @@ 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.mogo.logger.scene.SceneConstant
import com.mogo.eagle.core.utilcode.util.DateTimeUtils import com.mogo.eagle.core.utilcode.util.DateTimeUtils
import com.mogo.och.bus.constant.BusConst import com.mogo.och.bus.constant.BusConst
import com.mogo.och.common.module.manager.autopilotmanager.OCHAdasAbilityManager import com.mogo.och.common.module.manager.autopilot.OCHAdasAbilityManager
import com.mogo.och.common.module.utils.RxUtils import com.mogo.och.common.module.utils.RxUtils
import io.reactivex.disposables.Disposable import io.reactivex.disposables.Disposable

View File

@@ -9,9 +9,8 @@ import com.mogo.eagle.core.utilcode.util.GsonUtils;
import com.mogo.och.bus.bean.BusRoutesResult; import com.mogo.och.bus.bean.BusRoutesResult;
import com.mogo.och.bus.constant.BusConst; import com.mogo.och.bus.constant.BusConst;
import com.mogo.och.bus.model.OrderModel; 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.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager;
import com.zhidao.socket.utils.LoginStatusUtil;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;

View File

@@ -21,7 +21,7 @@ object BusVoiceManager {
} }
fun arrivedStationBus(siteNameCN: String?, siteNameKR: String?) { fun arrivedStationBus(siteNameCN: String?, siteNameKR: String?) {
if (AppIdentityModeUtils.isM2(FunctionBuildConfig.appIdentityMode)) { if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode)) {
return return
} }
val context = AbsMogoApplication.getApp() val context = AbsMogoApplication.getApp()

View File

@@ -20,9 +20,9 @@ class BizMapView @JvmOverloads constructor(
private lateinit var mapBizView: MapBizView private lateinit var mapBizView: MapBizView
init { init {
if (AppIdentityModeUtils.isM2(FunctionBuildConfig.appIdentityMode)) { if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode)) {
LayoutInflater.from(context).inflate(R.layout.bus_m2_bizmap_map, this, true) LayoutInflater.from(context).inflate(R.layout.bus_m2_bizmap_map, this, true)
}else if(AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)){ }else if(AppIdentityModeUtils.isB1(FunctionBuildConfig.appIdentityMode)){
LayoutInflater.from(context).inflate(R.layout.bus_jl_bizmap_map, this, true) LayoutInflater.from(context).inflate(R.layout.bus_jl_bizmap_map, this, true)
}else{ }else{
LayoutInflater.from(context).inflate(R.layout.bus_jl_bizmap_map, this, true) LayoutInflater.from(context).inflate(R.layout.bus_jl_bizmap_map, this, true)

View File

@@ -27,7 +27,7 @@ import com.mogo.eagle.core.utilcode.util.ConvertUtils;
import com.mogo.eagle.core.utilcode.util.ThreadUtils; import com.mogo.eagle.core.utilcode.util.ThreadUtils;
import com.mogo.eagle.core.utilcode.util.UiThreadHandler; import com.mogo.eagle.core.utilcode.util.UiThreadHandler;
import com.mogo.och.bus.R; import com.mogo.och.bus.R;
import com.mogo.och.common.module.manager.orderlogmanager.OchChainLogManager; import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager;
import me.jessyan.autosize.AutoSizeConfig; import me.jessyan.autosize.AutoSizeConfig;
import me.jessyan.autosize.utils.AutoSizeUtils; import me.jessyan.autosize.utils.AutoSizeUtils;

View File

@@ -19,22 +19,29 @@
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" /> app:layout_constraintStart_toStartOf="parent" />
<!-- <FrameLayout-->
<!-- android:id="@+id/fl_speed"-->
<!-- android:layout_width="@dimen/dp_616"-->
<!-- android:layout_height="@dimen/dp_320"-->
<!-- android:layout_marginLeft="@dimen/dp_13"-->
<!-- android:layout_marginTop="@dimen/dp_40"-->
<!-- android:visibility="visible"-->
<!-- app:layout_constraintLeft_toLeftOf="parent"-->
<!-- app:layout_constraintTop_toTopOf="parent">-->
<!-- <com.mogo.eagle.core.function.hmi.ui.widget.TrafficDataView-->
<!-- android:id="@+id/bus_arc"-->
<!-- android:layout_width="match_parent"-->
<!-- android:layout_height="match_parent" />-->
<!-- </FrameLayout>-->
<FrameLayout <FrameLayout
android:id="@+id/fl_speed" android:id="@+id/fl_speed"
android:layout_width="@dimen/dp_616" android:layout_width="@dimen/dp_624"
android:layout_height="@dimen/dp_320" android:layout_height="@dimen/dp_269"
android:layout_marginLeft="@dimen/dp_13" android:layout_marginStart="@dimen/dp_10"
android:layout_marginTop="@dimen/dp_40"
android:visibility="visible"
app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent"> app:layout_constraintTop_toTopOf="parent"/>
<com.mogo.eagle.core.function.hmi.ui.widget.TrafficDataView
android:id="@+id/bus_arc"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</FrameLayout>
<!--V2X预警红色边框--> <!--V2X预警红色边框-->
<com.mogo.eagle.core.function.hmi.ui.widget.V2XWarningView <com.mogo.eagle.core.function.hmi.ui.widget.V2XWarningView
@@ -409,4 +416,9 @@
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" /> app:layout_constraintEnd_toEndOf="parent" />
<com.mogo.och.common.module.wigets.LoadingMapStatusView
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -19,7 +19,7 @@ android {
kapt { kapt {
useBuildCache = false useBuildCache = false
arguments { arguments {
arg("AROUTER_MODULE_NAME", project.getName()) arg("AROUTER_MODULE_NAME", "bus"+project.getName())
} }
} }
} }
@@ -58,20 +58,6 @@ android {
] ]
} }
} }
flavorDimensions "vehicle"
productFlavors {
// 车型:金旅星辰、开沃 小巴业务
jinlvvan {
dimension "vehicle"
buildConfigField 'int', 'NEW_TEST', '0'
}
// 车型金旅m1 小巴业务
m2 {
dimension "vehicle"
buildConfigField 'int', 'NEW_TEST', '1'
}
}
} }
dependencies { dependencies {

View File

@@ -0,0 +1,65 @@
package com.mogo.och.bus.passenger
import android.content.Context
import android.view.View
import androidx.fragment.app.Fragment
import com.alibaba.android.arouter.facade.annotation.Route
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.function.hmi.ui.widget.StatusBarView
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.eagle.core.utilcode.util.ActivityUtils
import com.mogo.eagle.core.utilcode.util.MultiDisplayUtils
import com.mogo.och.bus.passenger.passenger.ui.PM2BaseFragment
import com.mogo.och.bus.passenger.passenger.ui.widget.M2StatusBarView
import com.mogo.och.bus.passenger.ui.BusPStatusBarView
import com.mogo.och.bus.passenger.ui.BusPassengerRouteFragment
import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.biz.provider.CommonServiceImpl
import com.mogo.och.common.module.wigets.media.MediaPlayerActivity
/**
* 网约车-Bus-乘客端
*
* Created on 2022/3/29
*/
@Route(path = OchCommonConst.BUS_PASSENGER)
class BusPassengerProvider : CommonServiceImpl() {
private val tag = BusPassengerProvider::class.java.simpleName
private lateinit var mPM2Fragment: Fragment
override fun getFragment(): Fragment {
if (AppIdentityModeUtils.isB1(FunctionBuildConfig.appIdentityMode)) {
MultiDisplayUtils.startActWithSecond(ActivityUtils.getTopActivity(), MediaPlayerActivity::class.java)
}
return mPM2Fragment
}
override fun getStatusBarView(context: Context): View {
if(statusBarView==null) {
statusBarView = if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode)) {
M2StatusBarView(context)
} else if (AppIdentityModeUtils.isB1(FunctionBuildConfig.appIdentityMode)) {
BusPStatusBarView(context)
} else{
StatusBarView(context)
}
}
return statusBarView!!
}
override fun init(context: Context) {
CallerLogger.d(SceneConstant.M_TAXI_P + tag, "init")
mPM2Fragment = if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode)) {
PM2BaseFragment()
} else if (AppIdentityModeUtils.isB1(FunctionBuildConfig.appIdentityMode)) {
BusPassengerRouteFragment()
} else {
BusPassengerRouteFragment()
}
}
}

View File

@@ -1,22 +0,0 @@
package com.mogo.och.bus.passenger;
import androidx.annotation.IdRes;
import androidx.fragment.app.FragmentActivity;
import com.mogo.eagle.core.function.api.base.IMoGoFunctionProvider;
/**
* 网约车抽象接口
*
* Created on 2022/3/29
*/
interface IMogoOCH extends IMoGoFunctionProvider {
/**
* 初始化网约车容器
*
* @param activity
* @param containerId 容器ID
*/
void createCoverage(FragmentActivity activity, @IdRes int containerId);
}

View File

@@ -1,105 +0,0 @@
package com.mogo.och.bus.passenger
import android.content.Context
import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentActivity
import androidx.fragment.app.FragmentManager
import com.alibaba.android.arouter.facade.annotation.Route
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.function.api.base.IMoGoFunctionProvider
import com.mogo.eagle.core.function.call.setting.CallerMoGoUiSettingManager.stepInDayMode
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.eagle.core.utilcode.util.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.wigets.media.MediaPlayerActivity
/**
* 网约车-Bus-乘客端
*
* Created on 2022/3/29
*/
@Route(path = BusPassengerConst.PATH)
class MogoOCHBusPassenger : IMoGoFunctionProvider {
private var mActivity: FragmentActivity? = null
private var mContainerId = 0
private var mPM2Fragment: Fragment? = null
override fun createCoverage(activity: FragmentActivity?, containerId: Int?): Fragment? {
mActivity = activity
mContainerId = containerId!!
showFragment()
if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) {
mActivity?.let {
MultiDisplayUtils.startActWithSecond(it, MediaPlayerActivity::class.java)
}
}
return null
}
override val functionName: String
get() = "och-bus-passenger-m2"
override fun onDestroy() {
// 若不调用finish, 设置中打开关闭UITouch,会造成och fragment 重叠
mActivity?.finish()
}
override fun init(context: Context) {
}
/**
* 进入鹰眼模式,设置手势缩放地图失效
*/
private fun stepIntoVrMode() {
d(SceneConstant.M_TAXI_P + TAG, "进入vr模式")
stepInDayMode() //白天模式 状态栏字体颜色变黑
}
private fun showFragment() {
val supportFragmentManager: FragmentManager? = mActivity?.supportFragmentManager
if (mPM2Fragment == null) {
d(SceneConstant.M_TAXI_P + TAG, "准备add fragment======")
val fragmentByTag: Fragment? = supportFragmentManager?.findFragmentByTag(PM2BaseFragment.TAG)
mPM2Fragment = if (fragmentByTag is Fragment){
fragmentByTag
}else{
if (AppIdentityModeUtils.isM2(FunctionBuildConfig.appIdentityMode)) {
PM2BaseFragment()
}else if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) {
BusPassengerRouteFragment()
}else{
BusPassengerRouteFragment()
}
}
if (!mPM2Fragment?.isAdded!!){
supportFragmentManager?.beginTransaction()
?.add(mContainerId, mPM2Fragment!!, PM2BaseFragment.TAG)?.commitAllowingStateLoss()
}
return
}
d(SceneConstant.M_TAXI_P + TAG, "准备show fragment")
supportFragmentManager?.beginTransaction()?.show(mPM2Fragment!!)
?.commitAllowingStateLoss()
}
private fun hideFragment() {
if (mPM2Fragment != null) {
mActivity?.supportFragmentManager?.beginTransaction()?.hide(mPM2Fragment!!)
?.commitAllowingStateLoss()
}
}
companion object {
private val TAG = MogoOCHBusPassenger::class.java.simpleName
}
}

View File

@@ -9,10 +9,10 @@ import com.mogo.och.bus.passenger.bean.BusPassengerQueryLineRequest
import com.mogo.och.bus.passenger.bean.BusPassengerOperationStatusResponse import com.mogo.och.bus.passenger.bean.BusPassengerOperationStatusResponse
import com.mogo.eagle.core.network.MoGoRetrofitFactory import com.mogo.eagle.core.network.MoGoRetrofitFactory
import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.commons.storage.SharedPrefsMgr
import com.mogo.och.common.module.biz.constant.OchCommonConst import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.biz.network.OchCommonServiceCallback import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.common.module.biz.network.OchCommonSubscribeImpl import com.mogo.och.common.module.network.OchCommonSubscribeImpl
import com.mogo.och.common.module.biz.network.interceptor.transformTry import com.mogo.och.common.module.network.interceptor.transformTry
/** /**
* Created on 2022/3/31 * Created on 2022/3/31

View File

@@ -1,41 +0,0 @@
package com.mogo.och.bus.passenger.provider;
import android.content.Context;
import android.view.View;
import androidx.annotation.NonNull;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.mogo.eagle.core.data.config.FunctionBuildConfig;
import com.mogo.eagle.core.data.constants.MogoServicePaths;
import com.mogo.eagle.core.function.api.hmi.view.IStatusViewLayout;
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils;
import com.mogo.och.bus.passenger.passenger.ui.widget.M2StatusBarView;
import com.mogo.och.bus.passenger.ui.BusPStatusBarView;
/**
* @author congtaowang
* @since 2020-01-06
* <p>
* 根据优先级控制显示 window view.
*/
@Route( path = MogoServicePaths.PATH_STATUS_VIEW_MANAGER )
public class StatusViewManager implements IStatusViewLayout {
@NonNull
@Override
public View getStatusView(Context context) {
if (AppIdentityModeUtils.isM2(FunctionBuildConfig.appIdentityMode)) {
return new M2StatusBarView(context);
} else if (AppIdentityModeUtils.isJL(FunctionBuildConfig.appIdentityMode)) {
return new BusPStatusBarView(context);
}
return new BusPStatusBarView(context);
}
@Override
public void init(Context context) {
}
}

View File

@@ -19,20 +19,17 @@ import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.data.map.MogoLocation import com.mogo.eagle.core.data.map.MogoLocation
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener
import com.mogo.eagle.core.function.api.autopilot.IMoGoChassisLocationGCJ02Listener import com.mogo.eagle.core.function.api.autopilot.IMoGoChassisLocationGCJ02Listener
import com.mogo.eagle.core.function.api.autopilot.IMoGoPlanningRottingListener
import com.mogo.eagle.core.function.api.telematic.IReceivedMsgListener import com.mogo.eagle.core.function.api.telematic.IReceivedMsgListener
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager.updateAutopilotControlParameters import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager.updateAutopilotControlParameters
import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager
import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager.addListener import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager.addListener
import com.mogo.eagle.core.function.call.autopilot.CallerPlanningRottingListenerManager
import com.mogo.eagle.core.function.call.telematic.CallerTelematicListenerManager import com.mogo.eagle.core.function.call.telematic.CallerTelematicListenerManager
import com.mogo.eagle.core.network.utils.GsonUtil import com.mogo.eagle.core.network.utils.GsonUtil
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils.isPassenger import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils.isPassenger
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.e import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.e
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P
import com.mogo.commons.storage.SharedPrefsMgr
import com.mogo.eagle.core.utilcode.util.GsonUtils import com.mogo.eagle.core.utilcode.util.GsonUtils
import com.mogo.eagle.core.utilcode.util.NetworkUtils import com.mogo.eagle.core.utilcode.util.NetworkUtils
import com.mogo.eagle.core.utilcode.util.ToastUtils import com.mogo.eagle.core.utilcode.util.ToastUtils
@@ -43,23 +40,23 @@ import com.mogo.och.bus.passenger.callback.*
import com.mogo.och.bus.passenger.constant.BusPassengerConst import com.mogo.och.bus.passenger.constant.BusPassengerConst
import com.mogo.och.bus.passenger.network.BusPassengerServiceManager import com.mogo.och.bus.passenger.network.BusPassengerServiceManager
import com.mogo.och.bus.passenger.network.BusPassengerServiceManager.driverAppSn import com.mogo.och.bus.passenger.network.BusPassengerServiceManager.driverAppSn
import com.mogo.och.common.module.bean.dpmsg.AppConnectMsg import com.mogo.och.common.module.manager.socket.lan.bean.AppConnectMsg
import com.mogo.och.common.module.bean.dpmsg.BaseDPMsg import com.mogo.och.common.module.manager.socket.lan.bean.BaseDPMsg
import com.mogo.och.common.module.bean.dpmsg.DPMsgType import com.mogo.och.common.module.manager.socket.lan.bean.DPMsgType
import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager import com.mogo.och.common.module.manager.socket.cloud.OCHSocketMessageManager
import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager.pushAppOperationalMsgBox import com.mogo.och.common.module.manager.socket.cloud.OCHSocketMessageManager.pushAppOperationalMsgBox
import com.mogo.och.common.module.biz.constant.OchCommonConst import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.biz.network.OchCommonServiceCallback import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.common.module.manager.AbnormalFactorsLoopManager.startLoopAbnormalFactors import com.mogo.och.common.module.manager.socket.cloud.AbnormalFactorsLoopManager.startLoopAbnormalFactors
import com.mogo.och.common.module.manager.AbnormalFactorsLoopManager.stopLoopAbnormalFactors import com.mogo.och.common.module.manager.socket.cloud.AbnormalFactorsLoopManager.stopLoopAbnormalFactors
import com.mogo.och.common.module.manager.distancemamager.IDistanceListener import com.mogo.och.common.module.manager.distance.IDistanceListener
import com.mogo.och.common.module.manager.distancemamager.ITrajectoryListener import com.mogo.och.common.module.manager.distance.ITrajectoryListener
import com.mogo.och.common.module.manager.distancemamager.TrajectoryAndDistanceManager.addDistanceListener import com.mogo.och.common.module.manager.distance.TrajectoryAndDistanceManager.addDistanceListener
import com.mogo.och.common.module.manager.distancemamager.TrajectoryAndDistanceManager.addTrajectoryListener import com.mogo.och.common.module.manager.distance.TrajectoryAndDistanceManager.addTrajectoryListener
import com.mogo.och.common.module.manager.distancemamager.TrajectoryAndDistanceManager.setStationPoint import com.mogo.och.common.module.manager.distance.TrajectoryAndDistanceManager.setStationPoint
import com.mogo.och.common.module.manager.distancemamager.TrajectoryAndDistanceManager.suspendCalculate import com.mogo.och.common.module.manager.distance.TrajectoryAndDistanceManager.suspendCalculate
import com.mogo.och.common.module.manager.loopmanager.BizLoopManager import com.mogo.och.common.module.manager.loop.BizLoopManager
import com.mogo.och.common.module.manager.loopmanager.LoopInfo import com.mogo.och.common.module.manager.loop.LoopInfo
import com.mogo.och.common.module.utils.DateTimeUtil import com.mogo.och.common.module.utils.DateTimeUtil
import com.mogo.och.common.module.utils.OCHThreadPoolManager import com.mogo.och.common.module.utils.OCHThreadPoolManager
import com.mogo.och.common.module.utils.PinYinUtil import com.mogo.och.common.module.utils.PinYinUtil

View File

@@ -20,7 +20,6 @@ import com.mogo.eagle.core.function.api.telematic.IReceivedMsgListener
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager
import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager
import com.mogo.eagle.core.function.call.telematic.CallerTelematicListenerManager import com.mogo.eagle.core.function.call.telematic.CallerTelematicListenerManager
import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager.sendMsgToServer
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
import com.mogo.eagle.core.utilcode.mogo.logger.Logger import com.mogo.eagle.core.utilcode.mogo.logger.Logger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P
@@ -32,20 +31,24 @@ import com.mogo.och.bus.passenger.bean.BusPassengerOperationStatusResponse
import com.mogo.och.bus.passenger.constant.BusPassengerConst import com.mogo.och.bus.passenger.constant.BusPassengerConst
import com.mogo.och.bus.passenger.passenger.callback.AutoPilotStatusCallback import com.mogo.och.bus.passenger.passenger.callback.AutoPilotStatusCallback
import com.mogo.och.bus.passenger.passenger.callback.DrivingInfoCallback import com.mogo.och.bus.passenger.passenger.callback.DrivingInfoCallback
import com.mogo.och.common.module.bean.dpmsg.* import com.mogo.och.common.module.manager.socket.cloud.OCHSocketMessageManager.pushAppOperationalMsgBox
import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager.pushAppOperationalMsgBox import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.biz.constant.OchCommonConst import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.common.module.biz.network.OchCommonServiceCallback
import com.mogo.och.common.module.utils.DateTimeUtil import com.mogo.och.common.module.utils.DateTimeUtil
import com.mogo.och.data.bean.BusRoutesResult import com.mogo.och.data.bean.BusRoutesResult
import com.mogo.och.data.bean.BusStationBean import com.mogo.och.data.bean.BusStationBean
import com.mogo.och.data.bean.BusTransferData import com.mogo.och.data.bean.BusTransferData
import com.mogo.och.bus.passenger.bean.PM2RoutesResponse import com.mogo.och.bus.passenger.bean.PM2RoutesResponse
import com.mogo.och.bus.passenger.network.BusPassengerServiceManager import com.mogo.och.bus.passenger.network.BusPassengerServiceManager
import com.mogo.och.common.module.manager.distancemamager.IDistanceListener import com.mogo.och.common.module.manager.distance.IDistanceListener
import com.mogo.och.common.module.manager.distancemamager.TrajectoryAndDistanceManager import com.mogo.och.common.module.manager.distance.TrajectoryAndDistanceManager
import com.mogo.och.common.module.manager.loopmanager.BizLoopManager import com.mogo.och.common.module.manager.loop.BizLoopManager
import com.mogo.och.common.module.manager.loopmanager.LoopInfo import com.mogo.och.common.module.manager.loop.LoopInfo
import com.mogo.och.common.module.manager.socket.lan.LanSocketManager
import com.mogo.och.common.module.manager.socket.lan.bean.AppConnectMsg
import com.mogo.och.common.module.manager.socket.lan.bean.BaseDPMsg
import com.mogo.och.common.module.manager.socket.lan.bean.DPMsgType
import com.mogo.och.common.module.manager.socket.lan.bean.TaskDetailsMsg
import com.mogo.och.common.module.utils.OCHThreadPoolManager import com.mogo.och.common.module.utils.OCHThreadPoolManager
import kotlin.math.abs import kotlin.math.abs
@@ -101,7 +104,7 @@ class PM2DrivingModel private constructor() {
private fun queryDriverByLocalDriver() { private fun queryDriverByLocalDriver() {
//本地去请求司机端 //本地去请求司机端
val msg = TaskDetailsMsg("task") val msg = TaskDetailsMsg("task")
sendMsgToServer(GsonUtils.toJson(msg)) LanSocketManager.sendMsgToServer(msg)
} }
private fun initListener() { private fun initListener() {
@@ -121,13 +124,6 @@ class PM2DrivingModel private constructor() {
TrajectoryAndDistanceManager.addDistanceListener(TAG, trajectoryListener) TrajectoryAndDistanceManager.addDistanceListener(TAG, trajectoryListener)
} }
private fun sendMsgToServer(msg: String) {
sendMsgToServer(
OchCommonConst.BUSINESS_STRING,
GsonUtils.toJson(msg).toByteArray()
)
}
fun releaseListener() { fun releaseListener() {
//自动驾驶状态监听 //自动驾驶状态监听
CallerAutoPilotStatusListenerManager.removeListener(TAG) CallerAutoPilotStatusListenerManager.removeListener(TAG)

View File

@@ -15,7 +15,7 @@ import com.mogo.eagle.core.function.call.autopilot.CallerChassisLamplightListene
import com.mogo.eagle.core.function.call.v2x.CallerTurnLightListenerManager import com.mogo.eagle.core.function.call.v2x.CallerTurnLightListenerManager
import com.mogo.eagle.core.utilcode.util.ThreadUtils import com.mogo.eagle.core.utilcode.util.ThreadUtils
import com.mogo.och.bus.passenger.R import com.mogo.och.bus.passenger.R
import com.mogo.och.common.module.manager.lightmanager.TurnLightManager import com.mogo.och.common.module.manager.light.TurnLightManager
import kotlinx.android.synthetic.main.bus_p_m2_turn_light_status.view.left_nor_image import kotlinx.android.synthetic.main.bus_p_m2_turn_light_status.view.left_nor_image
import kotlinx.android.synthetic.main.bus_p_m2_turn_light_status.view.left_select_image import kotlinx.android.synthetic.main.bus_p_m2_turn_light_status.view.left_select_image
import kotlinx.android.synthetic.main.bus_p_m2_turn_light_status.view.right_nor_image import kotlinx.android.synthetic.main.bus_p_m2_turn_light_status.view.right_nor_image

View File

@@ -96,6 +96,8 @@
android:visibility="gone" android:visibility="gone"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent" /> app:layout_constraintLeft_toLeftOf="parent" />
<com.mogo.och.common.module.wigets.LoadingMapStatusView
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -22,7 +22,7 @@
<!--Wifi状态--> <!--Wifi状态-->
<com.mogo.eagle.core.function.hmi.ui.widget.WifiStateView <com.mogo.eagle.core.function.hmi.ui.widget.WifiStateView
android:id="@+id/wifiStateView" android:id="@+id/wifiStateView"
android:layout_width="@dimen/dp_28" android:layout_width="wrap_content"
android:layout_height="@dimen/dp_28" android:layout_height="@dimen/dp_28"
android:layout_gravity="center" android:layout_gravity="center"
android:layout_marginStart="@dimen/dp_40" android:layout_marginStart="@dimen/dp_40"

View File

@@ -137,7 +137,7 @@
android:layout_height="@dimen/dp_30"/> android:layout_height="@dimen/dp_30"/>
<com.mogo.och.common.module.manager.xiaozhimanager.ZhiView <com.mogo.och.common.module.manager.xiaozhi.ZhiView
android:id="@+id/zv_msg_pop_bottom" android:id="@+id/zv_msg_pop_bottom"
android:layout_width="@dimen/dp_240" android:layout_width="@dimen/dp_240"
android:layout_height="@dimen/dp_240" android:layout_height="@dimen/dp_240"
@@ -157,6 +157,11 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content"/> android:layout_height="wrap_content"/>
<com.mogo.och.common.module.wigets.LoadingMapStatusView
android:layout_width="match_parent"
android:layout_height="match_parent"/>
<!-- 16 9 --> <!-- 16 9 -->
<!-- 1000 562.5 --> <!-- 1000 562.5 -->
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -10,7 +10,7 @@
<!--Wifi状态--> <!--Wifi状态-->
<com.mogo.eagle.core.function.hmi.ui.widget.WifiStateView <com.mogo.eagle.core.function.hmi.ui.widget.WifiStateView
android:id="@+id/wifiStateView" android:id="@+id/wifiStateView"
android:layout_width="@dimen/dp_28" android:layout_width="wrap_content"
android:layout_height="@dimen/dp_28" android:layout_height="@dimen/dp_28"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"

View File

@@ -18,7 +18,7 @@ android {
kapt { kapt {
useBuildCache = false useBuildCache = false
arguments { arguments {
arg("AROUTER_MODULE_NAME", project.getName()) arg("AROUTER_MODULE_NAME", "charter"+project.getName())
} }
} }
} }

View File

@@ -0,0 +1,33 @@
package com.magic.mogo.och.charter
import android.content.Context
import androidx.fragment.app.Fragment
import com.alibaba.android.arouter.facade.annotation.Route
import com.magic.mogo.och.charter.fragment.DriverM1Fragment
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.biz.provider.CommonService
import com.mogo.och.common.module.biz.provider.CommonServiceImpl
/**
* @author: wangmingjun
* @date: 2023/2/22
*/
@Route(path = OchCommonConst.CHARTER_DRIVER)
class CharterDriverProvider : CommonServiceImpl() {
private val tag = CharterDriverProvider::class.java.simpleName
private lateinit var fragment: Fragment
override fun getFragment(): Fragment {
return fragment
}
override fun init(context: Context) {
CallerLogger.d(SceneConstant.M_TAXI + tag, "init")
fragment = DriverM1Fragment()
}
}

View File

@@ -1,70 +0,0 @@
package com.magic.mogo.och.charter
import android.content.Context
import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentActivity
import com.alibaba.android.arouter.facade.annotation.Route
import com.magic.mogo.och.charter.constant.CharterConst
import com.magic.mogo.och.charter.fragment.DriverM1Fragment
import com.mogo.eagle.core.function.api.base.IMoGoFunctionProvider
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
/**
* @author: wangmingjun
* @date: 2023/2/22
*/
@Route(path = CharterConst.PATH)
class CharterProvider: IMoGoFunctionProvider{
private var mActivity: FragmentActivity? = null
private var mContainerId: Int? = 0
private var driverM1Fragment: Fragment? = null
override fun createCoverage(fragmentActivity: FragmentActivity?, integer: Int?): Fragment? {
this.mContainerId = integer
this.mActivity = fragmentActivity
showFragment()
return null
}
private fun showFragment() {
val supportFragmentManager = mActivity?.supportFragmentManager
if (driverM1Fragment == null) {
d(TAG, "准备add fragment======")
val fragmentByTag = supportFragmentManager?.findFragmentByTag(DriverM1Fragment.TAG)
driverM1Fragment = if (fragmentByTag is DriverM1Fragment) {
fragmentByTag
} else {
DriverM1Fragment()
}
if (!driverM1Fragment?.isAdded!!) {
mContainerId?.let {
supportFragmentManager?.beginTransaction()
?.add(it, driverM1Fragment!!, DriverM1Fragment.TAG)?.commitAllowingStateLoss()
}
}
return
}
d(TAG, "准备show fragment")
supportFragmentManager?.beginTransaction()?.show(driverM1Fragment!!)?.commitAllowingStateLoss()
}
override fun init(context: Context?) {
}
override val functionName: String
get() = ""
override fun onDestroy() {
// 若不调用finish, 设置中打开关闭UITouch,会造成och fragment 重叠
mActivity?.finish()
}
companion object {
private val TAG = CharterProvider::class.java.simpleName
}
}

View File

@@ -1,16 +1,17 @@
package com.magic.mogo.och.charter.base package com.magic.mogo.och.charter.base
import android.animation.ObjectAnimator import android.animation.ObjectAnimator
import android.annotation.SuppressLint
import android.os.Bundle import android.os.Bundle
import android.view.LayoutInflater import android.view.LayoutInflater
import android.view.View import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
import android.view.animation.LinearInterpolator import android.widget.FrameLayout
import android.widget.* import android.widget.ImageView
import android.widget.LinearLayout
import android.widget.RelativeLayout
import android.widget.TextView
import androidx.constraintlayout.widget.Group import androidx.constraintlayout.widget.Group
import com.magic.mogo.och.charter.R import com.magic.mogo.och.charter.R
import com.magic.mogo.och.charter.constant.CharterConst
import com.magic.mogo.och.charter.view.SlidePanelView import com.magic.mogo.och.charter.view.SlidePanelView
import com.magic.mogo.och.charter.view.autopilot.AutopilotStatusView import com.magic.mogo.och.charter.view.autopilot.AutopilotStatusView
import com.mogo.commons.mvp.IView import com.mogo.commons.mvp.IView
@@ -18,8 +19,8 @@ import com.mogo.commons.mvp.MvpFragment
import com.mogo.commons.mvp.Presenter import com.mogo.commons.mvp.Presenter
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotRecordListener import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotRecordListener
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager.getState
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotRecordListenerManager import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotRecordListenerManager
import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager.attachAutopilotBeforeLaunchView
import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager.initAiCollect import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager.initAiCollect
import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager.initBadCase import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager.initBadCase
import com.mogo.eagle.core.function.call.hmi.CallerHmiManager.showToolsView import com.mogo.eagle.core.function.call.hmi.CallerHmiManager.showToolsView
@@ -27,20 +28,16 @@ import com.mogo.eagle.core.function.hmi.ui.msgbox.DriverMsgBoxBubbleView
import com.mogo.eagle.core.function.hmi.ui.msgbox.DriverMsgBoxButtonView import com.mogo.eagle.core.function.hmi.ui.msgbox.DriverMsgBoxButtonView
import com.mogo.eagle.core.function.hmi.ui.msgbox.DriverMsgBoxButtonView.ClickListener import com.mogo.eagle.core.function.hmi.ui.msgbox.DriverMsgBoxButtonView.ClickListener
import com.mogo.eagle.core.function.hmi.ui.msgbox.DriverMsgBoxListView import com.mogo.eagle.core.function.hmi.ui.msgbox.DriverMsgBoxListView
import com.mogo.eagle.core.function.hmi.ui.widget.TrafficDataView
import com.mogo.eagle.core.function.smp.view.SmallMapView import com.mogo.eagle.core.function.smp.view.SmallMapView
import com.mogo.eagle.core.function.view.MapBizView import com.mogo.eagle.core.function.view.MapBizView
import com.mogo.eagle.core.utilcode.kotlin.onClick import com.mogo.eagle.core.utilcode.kotlin.onClick
import com.mogo.eagle.core.utilcode.mogo.view.OnPreventFastClickListener import com.mogo.eagle.core.utilcode.mogo.view.OnPreventFastClickListener
import com.mogo.eagle.core.utilcode.util.ResourceUtils.getDrawable
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.map.listener.IMogoMapListener import com.mogo.map.listener.IMogoMapListener
import com.mogo.map.listener.MogoMapListenerHandler.Companion.mogoMapListenerHandler import com.mogo.map.listener.MogoMapListenerHandler.Companion.mogoMapListenerHandler
import com.mogo.map.uicontroller.VisualAngleMode import com.mogo.map.uicontroller.VisualAngleMode
import com.mogo.och.common.module.utils.SoundPoolHelper import com.mogo.och.common.module.utils.SoundPoolHelper
import kotlinx.android.synthetic.main.charter_base_fragment.* import kotlinx.android.synthetic.main.charter_base_fragment.module_mogo_och_arrived_tv
import org.greenrobot.eventbus.EventBus import org.greenrobot.eventbus.EventBus
import kotlin.math.abs
/** /**
* @author: wangmingjun * @author: wangmingjun
@@ -92,6 +89,13 @@ abstract class CharterBaseFragment<V : IView?, P : Presenter<V>?>() :
slidePanelView?.setText(resources.getString(R.string.charter_back_car)) slidePanelView?.setText(resources.getString(R.string.charter_back_car))
slidePanelView?.setOnSlidePanelMoveToEndListener(onSlideToEndListener) slidePanelView?.setOnSlidePanelMoveToEndListener(onSlideToEndListener)
// mTrafficDataView = (TrafficDataView) findViewById(R.id.bus_arc);
val flSpeed = findViewById<FrameLayout>(R.id.fl_speed)
if (flSpeed != null) {
attachAutopilotBeforeLaunchView(flSpeed.context, flSpeed)
}
LayoutInflater.from(context).inflate(getStationPanelViewId(), flStationPanelContainer) LayoutInflater.from(context).inflate(getStationPanelViewId(), flStationPanelContainer)
mSwitchMapModeLayout = findViewById(R.id.bus_switch_model_layout) mSwitchMapModeLayout = findViewById(R.id.bus_switch_model_layout)
mSwitchMapModeImage = findViewById(R.id.bus_switch_model_icon) mSwitchMapModeImage = findViewById(R.id.bus_switch_model_icon)

View File

@@ -5,13 +5,11 @@ import android.os.Bundle
import android.os.CountDownTimer import android.os.CountDownTimer
import android.view.View.GONE import android.view.View.GONE
import android.view.View.VISIBLE 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.R
import com.magic.mogo.och.charter.base.CharterBaseFragment import com.magic.mogo.och.charter.base.CharterBaseFragment
import com.magic.mogo.och.charter.bean.QueryCurrentOrderResponse 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.bean.QueryCurrentOrderResponse.Result.Companion.ARRIVING
import com.magic.mogo.och.charter.constant.CharterConst.Companion.LOOP_PERIOD_60S 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.presenter.DriverM1Presenter
import com.magic.mogo.och.charter.view.SlidePanelView import com.magic.mogo.och.charter.view.SlidePanelView
import com.mogo.commons.storage.SharedPrefsMgr 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.data.temp.EventLogout
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d 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.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.DateTimeUtil
import com.mogo.och.common.module.utils.createQRCodeWithPicture import com.mogo.och.common.module.utils.createQRCodeWithPicture
import com.mogo.och.common.module.wigets.BindQRCodeDialog import com.mogo.och.common.module.wigets.BindQRCodeDialog
@@ -47,7 +43,6 @@ import kotlin.math.roundToInt
*/ */
class DriverM1Fragment : CharterBaseFragment<DriverM1Fragment?, DriverM1Presenter?>(), class DriverM1Fragment : CharterBaseFragment<DriverM1Fragment?, DriverM1Presenter?>(),
SlidePanelView.OnSlidePanelMoveToEndListener{ SlidePanelView.OnSlidePanelMoveToEndListener{
private var loginService: LoginService? = null
private var ochCommitDialog: OCHCommitDialog? = null private var ochCommitDialog: OCHCommitDialog? = null
var countDownTimer: CountDownTimer? = null var countDownTimer: CountDownTimer? = null
@@ -57,11 +52,6 @@ class DriverM1Fragment : CharterBaseFragment<DriverM1Fragment?, DriverM1Presente
override fun onActivityCreated(savedInstanceState: Bundle?) { override fun onActivityCreated(savedInstanceState: Bundle?) {
super.onActivityCreated(savedInstanceState) super.onActivityCreated(savedInstanceState)
loginService =
ARouter.getInstance().build(OchCommonConst.LOGINSERVICE).navigation() as LoginService
if (loginService != null) {
loginService?.registerFragment(this, presenter, LoginDriverM1Impl())
}
} }
private fun showOrHideOrderUI(show:Boolean){ private fun showOrHideOrderUI(show:Boolean){
@@ -119,8 +109,6 @@ class DriverM1Fragment : CharterBaseFragment<DriverM1Fragment?, DriverM1Presente
override fun onDestroyView() { override fun onDestroyView() {
super.onDestroyView() super.onDestroyView()
loginService?.unRegisterFragment()
loginService = null
} }
@Subscribe(threadMode = ThreadMode.MAIN) @Subscribe(threadMode = ThreadMode.MAIN)

View File

@@ -14,7 +14,7 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListener
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger;
import com.mogo.eagle.core.utilcode.util.DateTimeUtils; import com.mogo.eagle.core.utilcode.util.DateTimeUtils;
import com.mogo.eagle.core.utilcode.util.UiThreadHandler; import com.mogo.eagle.core.utilcode.util.UiThreadHandler;
import com.mogo.och.common.module.manager.autopilotmanager.OCHAdasAbilityManager; import com.mogo.och.common.module.manager.autopilot.OCHAdasAbilityManager;
import java.util.HashMap; import java.util.HashMap;

View File

@@ -14,8 +14,8 @@ 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.mogo.logger.scene.SceneConstant
import com.mogo.eagle.core.utilcode.util.ActivityUtils import com.mogo.eagle.core.utilcode.util.ActivityUtils
import com.mogo.eagle.core.utilcode.util.GsonUtils import com.mogo.eagle.core.utilcode.util.GsonUtils
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.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager
import com.mogo.och.common.module.utils.SoundPoolHelper import com.mogo.och.common.module.utils.SoundPoolHelper
import io.reactivex.Observable import io.reactivex.Observable
import io.reactivex.android.schedulers.AndroidSchedulers import io.reactivex.android.schedulers.AndroidSchedulers

View File

@@ -2,7 +2,6 @@ package com.magic.mogo.och.charter.model
import android.content.Context import android.content.Context
import android.net.ConnectivityManager import android.net.ConnectivityManager
import com.alibaba.android.arouter.launcher.ARouter
import com.alibaba.android.arouter.utils.TextUtils import com.alibaba.android.arouter.utils.TextUtils
import com.amap.api.maps.model.LatLng import com.amap.api.maps.model.LatLng
import com.elegant.network.utils.GsonUtil import com.elegant.network.utils.GsonUtil
@@ -33,32 +32,38 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListener
import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager
import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxManager import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxManager
import com.mogo.eagle.core.function.call.telematic.CallerTelematicListenerManager import com.mogo.eagle.core.function.call.telematic.CallerTelematicListenerManager
import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager.sendMsgToAllClients
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.i import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.i
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.eagle.core.utilcode.util.* import com.mogo.eagle.core.utilcode.util.*
import com.mogo.och.common.module.bean.dpmsg.* import com.mogo.och.common.module.manager.socket.cloud.OCHSocketMessageManager
import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager import com.mogo.och.common.module.manager.socket.cloud.OCHSocketMessageManager.pushAppOperationalMsgBox
import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager.pushAppOperationalMsgBox import com.mogo.och.common.module.manager.socket.cloud.OCHSocketMessageManager.registerSocketMessageListener
import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager.registerSocketMessageListener import com.mogo.och.common.module.manager.socket.cloud.OCHSocketMessageManager.releaseSocketMessageListener
import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager.releaseSocketMessageListener import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.biz.common.socketmessage.data.* import com.mogo.och.common.module.network.OchCommonServiceCallback
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.callback.OchAdasStartFailureCallback
import com.mogo.och.common.module.manager.AbnormalFactorsLoopManager.startLoopAbnormalFactors import com.mogo.och.common.module.manager.socket.cloud.AbnormalFactorsLoopManager.startLoopAbnormalFactors
import com.mogo.och.common.module.manager.AbnormalFactorsLoopManager.stopLoopAbnormalFactors import com.mogo.och.common.module.manager.socket.cloud.AbnormalFactorsLoopManager.stopLoopAbnormalFactors
import com.mogo.och.common.module.manager.CharterSendTripInfoManager import com.mogo.och.common.module.manager.CharterSendTripInfoManager
import com.mogo.och.common.module.manager.CharterSendTripInfoManager.ARRIVE_STATION import com.mogo.och.common.module.manager.CharterSendTripInfoManager.ARRIVE_STATION
import com.mogo.och.common.module.manager.CharterSendTripInfoManager.END_TRIP import com.mogo.och.common.module.manager.CharterSendTripInfoManager.END_TRIP
import com.mogo.och.common.module.manager.CharterSendTripInfoManager.START_TRIP import com.mogo.och.common.module.manager.CharterSendTripInfoManager.START_TRIP
import com.mogo.och.common.module.manager.autopilotmanager.OCHAdasAbilityManager import com.mogo.och.common.module.manager.autopilot.OCHAdasAbilityManager
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorManager import com.mogo.och.common.module.manager.device.LightAirconditionDoorManager
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorStatusManager import com.mogo.och.common.module.manager.device.LightAirconditionDoorStatusManager
import com.mogo.och.common.module.manager.stopsidemanager.StopSideManager import com.mogo.och.common.module.manager.socket.cloud.data.OperateDoorMsg
import com.mogo.och.common.module.manager.socket.cloud.data.OrderCloseMsg
import com.mogo.och.common.module.manager.socket.cloud.data.SystemMsg
import com.mogo.och.common.module.manager.socket.lan.LanSocketManager
import com.mogo.och.common.module.manager.socket.lan.bean.AppConnectMsg
import com.mogo.och.common.module.manager.socket.lan.bean.BaseDPMsg
import com.mogo.och.common.module.manager.socket.lan.bean.ChangeDestMsg
import com.mogo.och.common.module.manager.socket.lan.bean.DPMsgType
import com.mogo.och.common.module.manager.socket.lan.bean.DPOrderClosedMsg
import com.mogo.och.common.module.manager.stopside.StopSideManager
import com.mogo.och.common.module.utils.* import com.mogo.och.common.module.utils.*
import com.mogo.och.common.module.voice.VoiceNotice import com.mogo.och.common.module.voice.VoiceNotice
import com.mogo.och.data.bean.* import com.mogo.och.data.bean.*
@@ -95,7 +100,6 @@ class DriverM1Model {
//0: 代表没有启动过 1代表是启动第一次当>=1 代表是重试 每次到站/路线结束清空置为0 //0: 代表没有启动过 1代表是启动第一次当>=1 代表是重试 每次到站/路线结束清空置为0
private var loginService: LoginService? = null
companion object { companion object {
val TAG = DriverM1Model::class.java.simpleName val TAG = DriverM1Model::class.java.simpleName
@@ -147,8 +151,6 @@ class DriverM1Model {
//网络监听 //网络监听
IntentManager.getInstance().registerIntentListener(ConnectivityManager.CONNECTIVITY_ACTION, mNetWorkIntentListener) IntentManager.getInstance().registerIntentListener(ConnectivityManager.CONNECTIVITY_ACTION, mNetWorkIntentListener)
loginService = ARouter.getInstance().build(OchCommonConst.LOGINSERVICE).navigation() as LoginService
//2022.1.28 //2022.1.28
// 调用Disposable.dispose() 时候会出现InterruptedException 导致出现崩溃 // 调用Disposable.dispose() 时候会出现InterruptedException 导致出现崩溃
// The exception could not be delivered to the consumer because it has already canceled/disposed // The exception could not be delivered to the consumer because it has already canceled/disposed
@@ -172,7 +174,6 @@ class DriverM1Model {
// 注销定位监听 // 注销定位监听
CallerChassisLocationGCJ02ListenerManager.removeListener(TAG) CallerChassisLocationGCJ02ListenerManager.removeListener(TAG)
loginService = null
OCHAdasAbilityManager.getInstance().setAdasStartFailureCallback(null) OCHAdasAbilityManager.getInstance().setAdasStartFailureCallback(null)
releaseSocketMessageListener( releaseSocketMessageListener(
OCHSocketMessageManager.msgMonitorType OCHSocketMessageManager.msgMonitorType
@@ -292,7 +293,7 @@ class DriverM1Model {
override fun onMsgReceived(obj: OrderCloseMsg) { override fun onMsgReceived(obj: OrderCloseMsg) {
//订单结束 //订单结束
pushOperationalToMsgBox(DateTimeUtil.getCurrentTimeStamp(), obj.message pushOperationalToMsgBox(DateTimeUtil.getCurrentTimeStamp(), obj.message
,OCHSocketMessageManager.OPERATION_ORDER_TYPE) , OCHSocketMessageManager.OPERATION_ORDER_TYPE)
sendMsgToClient(DPOrderClosedMsg()) sendMsgToClient(DPOrderClosedMsg())
queryCurrentServiceStatus() queryCurrentServiceStatus()
} }
@@ -350,7 +351,7 @@ class DriverM1Model {
d(SceneConstant.M_TAXI + TAG, "onIntentReceived = %s", intentStr) d(SceneConstant.M_TAXI + TAG, "onIntentReceived = %s", intentStr)
if (ConnectivityManager.CONNECTIVITY_ACTION == intentStr) { if (ConnectivityManager.CONNECTIVITY_ACTION == intentStr) {
if (NetworkUtils.isConnected(mContext)) { if (NetworkUtils.isConnected(mContext)) {
loginService!!.queryLoginStatusByNet() LoginStatusManager.queryLoginStatusByNet()
} }
} }
} }
@@ -406,7 +407,8 @@ class DriverM1Model {
mContext?.let { mContext?.let {
mCurrentOrder?.lineId?.let { it1 -> mCurrentOrder?.lineId?.let { it1 ->
DriverM1ServiceManager.arriveDest( DriverM1ServiceManager.arriveDest(
it, it1.toLong(),DateTimeUtil.getCurrentTimeStamp(),object :OchCommonServiceCallback<BaseData>{ it, it1.toLong(),DateTimeUtil.getCurrentTimeStamp(),object :
OchCommonServiceCallback<BaseData> {
override fun onSuccess(data: BaseData?) { override fun onSuccess(data: BaseData?) {
d(SceneConstant.M_CHARTER_D + TAG, "onArriveAt = " + GsonUtil.jsonFromObject(data)) d(SceneConstant.M_CHARTER_D + TAG, "onArriveAt = " + GsonUtil.jsonFromObject(data))
if (data?.code == 0){ if (data?.code == 0){
@@ -517,7 +519,7 @@ class DriverM1Model {
// 登出 // 登出
fun logout() { fun logout() {
loginService!!.loginOut(mLatitude, mLongitude) LoginStatusManager.loginOut(mLatitude, mLongitude)
} }
fun triggerStartServiceEvent(isRestart: Boolean, send: Boolean) { fun triggerStartServiceEvent(isRestart: Boolean, send: Boolean) {
@@ -622,14 +624,11 @@ class DriverM1Model {
private fun sendMsgToClient(msg: BaseDPMsg?){ private fun sendMsgToClient(msg: BaseDPMsg?){
d(SceneConstant.M_CHARTER_D + TAG, "sendMsgToClient" + GsonUtils.toJson(msg)) d(SceneConstant.M_CHARTER_D + TAG, "sendMsgToClient" + GsonUtils.toJson(msg))
sendMsgToAllClients( LanSocketManager.sendMsgToClient(msg)
OchCommonConst.BUSINESS_STRING,
GsonUtils.toJson(msg).toByteArray()
)
} }
fun driverEndLease() { fun driverEndLease() {
DriverM1ServiceManager.driverEndLease(mContext,object : OchCommonServiceCallback<BaseData>{ DriverM1ServiceManager.driverEndLease(mContext,object : OchCommonServiceCallback<BaseData> {
override fun onSuccess(data: BaseData?) { override fun onSuccess(data: BaseData?) {
if (data != null && data.code == 0){ if (data != null && data.code == 0){
mOrderCallback?.updateReturnCarStatus(true) mOrderCallback?.updateReturnCarStatus(true)
@@ -647,7 +646,7 @@ class DriverM1Model {
fun queryCurrentServiceStatus() { fun queryCurrentServiceStatus() {
DriverM1ServiceManager.queryCurrentServiceStatus(mContext DriverM1ServiceManager.queryCurrentServiceStatus(mContext
,object: OchCommonServiceCallback<QueryBusinessStatusResponse>{ ,object: OchCommonServiceCallback<QueryBusinessStatusResponse> {
override fun onSuccess(data: QueryBusinessStatusResponse?) { override fun onSuccess(data: QueryBusinessStatusResponse?) {
if (data == null || data.code != 0 || data.data.equals(mCurrentBusinessStatus)){ if (data == null || data.code != 0 || data.data.equals(mCurrentBusinessStatus)){
d(SceneConstant.M_CHARTER_D + TAG, "data is null or data not change" ) d(SceneConstant.M_CHARTER_D + TAG, "data is null or data not change" )
@@ -689,7 +688,7 @@ class DriverM1Model {
fun queryCurrentOrder(){ fun queryCurrentOrder(){
DriverM1ServiceManager.queryCurrentOrder(mContext DriverM1ServiceManager.queryCurrentOrder(mContext
,object: OchCommonServiceCallback<QueryCurrentOrderResponse>{ ,object: OchCommonServiceCallback<QueryCurrentOrderResponse> {
override fun onSuccess(data: QueryCurrentOrderResponse?) { override fun onSuccess(data: QueryCurrentOrderResponse?) {
if (data == null || data.code != 0){ if (data == null || data.code != 0){
isArrivedStation = false isArrivedStation = false
@@ -753,7 +752,7 @@ class DriverM1Model {
fun checkOrderCountDown() { fun checkOrderCountDown() {
DriverM1ServiceManager.checkOrderCountDown(mContext, DriverM1ServiceManager.checkOrderCountDown(mContext,
object: OchCommonServiceCallback<CheckOrderCountDownResponse>{ object: OchCommonServiceCallback<CheckOrderCountDownResponse> {
override fun onSuccess(data: CheckOrderCountDownResponse?) { override fun onSuccess(data: CheckOrderCountDownResponse?) {
if (data?.data == null || data.code != 0){ if (data?.data == null || data.code != 0){
return return
@@ -782,7 +781,7 @@ class DriverM1Model {
currentChangeDestMsg!!.startSiteId, currentChangeDestMsg!!.startSiteId,
currentChangeDestMsg!!.destSiteId, currentChangeDestMsg!!.destSiteId,
writeVersion, writeVersion,
object : OchCommonServiceCallback<BaseData>{ object : OchCommonServiceCallback<BaseData> {
override fun onSuccess(data: BaseData?) { override fun onSuccess(data: BaseData?) {
if (data != null && data.code == 0){ if (data != null && data.code == 0){
d(SceneConstant.M_CHARTER_D + TAG, "confirmed station .") d(SceneConstant.M_CHARTER_D + TAG, "confirmed station .")
@@ -817,7 +816,7 @@ class DriverM1Model {
fun checkoutContrail(){ fun checkoutContrail(){
if (mCurrentOrder == null) return if (mCurrentOrder == null) return
DriverM1ServiceManager.checkoutContrail(mContext,mCurrentOrder!!.lineId, DriverM1ServiceManager.checkoutContrail(mContext,mCurrentOrder!!.lineId,
object : OchCommonServiceCallback<QueryRoutesResponse>{ object : OchCommonServiceCallback<QueryRoutesResponse> {
override fun onSuccess(data: QueryRoutesResponse?) { override fun onSuccess(data: QueryRoutesResponse?) {
if (data == null || data.code != 0) return if (data == null || data.code != 0) return
d(SceneConstant.M_CHARTER_D + TAG, "checkoutContrail-==" d(SceneConstant.M_CHARTER_D + TAG, "checkoutContrail-=="

View File

@@ -3,13 +3,13 @@ package com.magic.mogo.och.charter.net
import android.content.Context import android.content.Context
import com.magic.mogo.och.charter.bean.* import com.magic.mogo.och.charter.bean.*
import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.cloud.passport.MoGoAiCloudClientConfig
import com.mogo.och.common.module.biz.constant.OchCommonConst import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.eagle.core.data.BaseData import com.mogo.eagle.core.data.BaseData
import com.mogo.eagle.core.network.MoGoRetrofitFactory import com.mogo.eagle.core.network.MoGoRetrofitFactory
import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.commons.storage.SharedPrefsMgr
import com.mogo.och.common.module.biz.network.OchCommonServiceCallback import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.common.module.biz.network.OchCommonSubscribeImpl import com.mogo.och.common.module.network.OchCommonSubscribeImpl
import com.mogo.och.common.module.biz.network.interceptor.transformTry import com.mogo.och.common.module.network.interceptor.transformTry
/** /**
* Created by pangfan on 2021/8/19 * Created by pangfan on 2021/8/19

View File

@@ -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<BaseData>?
) {
OchCommonServiceManager.getPhoneCode(context,phone,callback)
}
override fun gotoLoginBycode(
context: Context,
phone: String?,
code: String?,
location4Login: TaxiLoginReqBean.Location4Login?,
callback: OchCommonServiceCallback<TaxiLoginRespBean>?
) {
OchCommonServiceManager.gotoLoginBycode(context,phone,code,location4Login,callback)
}
override fun logout(
context: Context,
location4Login: TaxiLogoutReqBean.Location4Login?,
callback: OchCommonServiceCallback<BaseData>?
) {
OchCommonServiceManager.logout(context,location4Login,callback)
}
override fun queryDriverServiceStatus(
context: Context,
callback: OchCommonServiceCallback<DriverStatusQueryRespBean>?
) {
OchCommonServiceManager.queryDriverServiceStatus(context,callback)
}
}

View File

@@ -1,108 +0,0 @@
package com.magic.mogo.och.charter.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.getBaseUrl()).create(
OchLoginServiceApi::class.java
)
/**
* 获取手机验证码
* @param context
* @param callback
*/
@JvmStatic
fun getPhoneCode(
context: Context, phone: String?,
callback: OchCommonServiceCallback<BaseData>?
) {
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<TaxiLoginRespBean>?
) {
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<BaseData>?
) {
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<DriverStatusQueryRespBean>?
) {
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"))
}
}

View File

@@ -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
* <p>
* 网约车-出租车接口定义
*/
interface OchLoginServiceApi {
/**
* 获取手机验证码
*
* @return
*/
@Headers({"Content-type:application/json;charset=UTF-8"})
@POST("/och-rental-cabin/api/sms/v1/driver/sendSms")
Observable<DriverStatusQueryRespBean> 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<TaxiLoginRespBean> 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<BaseData> 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<DriverStatusQueryRespBean> queryDriverServiceStatusAndLoginStatus(@Header("appId") String appId
, @Header("ticket") String ticket, @Query("sn") String sn);
}

View File

@@ -5,28 +5,25 @@ import com.magic.mogo.och.charter.R
import com.magic.mogo.och.charter.bean.QueryCurrentOrderResponse import com.magic.mogo.och.charter.bean.QueryCurrentOrderResponse
import com.magic.mogo.och.charter.callback.ChangeDestCallback import com.magic.mogo.och.charter.callback.ChangeDestCallback
import com.magic.mogo.och.charter.callback.DriverM1OrderCallback 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.fragment.DriverM1Fragment
import com.magic.mogo.och.charter.manager.CharterTrajectoryManager import com.magic.mogo.och.charter.manager.CharterTrajectoryManager
import com.magic.mogo.och.charter.model.DriverM1Model import com.magic.mogo.och.charter.model.DriverM1Model
import com.mogo.commons.AbsMogoApplication import com.mogo.commons.AbsMogoApplication
import com.mogo.commons.mvp.Presenter 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.api.autopilot.IMoGoAutopilotStatusListener
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager 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.CallerLogger.d
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant 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.DateTimeUtils
import com.mogo.eagle.core.utilcode.util.ThreadUtils import com.mogo.och.common.module.biz.login.ILoginCallback
import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean import com.mogo.och.common.module.biz.login.LoginStatusEnum
import com.mogo.och.common.module.biz.callback.ILoginCallback import com.mogo.och.common.module.biz.login.LoginStatusManager
import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager.OPERATION_ROAD_SIDE_TYPE import com.mogo.och.common.module.manager.socket.cloud.OCHSocketMessageManager.OPERATION_ROAD_SIDE_TYPE
import com.mogo.och.common.module.biz.constant.LoginStatusManager.isLogin import com.mogo.och.common.module.manager.autopilot.OCHAdasAbilityManager
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.beautifymode.BeautifyManager
import com.mogo.och.common.module.manager.stopsidemanager.OCHPlanningActionsCallback import com.mogo.och.common.module.manager.stopside.OCHPlanningActionsCallback
import com.mogo.och.common.module.manager.stopsidemanager.StopSideStatus import com.mogo.och.common.module.manager.stopside.StopSideStatus
import com.mogo.och.common.module.manager.stopsidemanager.StopSideManager import com.mogo.och.common.module.manager.stopside.StopSideManager
import com.mogo.och.common.module.utils.DateTimeUtil import com.mogo.och.common.module.utils.DateTimeUtil
import mogo.telematics.pad.MessagePad import mogo.telematics.pad.MessagePad
import mogo_msg.MogoReportMsg import mogo_msg.MogoReportMsg
@@ -36,7 +33,8 @@ import mogo_msg.MogoReportMsg
* @date: 2023/2/22 * @date: 2023/2/22
*/ */
class DriverM1Presenter(view: DriverM1Fragment?) : class DriverM1Presenter(view: DriverM1Fragment?) :
Presenter<DriverM1Fragment?>(view),ILoginCallback, DriverM1OrderCallback, ChangeDestCallback, Presenter<DriverM1Fragment?>(view),
ILoginCallback, DriverM1OrderCallback, ChangeDestCallback,
IMoGoAutopilotStatusListener, OCHPlanningActionsCallback{ IMoGoAutopilotStatusListener, OCHPlanningActionsCallback{
companion object{ companion object{
@@ -47,6 +45,7 @@ class DriverM1Presenter(view: DriverM1Fragment?) :
DriverM1Model.get().init(context) DriverM1Model.get().init(context)
OCHAdasAbilityManager.getInstance().init(AbsMogoApplication.getApp()) OCHAdasAbilityManager.getInstance().init(AbsMogoApplication.getApp())
registerListener() registerListener()
LoginStatusManager.addListener(TAG,this)
} }
private fun registerListener() { private fun registerListener() {
@@ -70,21 +69,18 @@ class DriverM1Presenter(view: DriverM1Fragment?) :
DriverM1Model.get().release() DriverM1Model.get().release()
} }
override fun loginSuccess(data: DriverStatusQueryRespBean?) { override fun onStatusChange(currentStatus: LoginStatusEnum?) {
d(SceneConstant.M_BUS + TAG, " loginStatus =" + isLogin()) d(SceneConstant.M_BUS + TAG, " loginStatus =" + LoginStatusManager.isLogin())
if(isLogin()){ if(LoginStatusManager.isLogin()){
// 查询服务状态 // 查询服务状态
DriverM1Model.get().queryCurrentServiceStatus() DriverM1Model.get().queryCurrentServiceStatus()
DriverM1Model.get().startQueryCurrentOrder() DriverM1Model.get().startQueryCurrentOrder()
}else{ }else{
CharterTrajectoryManager.stopTrajReqLoop() CharterTrajectoryManager.stopTrajReqLoop()
DriverM1Model.get().stopQueryCurrentOrder()
} }
} }
override fun loginFail(isLogin: Boolean) {
DriverM1Model.get().stopQueryCurrentOrder()
}
// 登出 // 登出
fun logout() { fun logout() {
DriverM1Model.get().logout() DriverM1Model.get().logout()

View File

@@ -8,7 +8,7 @@ import com.magic.mogo.och.charter.R
import com.mogo.eagle.core.utilcode.kotlin.onClick import com.mogo.eagle.core.utilcode.kotlin.onClick
import com.mogo.eagle.core.utilcode.util.ActivityUtils import com.mogo.eagle.core.utilcode.util.ActivityUtils
import com.mogo.och.common.module.manager.DriverMoFangFunctionManager import com.mogo.och.common.module.manager.DriverMoFangFunctionManager
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorManager import com.mogo.och.common.module.manager.device.LightAirconditionDoorManager
import com.mogo.och.common.module.utils.SoundPoolHelper import com.mogo.och.common.module.utils.SoundPoolHelper
import kotlinx.android.synthetic.main.driver_mofang_function_view.view.* import kotlinx.android.synthetic.main.driver_mofang_function_view.view.*

View File

@@ -19,11 +19,10 @@ import android.view.View
import android.view.animation.DecelerateInterpolator import android.view.animation.DecelerateInterpolator
import com.magic.mogo.och.charter.R import com.magic.mogo.och.charter.R
import com.mogo.commons.AbsMogoApplication import com.mogo.commons.AbsMogoApplication
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.util.ConvertUtils import com.mogo.eagle.core.utilcode.util.ConvertUtils
import com.mogo.eagle.core.utilcode.util.ThreadUtils import com.mogo.eagle.core.utilcode.util.ThreadUtils
import com.mogo.eagle.core.utilcode.util.UiThreadHandler import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.och.common.module.manager.orderlogmanager.OchChainLogManager import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager
import me.jessyan.autosize.AutoSizeConfig import me.jessyan.autosize.AutoSizeConfig
import me.jessyan.autosize.utils.AutoSizeUtils import me.jessyan.autosize.utils.AutoSizeUtils

View File

@@ -2,11 +2,9 @@ package com.magic.mogo.och.charter.view.autopilot
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel
import com.magic.mogo.och.charter.bean.QueryCurrentOrderResponse.Result.Companion.ARRIVED import com.magic.mogo.och.charter.bean.QueryCurrentOrderResponse.Result.Companion.ARRIVED
import com.magic.mogo.och.charter.bean.QueryCurrentOrderResponse.Result.Companion.ARRIVING
import com.magic.mogo.och.charter.callback.IDriverM1ControllerStatusCallback import com.magic.mogo.och.charter.callback.IDriverM1ControllerStatusCallback
import com.magic.mogo.och.charter.constant.CharterConst import com.magic.mogo.och.charter.constant.CharterConst
import com.magic.mogo.och.charter.model.DriverM1Model import com.magic.mogo.och.charter.model.DriverM1Model
import com.mogo.commons.voice.AIAssist
import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener 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.autopilot.CallerAutoPilotStatusListenerManager
@@ -17,9 +15,9 @@ import com.mogo.eagle.core.utilcode.util.ToastUtils
import com.mogo.eagle.core.utilcode.util.UiThreadHandler import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.och.common.module.manager.beautifymode.BeautifyManager import com.mogo.och.common.module.manager.beautifymode.BeautifyManager
import com.mogo.och.common.module.manager.beautifymode.IBeautifyModeCallback import com.mogo.och.common.module.manager.beautifymode.IBeautifyModeCallback
import com.mogo.och.common.module.manager.orderlogmanager.OchChainLogManager import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager
import com.mogo.och.common.module.manager.stopsidemanager.StopSideManager import com.mogo.och.common.module.manager.stopside.StopSideManager
import com.mogo.och.common.module.manager.stopsidemanager.StopSideStatus import com.mogo.och.common.module.manager.stopside.StopSideStatus
import com.mogo.och.common.module.utils.RxUtils import com.mogo.och.common.module.utils.RxUtils
import java.util.concurrent.atomic.AtomicBoolean import java.util.concurrent.atomic.AtomicBoolean

View File

@@ -29,17 +29,14 @@
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" /> app:layout_constraintStart_toStartOf="parent" />
<!--车速档位加速度--> <!--车速档位加速度-->
<com.magic.mogo.och.charter.view.carstatus.CarStatusView <FrameLayout
android:id="@+id/fl_speed" android:id="@+id/fl_speed"
android:layout_width="@dimen/dp_616" android:layout_width="@dimen/dp_624"
android:layout_height="@dimen/dp_320" android:layout_height="@dimen/dp_269"
android:layout_marginLeft="@dimen/dp_13" android:layout_marginStart="@dimen/dp_10"
android:layout_marginTop="@dimen/dp_40"
android:visibility="visible"
app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent"/> app:layout_constraintTop_toTopOf="parent"/>
<!--V2X预警红色边框--> <!--V2X预警红色边框-->
<com.mogo.eagle.core.function.hmi.ui.widget.V2XWarningView <com.mogo.eagle.core.function.hmi.ui.widget.V2XWarningView
android:layout_width="match_parent" android:layout_width="match_parent"
@@ -376,4 +373,8 @@
app:textSize="@dimen/dp_70" app:textSize="@dimen/dp_70"
tools:visibility="visible" /> tools:visibility="visible" />
<com.mogo.och.common.module.wigets.LoadingMapStatusView
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -3,7 +3,7 @@
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/module_och_bus_order_status_stationInfo" android:id="@+id/module_och_bus_order_status_stationInfo"
android:layout_width="@dimen/dp_618" android:layout_width="@dimen/dp_624"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:minHeight="@dimen/dp_754" android:minHeight="@dimen/dp_754"
android:background="@drawable/charter_line_panel_bg" android:background="@drawable/charter_line_panel_bg"

View File

@@ -19,7 +19,7 @@ android {
kapt { kapt {
useBuildCache = false useBuildCache = false
arguments { arguments {
arg("AROUTER_MODULE_NAME", project.getName()) arg("AROUTER_MODULE_NAME", "charter"+project.getName())
} }
} }
} }

View File

@@ -0,0 +1,42 @@
package com.mogo.och.charter.passenger
import android.content.Context
import android.view.View
import androidx.fragment.app.Fragment
import com.alibaba.android.arouter.facade.annotation.Route
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.och.charter.passenger.ui.MainFragment
import com.mogo.och.charter.passenger.ui.statusbar.StatusBarView
import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.biz.provider.CommonService
import com.mogo.och.common.module.biz.provider.CommonServiceImpl
/**
* 网约车-Bus-乘客端
*
* Created on 2022/3/29
*/
@Route(path = OchCommonConst.CHARTER_PASSENGER)
class CharterPassengerProvider : CommonServiceImpl() {
private val tag = CharterPassengerProvider::class.java.simpleName
private lateinit var fragment: MainFragment
override fun getFragment(): Fragment {
return fragment
}
override fun getStatusBarView(context: Context): View {
if(statusBarView==null){
statusBarView = StatusBarView(context)
}
return statusBarView!!
}
override fun init(context: Context) {
CallerLogger.d(SceneConstant.M_TAXI_P + tag, "init")
fragment = MainFragment()
}
}

View File

@@ -1,76 +0,0 @@
package com.mogo.och.charter.passenger
import android.content.Context
import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentActivity
import androidx.fragment.app.FragmentManager
import com.alibaba.android.arouter.facade.annotation.Route
import com.mogo.eagle.core.function.api.base.IMoGoFunctionProvider
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.och.charter.passenger.constant.CharterPassengerConst
import com.mogo.och.charter.passenger.ui.MainFragment
/**
* 网约车-Bus-乘客端
*
* Created on 2022/3/29
*/
@Route(path = CharterPassengerConst.PATH)
class MogoOCHBusPassenger : IMoGoFunctionProvider {
private var mActivity: FragmentActivity? = null
private var mContainerId = 0
private var mPassengerFragment: MainFragment? = null
override fun createCoverage(activity: FragmentActivity?, containerId: Int?): Fragment? {
mActivity = activity
mContainerId = containerId!!
showFragment()
return null
}
override val functionName: String
get() = "och-bus-passenger-m1"
override fun onDestroy() {
// 若不调用finish, 设置中打开关闭UITouch,会造成och fragment 重叠
mActivity?.finish()
}
override fun init(context: Context) {
}
private fun showFragment() {
val supportFragmentManager: FragmentManager? = mActivity?.supportFragmentManager
if (mPassengerFragment == null) {
d(SceneConstant.M_TAXI_P + TAG, "准备add fragment======")
val fragmentByTag: Fragment? = supportFragmentManager?.findFragmentByTag(MainFragment.TAG)
mPassengerFragment = if (fragmentByTag is MainFragment){
fragmentByTag
}else{
MainFragment()
}
if (!mPassengerFragment?.isAdded!!){
supportFragmentManager?.beginTransaction()
?.add(mContainerId, mPassengerFragment!!, MainFragment.TAG)?.commitAllowingStateLoss()
}
return
}
d(SceneConstant.M_TAXI_P + TAG, "准备show fragment")
supportFragmentManager?.beginTransaction()?.show(mPassengerFragment!!)
?.commitAllowingStateLoss()
}
private fun hideFragment() {
if (mPassengerFragment != null) {
mActivity!!.supportFragmentManager.beginTransaction().hide(mPassengerFragment!!)
.commitAllowingStateLoss()
}
}
companion object {
private val TAG = MogoOCHBusPassenger::class.java.simpleName
}
}

View File

@@ -1,8 +1,7 @@
package com.mogo.och.charter.passenger.bean.response package com.mogo.och.charter.passenger.bean.response
import com.mogo.eagle.core.data.BaseData import com.mogo.eagle.core.data.BaseData
import com.mogo.och.common.module.bean.dpmsg.LineSite import com.mogo.och.common.module.manager.socket.lan.bean.LineSite
import java.util.*
/** /**
* *

View File

@@ -25,31 +25,32 @@ import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_
import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.commons.storage.SharedPrefsMgr
import com.mogo.eagle.core.utilcode.util.* import com.mogo.eagle.core.utilcode.util.*
import com.mogo.och.charter.passenger.R import com.mogo.och.charter.passenger.R
import com.mogo.och.common.module.manager.loopmanager.LoopInfo import com.mogo.och.common.module.manager.loop.LoopInfo
import com.mogo.och.charter.passenger.bean.response.* import com.mogo.och.charter.passenger.bean.response.*
import com.mogo.och.charter.passenger.callback.* import com.mogo.och.charter.passenger.callback.*
import com.mogo.och.charter.passenger.constant.CharterPassengerConst import com.mogo.och.charter.passenger.constant.CharterPassengerConst
import com.mogo.och.common.module.manager.loopmanager.BizLoopManager import com.mogo.och.common.module.manager.loop.BizLoopManager
import com.mogo.och.charter.passenger.net.BusPassengerServiceManager import com.mogo.och.charter.passenger.net.BusPassengerServiceManager
import com.mogo.och.charter.passenger.utils.CharterVoiceManager import com.mogo.och.charter.passenger.utils.CharterVoiceManager
import com.mogo.och.common.module.wigets.toast.ToastCharterUtils import com.mogo.och.common.module.wigets.toast.ToastCharterUtils
import com.mogo.och.charter.passenger.utils.VoiceFocusManager import com.mogo.och.charter.passenger.utils.VoiceFocusManager
import com.mogo.och.common.module.bean.dpmsg.BaseDPMsg import com.mogo.och.common.module.manager.socket.lan.bean.BaseDPMsg
import com.mogo.och.common.module.bean.dpmsg.ChangeDestMsg import com.mogo.och.common.module.manager.socket.lan.bean.ChangeDestMsg
import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager import com.mogo.och.common.module.manager.socket.cloud.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.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.network.OchCommonServiceCallback import com.mogo.och.common.module.biz.login.LoginStatusEnum
import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.common.module.manager.CharterSendTripInfoManager import com.mogo.och.common.module.manager.CharterSendTripInfoManager
import com.mogo.och.common.module.manager.CharterSendTripInfoManager.LEAVE_STATION import com.mogo.och.common.module.manager.CharterSendTripInfoManager.LEAVE_STATION
import com.mogo.och.common.module.manager.autopilotmanager.OCHAdasAbilityManager import com.mogo.och.common.module.manager.autopilot.OCHAdasAbilityManager
import com.mogo.och.common.module.manager.beautifymode.BeautifyManager import com.mogo.och.common.module.manager.beautifymode.BeautifyManager
import com.mogo.och.common.module.manager.orderlogmanager.OchChainLogManager import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager
import com.mogo.och.common.module.manager.socket.lan.LanSocketManager
import com.mogo.och.common.module.utils.CoordinateCalculateRouteUtil import com.mogo.och.common.module.utils.CoordinateCalculateRouteUtil
import com.mogo.och.common.module.utils.DateTimeUtil import com.mogo.och.common.module.utils.DateTimeUtil
import com.mogo.och.common.module.utils.PinYinUtil 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 com.mogo.och.common.module.voice.VoiceNotice
import io.reactivex.Observable import io.reactivex.Observable
import io.reactivex.disposables.Disposable import io.reactivex.disposables.Disposable
@@ -163,27 +164,26 @@ object CharterPassengerModel {
* 启动轮询查询司机登录状态 * 启动轮询查询司机登录状态
*/ */
private fun listenerLoginStatus() { private fun listenerLoginStatus() {
LoginStatusManager.setControllerStatusCallback(TAG, LoginStatusManager.addListener(TAG,object : ILoginCallback{
object : LoginStatusManager.ILoginStatusChangeListener { override fun onStatusChange(currentStatus: LoginStatusEnum?) {
override fun onStatusChange(currentStatus: TaxiLoginStatusEnum) { if (LoginStatusManager.isLogin()) {
if (LoginStatusManager.isLogin()) { // 1、打开视频播放、
// 1、打开视频播放、 // 2 、打开空调暖风机灯设置页面
// 2 、打开空调暖风机灯设置页面 // 3、车控页面
// 3、车控页面 // 4、打开选择线路页面
// 4、打开选择线路页面 BizLoopManager.removeLoopFunction(TAGLOGIN)
BizLoopManager.removeLoopFunction(TAGLOGIN) d(M_BUS_P + TAG, "结束登录状态轮询")
d(M_BUS_P + TAG, "结束登录状态轮询") // 启动订单轮
// 启动订单轮 startOrderLoop()
startOrderLoop() } else {
} else { BizLoopManager.setLoopFunction(
BizLoopManager.setLoopFunction( TAGLOGIN,
TAGLOGIN, LoopInfo(3, ::queryLoginStatus)
LoopInfo(3, ::queryLoginStatus) )
) d(M_BUS_P + TAG, "启动登录状态轮询")
d(M_BUS_P + TAG, "启动登录状态轮询")
}
} }
}) }
})
} }
// endregion // endregion
@@ -291,26 +291,7 @@ object CharterPassengerModel {
* 查询车辆登录状态、车牌、司机手机号、司机sn * 查询车辆登录状态、车牌、司机手机号、司机sn
*/ */
fun queryLoginStatus() { fun queryLoginStatus() {
BusPassengerServiceManager.queryDriverOperationStatus( LoginStatusManager.queryLoginStatusByNet()
mContext, object : OchCommonServiceCallback<M1DriverLoginStatusResponse> {
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()
}
}
})
} }
//监听网络变化,避免启动机器时无网导致无法更新订单信息 //监听网络变化,避免启动机器时无网导致无法更新订单信息
@@ -1001,10 +982,7 @@ object CharterPassengerModel {
OrderInfoResponse.ARRIVED, OrderInfoResponse.ARRIVED,
currentTimeStamp currentTimeStamp
) )
CallerTelematicManager.sendMsgToServer( LanSocketManager.sendMsgToServer(msg)
OchCommonConst.BUSINESS_STRING,
GsonUtils.toJson(msg).toByteArray()
)
d(M_BUS_P + BaseDPMsg.TAG, "到站发送数据${msg}") d(M_BUS_P + BaseDPMsg.TAG, "到站发送数据${msg}")
} }
@@ -1050,7 +1028,8 @@ object CharterPassengerModel {
if(size>3){ if(size>3){
return return
} }
BusPassengerServiceManager.queryLineSiteList(mContext,"$lineId",object :OchCommonServiceCallback<SiteInfoResponse>{ BusPassengerServiceManager.queryLineSiteList(mContext,"$lineId",object :
OchCommonServiceCallback<SiteInfoResponse> {
override fun onSuccess(data: SiteInfoResponse?) { override fun onSuccess(data: SiteInfoResponse?) {
data?.data?.forEach { data?.data?.forEach {
if (it.siteId==siteId) { if (it.siteId==siteId) {

View File

@@ -4,8 +4,8 @@ import com.mogo.commons.storage.SharedPrefsMgr
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener 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.autopilot.CallerAutoPilotStatusListenerManager
import com.mogo.eagle.core.utilcode.util.TAG import com.mogo.eagle.core.utilcode.util.TAG
import com.mogo.och.common.module.manager.auditionmanager.AuditionManager import com.mogo.och.common.module.manager.audition.AuditionManager
import com.mogo.och.common.module.manager.auditionmanager.PlayState import com.mogo.och.common.module.manager.audition.PlayState
import com.mogo.och.common.module.utils.RxUtils import com.mogo.och.common.module.utils.RxUtils
import io.reactivex.disposables.Disposable import io.reactivex.disposables.Disposable

View File

@@ -8,11 +8,11 @@ import com.mogo.och.charter.passenger.bean.request.ArriveDestRequest
import com.mogo.och.charter.passenger.bean.request.EndOrderRequest import com.mogo.och.charter.passenger.bean.request.EndOrderRequest
import com.mogo.och.charter.passenger.bean.response.* import com.mogo.och.charter.passenger.bean.response.*
import com.mogo.och.common.module.wigets.toast.ToastCharterUtils import com.mogo.och.common.module.wigets.toast.ToastCharterUtils
import com.mogo.och.common.module.biz.constant.OchCommonConst import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.biz.network.OchCommonServiceCallback import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.common.module.biz.network.OchCommonSubscribeImpl import com.mogo.och.common.module.network.OchCommonSubscribeImpl
import com.mogo.och.common.module.biz.network.interceptor.transformIoTry import com.mogo.och.common.module.network.interceptor.transformIoTry
import com.mogo.och.common.module.biz.network.interceptor.transformTry import com.mogo.och.common.module.network.interceptor.transformTry
/** /**
* Created on 2022/3/31 * Created on 2022/3/31

View File

@@ -31,13 +31,13 @@ import com.mogo.och.charter.passenger.receive.DriverMessage
import com.mogo.och.charter.passenger.ui.MainFragment import com.mogo.och.charter.passenger.ui.MainFragment
import com.mogo.och.charter.passenger.ui.overmapview.MakerWithSiteName import com.mogo.och.charter.passenger.ui.overmapview.MakerWithSiteName
import com.mogo.och.charter.passenger.ui.overmapview.MakerWithSiteNamewithCheck import com.mogo.och.charter.passenger.ui.overmapview.MakerWithSiteNamewithCheck
import com.mogo.och.common.module.biz.network.OchCommonServiceCallback import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.common.module.manager.autopilotmanager.OCHAdasAbilityManager import com.mogo.och.common.module.manager.autopilot.OCHAdasAbilityManager
import com.mogo.och.common.module.manager.beautifymode.BeautifyManager import com.mogo.och.common.module.manager.beautifymode.BeautifyManager
import com.mogo.och.common.module.manager.stopsidemanager.StopSideManager import com.mogo.och.common.module.manager.stopside.StopSideManager
import com.mogo.och.common.module.manager.devicemanage.callback.LightAirconditionDoorCallback import com.mogo.och.common.module.manager.device.callback.LightAirconditionDoorCallback
import com.mogo.och.common.module.manager.stopsidemanager.OCHPlanningActionsCallback import com.mogo.och.common.module.manager.stopside.OCHPlanningActionsCallback
import com.mogo.och.common.module.manager.stopsidemanager.StopSideStatus import com.mogo.och.common.module.manager.stopside.StopSideStatus
import com.mogo.och.common.module.utils.CoordinateCalculateRouteUtil import com.mogo.och.common.module.utils.CoordinateCalculateRouteUtil
import com.mogo.och.common.module.voice.VoiceNotice import com.mogo.och.common.module.voice.VoiceNotice
import com.mogo.och.common.module.wigets.toast.ToastCharterUtils import com.mogo.och.common.module.wigets.toast.ToastCharterUtils

View File

@@ -1,36 +0,0 @@
package com.mogo.och.charter.passenger.provider;
import android.content.Context;
import android.view.View;
import com.mogo.och.charter.passenger.ui.statusbar.StatusBarView;
import androidx.annotation.NonNull;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.mogo.eagle.core.data.constants.MogoServicePaths;
import com.mogo.eagle.core.function.api.hmi.view.IStatusViewLayout;
import com.mogo.och.charter.passenger.ui.statusbar.StatusBarView;
/**
* @author congtaowang
* @since 2020-01-06
* <p>
* 根据优先级控制显示 window view.
*/
@Route( path = MogoServicePaths.PATH_STATUS_VIEW_MANAGER )
public class StatusViewManager implements IStatusViewLayout {
private StatusBarView statusBarView;
@NonNull
@Override
public View getStatusView(Context context) {
return statusBarView;
}
@Override
public void init(Context context) {
statusBarView = new StatusBarView(context);
}
}

View File

@@ -11,11 +11,14 @@ import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.och.charter.passenger.R import com.mogo.och.charter.passenger.R
import com.mogo.och.charter.passenger.bean.response.OrderInfoResponse import com.mogo.och.charter.passenger.bean.response.OrderInfoResponse
import com.mogo.och.charter.passenger.model.CharterPassengerModel import com.mogo.och.charter.passenger.model.CharterPassengerModel
import com.mogo.och.common.module.bean.dpmsg.* import com.mogo.och.common.module.manager.socket.cloud.OCHSocketMessageManager
import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.biz.constant.OchCommonConst import com.mogo.och.common.module.manager.device.LightAirconditionDoorManager
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorManager import com.mogo.och.common.module.manager.device.LightAirconditionDoorStatusManager
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorStatusManager import com.mogo.och.common.module.manager.socket.lan.bean.AppConnectMsg
import com.mogo.och.common.module.manager.socket.lan.bean.BaseDPMsg
import com.mogo.och.common.module.manager.socket.lan.bean.ChangeDestMsg
import com.mogo.och.common.module.manager.socket.lan.bean.DPMsgType
import com.mogo.och.common.module.utils.DateTimeUtil import com.mogo.och.common.module.utils.DateTimeUtil
import com.mogo.och.common.module.utils.SoundPoolHelper import com.mogo.och.common.module.utils.SoundPoolHelper
import com.mogo.och.common.module.voice.VoiceNotice import com.mogo.och.common.module.voice.VoiceNotice

View File

@@ -31,8 +31,10 @@ import com.mogo.och.charter.passenger.ui.dialogfragment.M1CarUserNoOrderFragment
import com.mogo.och.charter.passenger.ui.dialogfragment.NoviceGuidanceFragment import com.mogo.och.charter.passenger.ui.dialogfragment.NoviceGuidanceFragment
import com.mogo.och.charter.passenger.ui.lockview.LockManager import com.mogo.och.charter.passenger.ui.lockview.LockManager
import com.mogo.och.charter.passenger.ui.statusbar.StatusBarView import com.mogo.och.charter.passenger.ui.statusbar.StatusBarView
import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.wigets.toast.ToastCharterUtils 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 com.mogo.och.common.module.biz.provider.CommonService
import kotlinx.android.synthetic.main.charter_p_main_fragment.aciv_enter_video import kotlinx.android.synthetic.main.charter_p_main_fragment.aciv_enter_video
import kotlinx.android.synthetic.main.charter_p_main_fragment.aciv_map_2_default import kotlinx.android.synthetic.main.charter_p_main_fragment.aciv_map_2_default
import kotlinx.android.synthetic.main.charter_p_main_fragment.bb_boorombar import kotlinx.android.synthetic.main.charter_p_main_fragment.bb_boorombar
@@ -80,13 +82,16 @@ class MainFragment : MvpFragment<MainFragment?, BusPassengerPresenter?>(), IMogo
private var statusBarView: StatusBarView? = null private var statusBarView: StatusBarView? = null
override fun getLayoutId(): Int { override fun getLayoutId(): Int {
(ARouter.getInstance().build(MogoServicePaths.PATH_STATUS_VIEW_MANAGER) (ARouter.getInstance().build(OchCommonConst.CHARTER_PASSENGER)
.navigation() as? IStatusViewLayout)?.apply { .navigation() as? CommonService)?.apply {
val statusView = getStatusView(requireContext()) context?.let {
if (statusView is StatusBarView) { val statusView = getStatusBarView(it)
statusBarView = statusView if (statusView is StatusBarView) {
statusBarView = statusView
}
} }
} }
return R.layout.charter_p_main_fragment return R.layout.charter_p_main_fragment
} }
@@ -138,6 +143,7 @@ class MainFragment : MvpFragment<MainFragment?, BusPassengerPresenter?>(), IMogo
} }
showBizView(orderinfo = true) showBizView(orderinfo = true)
} }
BottomBar.SelectView.SETTING -> showBizView(softControl = true) BottomBar.SelectView.SETTING -> showBizView(softControl = true)
BottomBar.SelectView.LINE -> showBizView(selectLine = true) BottomBar.SelectView.LINE -> showBizView(selectLine = true)
BottomBar.SelectView.VIDEO -> showBizView(showVideo = true) BottomBar.SelectView.VIDEO -> showBizView(showVideo = true)
@@ -207,10 +213,10 @@ class MainFragment : MvpFragment<MainFragment?, BusPassengerPresenter?>(), IMogo
} else { } else {
biz_video.visibility = View.GONE biz_video.visibility = View.GONE
} }
if(showMusic) { if (showMusic) {
mcv_play_music.visibility = View.VISIBLE mcv_play_music.visibility = View.VISIBLE
statusBarView?.setBackgroudColor(R.color.charter_p_40ffffff) statusBarView?.setBackgroudColor(R.color.charter_p_40ffffff)
}else{ } else {
mcv_play_music.visibility = View.GONE mcv_play_music.visibility = View.GONE
} }
} }
@@ -290,7 +296,7 @@ class MainFragment : MvpFragment<MainFragment?, BusPassengerPresenter?>(), IMogo
) )
} }
fun showOvermapPoint(){ fun showOvermapPoint() {
omvOverMap.setDebugMode(true) omvOverMap.setDebugMode(true)
} }
@@ -348,7 +354,7 @@ class MainFragment : MvpFragment<MainFragment?, BusPassengerPresenter?>(), IMogo
omvOverMap?.drawSitePolyline(coordinates, lineTrajectory) omvOverMap?.drawSitePolyline(coordinates, lineTrajectory)
} }
fun includePoint(coordinates: List<LatLng>){ fun includePoint(coordinates: List<LatLng>) {
omvOverMap?.includeSitePointsAndUpdateCamera(coordinates) omvOverMap?.includeSitePointsAndUpdateCamera(coordinates)
} }

View File

@@ -5,7 +5,7 @@ import android.util.AttributeSet
import com.mogo.eagle.core.utilcode.util.ActivityUtils import com.mogo.eagle.core.utilcode.util.ActivityUtils
import com.mogo.och.charter.passenger.R import com.mogo.och.charter.passenger.R
import com.mogo.och.charter.passenger.ui.bottom.BottomClickView import com.mogo.och.charter.passenger.ui.bottom.BottomClickView
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorManager import com.mogo.och.common.module.manager.device.LightAirconditionDoorManager
import com.mogo.och.common.module.utils.SoundPoolHelper import com.mogo.och.common.module.utils.SoundPoolHelper
class CloseDoorView @JvmOverloads constructor( class CloseDoorView @JvmOverloads constructor(

View File

@@ -9,7 +9,6 @@ import android.view.View
import androidx.constraintlayout.widget.ConstraintLayout import androidx.constraintlayout.widget.ConstraintLayout
import com.mogo.commons.AbsMogoApplication import com.mogo.commons.AbsMogoApplication
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P
@@ -20,8 +19,8 @@ import com.mogo.och.charter.passenger.R
import com.mogo.och.charter.passenger.callback.ICharterPassengerAutoStatusChangeCallback import com.mogo.och.charter.passenger.callback.ICharterPassengerAutoStatusChangeCallback
import com.mogo.och.charter.passenger.model.CharterPassengerModel import com.mogo.och.charter.passenger.model.CharterPassengerModel
import com.mogo.och.charter.passenger.ui.bottom.BottomClickView import com.mogo.och.charter.passenger.ui.bottom.BottomClickView
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorStatusManager import com.mogo.och.common.module.manager.device.LightAirconditionDoorStatusManager
import com.mogo.och.common.module.manager.stopsidemanager.StopSideManager import com.mogo.och.common.module.manager.stopside.StopSideManager
import com.mogo.och.common.module.utils.RxUtils import com.mogo.och.common.module.utils.RxUtils
import com.mogo.och.common.module.utils.SoundPoolHelper import com.mogo.och.common.module.utils.SoundPoolHelper
import io.reactivex.disposables.Disposable import io.reactivex.disposables.Disposable

View File

@@ -14,9 +14,9 @@ import com.bumptech.glide.request.RequestOptions
import com.bumptech.glide.request.target.SimpleTarget import com.bumptech.glide.request.target.SimpleTarget
import com.bumptech.glide.request.transition.Transition import com.bumptech.glide.request.transition.Transition
import com.mogo.och.charter.passenger.R import com.mogo.och.charter.passenger.R
import com.mogo.och.common.module.manager.auditionmanager.AuditionManager import com.mogo.och.common.module.manager.audition.AuditionManager
import com.mogo.och.common.module.manager.auditionmanager.MusicData import com.mogo.och.common.module.manager.audition.MusicData
import com.mogo.och.common.module.manager.auditionmanager.PlayState import com.mogo.och.common.module.manager.audition.PlayState
import kotlinx.android.synthetic.main.charter_p_bottom_music.view.aciv_center_image import kotlinx.android.synthetic.main.charter_p_bottom_music.view.aciv_center_image
import kotlinx.android.synthetic.main.charter_p_bottom_music.view.actv_title import kotlinx.android.synthetic.main.charter_p_bottom_music.view.actv_title
import kotlinx.android.synthetic.main.charter_p_bottom_music.view.aciv_playing import kotlinx.android.synthetic.main.charter_p_bottom_music.view.aciv_playing

View File

@@ -5,7 +5,7 @@ import android.util.AttributeSet
import com.mogo.eagle.core.utilcode.util.ActivityUtils import com.mogo.eagle.core.utilcode.util.ActivityUtils
import com.mogo.och.charter.passenger.R import com.mogo.och.charter.passenger.R
import com.mogo.och.charter.passenger.ui.bottom.BottomClickView import com.mogo.och.charter.passenger.ui.bottom.BottomClickView
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorManager import com.mogo.och.common.module.manager.device.LightAirconditionDoorManager
import com.mogo.och.common.module.utils.SoundPoolHelper import com.mogo.och.common.module.utils.SoundPoolHelper
class OpenDoorView @JvmOverloads constructor( class OpenDoorView @JvmOverloads constructor(

View File

@@ -3,13 +3,12 @@ package com.mogo.och.charter.passenger.ui.bottom.impl
import android.content.Context import android.content.Context
import android.util.AttributeSet import android.util.AttributeSet
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager
import com.mogo.eagle.core.utilcode.util.ActivityUtils import com.mogo.eagle.core.utilcode.util.ActivityUtils
import com.mogo.och.common.module.wigets.toast.ToastCharterUtils import com.mogo.och.common.module.wigets.toast.ToastCharterUtils
import com.mogo.och.charter.passenger.R import com.mogo.och.charter.passenger.R
import com.mogo.och.charter.passenger.ui.bottom.BottomClickView import com.mogo.och.charter.passenger.ui.bottom.BottomClickView
import com.mogo.och.common.module.manager.stopsidemanager.StopSideManager import com.mogo.och.common.module.manager.stopside.StopSideManager
import com.mogo.och.common.module.utils.SoundPoolHelper import com.mogo.och.common.module.utils.SoundPoolHelper
class StopSiteView @JvmOverloads constructor( class StopSiteView @JvmOverloads constructor(

View File

@@ -18,7 +18,7 @@ import com.mogo.eagle.core.utilcode.util.ClickUtils
import com.mogo.och.charter.passenger.R import com.mogo.och.charter.passenger.R
import com.mogo.och.charter.passenger.presenter.BusPassengerCarUseAndNoOrderPresenter import com.mogo.och.charter.passenger.presenter.BusPassengerCarUseAndNoOrderPresenter
import com.mogo.och.charter.passenger.utils.CharterVoiceManager import com.mogo.och.charter.passenger.utils.CharterVoiceManager
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorManager import com.mogo.och.common.module.manager.device.LightAirconditionDoorManager
import kotlinx.android.synthetic.main.charter_p_order_end.iv_end_order_closedoor import kotlinx.android.synthetic.main.charter_p_order_end.iv_end_order_closedoor
import kotlinx.android.synthetic.main.charter_p_order_end.iv_end_order_opendoor import kotlinx.android.synthetic.main.charter_p_order_end.iv_end_order_opendoor

View File

@@ -8,7 +8,7 @@ import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.findViewTreeViewModelStoreOwner import androidx.lifecycle.findViewTreeViewModelStoreOwner
import com.mogo.och.charter.passenger.R import com.mogo.och.charter.passenger.R
import com.mogo.och.charter.passenger.ui.music.list.MusicListView import com.mogo.och.charter.passenger.ui.music.list.MusicListView
import com.mogo.och.common.module.manager.auditionmanager.MusicData import com.mogo.och.common.module.manager.audition.MusicData
import kotlinx.android.synthetic.main.charter_p_music.view.mlv_list import kotlinx.android.synthetic.main.charter_p_music.view.mlv_list
import kotlinx.android.synthetic.main.charter_p_music.view.mpv_music_info import kotlinx.android.synthetic.main.charter_p_music.view.mpv_music_info

View File

@@ -13,8 +13,8 @@ import androidx.core.content.ContextCompat
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.och.charter.passenger.R import com.mogo.och.charter.passenger.R
import com.mogo.och.common.module.manager.auditionmanager.MusicData import com.mogo.och.common.module.manager.audition.MusicData
import com.mogo.och.common.module.manager.auditionmanager.PlayState import com.mogo.och.common.module.manager.audition.PlayState
import me.jessyan.autosize.AutoSizeCompat import me.jessyan.autosize.AutoSizeCompat
/** /**

View File

@@ -9,7 +9,7 @@ import androidx.lifecycle.findViewTreeViewModelStoreOwner
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.och.charter.passenger.R import com.mogo.och.charter.passenger.R
import com.mogo.och.common.module.manager.auditionmanager.MusicData import com.mogo.och.common.module.manager.audition.MusicData
import kotlinx.android.synthetic.main.charter_p_music_list.view.rv_music_list import kotlinx.android.synthetic.main.charter_p_music_list.view.rv_music_list
class MusicListView : ConstraintLayout, MusicListViewModel.IMusicListViewCaLillback, class MusicListView : ConstraintLayout, MusicListViewModel.IMusicListViewCaLillback,

View File

@@ -3,8 +3,8 @@ package com.mogo.och.charter.passenger.ui.music.list
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.util.UiThreadHandler import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.och.common.module.manager.auditionmanager.AuditionManager import com.mogo.och.common.module.manager.audition.AuditionManager
import com.mogo.och.common.module.manager.auditionmanager.MusicData import com.mogo.och.common.module.manager.audition.MusicData
class MusicListViewModel : ViewModel(), class MusicListViewModel : ViewModel(),
AuditionManager.MusicDataChangeListener { AuditionManager.MusicDataChangeListener {

View File

@@ -13,13 +13,12 @@ import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.findViewTreeViewModelStoreOwner import androidx.lifecycle.findViewTreeViewModelStoreOwner
import com.bumptech.glide.Glide import com.bumptech.glide.Glide
import com.bumptech.glide.request.RequestOptions import com.bumptech.glide.request.RequestOptions
import com.mogo.eagle.core.utilcode.kotlin.onClick
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.util.TimeTransformUtils import com.mogo.eagle.core.utilcode.util.TimeTransformUtils
import com.mogo.och.charter.passenger.R import com.mogo.och.charter.passenger.R
import com.mogo.och.charter.passenger.ui.music.list.MusicListViewModel import com.mogo.och.charter.passenger.ui.music.list.MusicListViewModel
import com.mogo.och.common.module.manager.auditionmanager.MusicData import com.mogo.och.common.module.manager.audition.MusicData
import com.mogo.och.common.module.manager.auditionmanager.PlayState import com.mogo.och.common.module.manager.audition.PlayState
import com.mogo.och.common.module.utils.DateTimeUtil import com.mogo.och.common.module.utils.DateTimeUtil
import kotlinx.android.synthetic.main.charter_p_music_playing.view.iv_music_cover import kotlinx.android.synthetic.main.charter_p_music_playing.view.iv_music_cover
import kotlinx.android.synthetic.main.charter_p_music_playing.view.iv_music_cover_bg import kotlinx.android.synthetic.main.charter_p_music_playing.view.iv_music_cover_bg

View File

@@ -3,8 +3,8 @@ package com.mogo.och.charter.passenger.ui.music.playing
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel
import com.elegant.utils.UiThreadHandler import com.elegant.utils.UiThreadHandler
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.och.common.module.manager.auditionmanager.AuditionManager import com.mogo.och.common.module.manager.audition.AuditionManager
import com.mogo.och.common.module.manager.auditionmanager.MusicData import com.mogo.och.common.module.manager.audition.MusicData
class MusicPlayingViewModel : ViewModel(), AuditionManager.MusicDataChangeListener { class MusicPlayingViewModel : ViewModel(), AuditionManager.MusicDataChangeListener {

View File

@@ -2,18 +2,16 @@ package com.mogo.och.charter.passenger.ui.orderinfo
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel
import com.mogo.eagle.core.data.BaseData import com.mogo.eagle.core.data.BaseData
import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger 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.mogo.logger.scene.SceneConstant
import com.mogo.eagle.core.utilcode.util.GsonUtils
import com.mogo.eagle.core.utilcode.util.UiThreadHandler import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.och.charter.passenger.callback.ITimeCallback import com.mogo.och.charter.passenger.callback.ITimeCallback
import com.mogo.och.charter.passenger.model.CharterPassengerModel import com.mogo.och.charter.passenger.model.CharterPassengerModel
import com.mogo.och.common.module.wigets.toast.ToastCharterUtils import com.mogo.och.common.module.wigets.toast.ToastCharterUtils
import com.mogo.och.common.module.bean.dpmsg.BaseDPMsg import com.mogo.och.common.module.manager.socket.lan.bean.BaseDPMsg
import com.mogo.och.common.module.bean.dpmsg.EndOrderMsg import com.mogo.och.common.module.manager.socket.lan.bean.EndOrderMsg
import com.mogo.och.common.module.biz.constant.OchCommonConst import com.mogo.och.common.module.manager.socket.lan.LanSocketManager
import com.mogo.och.common.module.biz.network.OchCommonServiceCallback import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.common.module.utils.DateTimeUtil import com.mogo.och.common.module.utils.DateTimeUtil
class OrderInfoViewModel: ViewModel(), ITimeCallback { class OrderInfoViewModel: ViewModel(), ITimeCallback {
@@ -74,10 +72,7 @@ class OrderInfoViewModel: ViewModel(), ITimeCallback {
val msg = EndOrderMsg( val msg = EndOrderMsg(
CharterPassengerModel.getCurrentOrderInfo()?.orderNo?:"", CharterPassengerModel.getCurrentOrderInfo()?.orderNo?:"",
) )
CallerTelematicManager.sendMsgToServer( LanSocketManager.sendMsgToServer(msg)
OchCommonConst.BUSINESS_STRING,
GsonUtils.toJson(msg).toByteArray()
)
CallerLogger.d(SceneConstant.M_BUS_P + BaseDPMsg.TAG, "发送数据:结束订单${msg}") CallerLogger.d(SceneConstant.M_BUS_P + BaseDPMsg.TAG, "发送数据:结束订单${msg}")
} }
} }

View File

@@ -21,16 +21,17 @@ import com.mogo.och.charter.passenger.model.IOrderStatusChangeListener
import com.mogo.och.charter.passenger.model.OrderStatusEnum import com.mogo.och.charter.passenger.model.OrderStatusEnum
import com.mogo.och.charter.passenger.net.BusPassengerServiceManager import com.mogo.och.charter.passenger.net.BusPassengerServiceManager
import com.mogo.och.common.module.wigets.toast.ToastCharterUtils import com.mogo.och.common.module.wigets.toast.ToastCharterUtils
import com.mogo.och.common.module.bean.dpmsg.BaseDPMsg import com.mogo.och.common.module.manager.socket.lan.bean.BaseDPMsg
import com.mogo.och.common.module.bean.dpmsg.ChangeDestMsg import com.mogo.och.common.module.manager.socket.lan.bean.ChangeDestMsg
import com.mogo.och.common.module.bean.dpmsg.DPMsgType import com.mogo.och.common.module.manager.socket.lan.bean.DPMsgType
import com.mogo.och.common.module.bean.dpmsg.LineSite import com.mogo.och.common.module.manager.socket.lan.bean.LineSite
import com.mogo.och.common.module.biz.constant.OchCommonConst import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.biz.network.OchCommonServiceCallback import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.common.module.manager.stopsidemanager.StopSideManager import com.mogo.och.common.module.manager.stopside.StopSideManager
import com.mogo.och.common.module.manager.loopmanager.BizLoopManager import com.mogo.och.common.module.manager.loop.BizLoopManager
import com.mogo.och.common.module.manager.loopmanager.LoopInfo import com.mogo.och.common.module.manager.loop.LoopInfo
import com.mogo.och.common.module.manager.stopsidemanager.StopSideStatus import com.mogo.och.common.module.manager.socket.lan.LanSocketManager
import com.mogo.och.common.module.manager.stopside.StopSideStatus
import com.mogo.och.common.module.utils.RxUtils import com.mogo.och.common.module.utils.RxUtils
import io.reactivex.disposables.Disposable import io.reactivex.disposables.Disposable
import org.greenrobot.eventbus.EventBus import org.greenrobot.eventbus.EventBus
@@ -242,10 +243,7 @@ class SelectLineViewModel : ViewModel(), IOrderStatusChangeListener {
0, 0,
sentDataSite sentDataSite
) )
CallerTelematicManager.sendMsgToServer( LanSocketManager.sendMsgToServer(msg)
OchCommonConst.BUSINESS_STRING,
GsonUtils.toJson(msg).toByteArray()
)
CallerLogger.d(SceneConstant.M_BUS_P + BaseDPMsg.TAG, "发送数据:切换站点${msg}") CallerLogger.d(SceneConstant.M_BUS_P + BaseDPMsg.TAG, "发送数据:切换站点${msg}")
} }
viewCallback?.hideDataWaitDriverMsg() viewCallback?.hideDataWaitDriverMsg()

View File

@@ -6,11 +6,11 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P
import com.mogo.eagle.core.utilcode.util.UiThreadHandler import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.och.common.module.wigets.toast.ToastCharterUtils import com.mogo.och.common.module.wigets.toast.ToastCharterUtils
import com.mogo.och.common.module.manager.devicemanage.callback.LightAirconditionDoorCallback import com.mogo.och.common.module.manager.device.callback.LightAirconditionDoorCallback
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorStatusManager import com.mogo.och.common.module.manager.device.LightAirconditionDoorStatusManager
import com.mogo.och.common.module.manager.devicemanage.data.AirconditionStatus import com.mogo.och.common.module.manager.device.data.AirconditionStatus
import com.mogo.och.common.module.manager.devicemanage.data.HeaterStatue import com.mogo.och.common.module.manager.device.data.HeaterStatue
import com.mogo.och.common.module.manager.devicemanage.data.LightStatus import com.mogo.och.common.module.manager.device.data.LightStatus
import com.mogo.och.common.module.utils.RxUtils import com.mogo.och.common.module.utils.RxUtils
import io.reactivex.disposables.Disposable import io.reactivex.disposables.Disposable

View File

@@ -27,10 +27,10 @@ import com.mogo.och.charter.passenger.model.OrderStatusEnum
import com.mogo.och.charter.passenger.ui.debugview.DebugEvent import com.mogo.och.charter.passenger.ui.debugview.DebugEvent
import com.mogo.och.common.module.manager.beautifymode.BeautifyManager import com.mogo.och.common.module.manager.beautifymode.BeautifyManager
import com.mogo.och.common.module.manager.beautifymode.IBeautifyModeCallback import com.mogo.och.common.module.manager.beautifymode.IBeautifyModeCallback
import com.mogo.och.common.module.manager.loopmanager.BizLoopManager import com.mogo.och.common.module.manager.loop.BizLoopManager
import com.mogo.och.common.module.manager.loopmanager.LoopInfo import com.mogo.och.common.module.manager.loop.LoopInfo
import com.mogo.och.common.module.manager.stopsidemanager.StopSideManager import com.mogo.och.common.module.manager.stopside.StopSideManager
import com.mogo.och.common.module.manager.stopsidemanager.StopSideStatus import com.mogo.och.common.module.manager.stopside.StopSideStatus
import kotlinx.android.synthetic.main.charter_p_statusview_datetime.view.aciv_connect_driver_status import kotlinx.android.synthetic.main.charter_p_statusview_datetime.view.aciv_connect_driver_status
import kotlinx.android.synthetic.main.charter_p_statusview_datetime.view.actv_auto_status import kotlinx.android.synthetic.main.charter_p_statusview_datetime.view.actv_auto_status
import kotlinx.android.synthetic.main.charter_p_statusview_datetime.view.bizz_view import kotlinx.android.synthetic.main.charter_p_statusview_datetime.view.bizz_view

View File

@@ -23,7 +23,7 @@ import com.mogo.och.common.module.wigets.toast.ToastCharterUtils
import com.mogo.eagle.core.widget.media.video.TextureVideoViewOutlineProvider import com.mogo.eagle.core.widget.media.video.TextureVideoViewOutlineProvider
import com.mogo.och.charter.passenger.R import com.mogo.och.charter.passenger.R
import com.mogo.och.charter.passenger.utils.FullVideoUtils import com.mogo.och.charter.passenger.utils.FullVideoUtils
import com.mogo.och.common.module.manager.audiofocusmanager.AudioFocusManager import com.mogo.och.common.module.manager.audiofocus.AudioFocusManager
import com.mogo.och.common.module.wigets.media.MediaItem import com.mogo.och.common.module.wigets.media.MediaItem
import com.shuyu.gsyvideoplayer.listener.VideoAllCallBack import com.shuyu.gsyvideoplayer.listener.VideoAllCallBack
import com.shuyu.gsyvideoplayer.utils.GSYVideoType import com.shuyu.gsyvideoplayer.utils.GSYVideoType

View File

@@ -130,7 +130,7 @@
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" /> app:layout_constraintStart_toStartOf="parent" />
<com.mogo.och.common.module.manager.xiaozhimanager.ZhiView <com.mogo.och.common.module.manager.xiaozhi.ZhiView
android:id="@+id/zv_msg_pop_bottom" android:id="@+id/zv_msg_pop_bottom"
android:layout_width="@dimen/dp_240" android:layout_width="@dimen/dp_240"
android:layout_height="@dimen/dp_240" android:layout_height="@dimen/dp_240"
@@ -166,4 +166,8 @@
android:layout_marginBottom="@dimen/dp_m_2" android:layout_marginBottom="@dimen/dp_m_2"
app:layout_constraintStart_toStartOf="parent" /> app:layout_constraintStart_toStartOf="parent" />
<com.mogo.och.common.module.wigets.LoadingMapStatusView
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</com.mogo.och.charter.passenger.ui.lockview.LockViewConstrainLayout> </com.mogo.och.charter.passenger.ui.lockview.LockViewConstrainLayout>

View File

@@ -54,7 +54,7 @@
<!--Wifi状态--> <!--Wifi状态-->
<com.mogo.eagle.core.function.hmi.ui.widget.WifiStateView <com.mogo.eagle.core.function.hmi.ui.widget.WifiStateView
android:id="@+id/wifiStateView" android:id="@+id/wifiStateView"
android:layout_width="@dimen/dp_34" android:layout_width="wrap_content"
android:layout_height="@dimen/dp_34" android:layout_height="@dimen/dp_34"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"

1
OCH/common/biz/.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
/build

View File

@@ -0,0 +1,66 @@
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())
}
}
}
resourcePrefix "biz_"
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")
}
}

View File

21
OCH/common/biz/proguard-rules.pro vendored Normal file
View File

@@ -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

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.mogo.och.biz">
</manifest>

View File

@@ -1,11 +1,11 @@
package com.mogo.och.common.module.biz.constant package com.mogo.och.biz.login
import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.config.FunctionBuildConfig
/** /**
* Created on 2021/12/6 * Created on 2021/12/6
*/ */
class OchCommonConst { class LoginConst {
companion object { companion object {
@JvmStatic @JvmStatic
fun getBaseUrl(): String { fun getBaseUrl(): String {
@@ -28,7 +28,24 @@ class OchCommonConst {
// token 失效 重新获取token // token 失效 重新获取token
const val WAIT_TAKEN = 100046 const val WAIT_TAKEN = 100046
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 const val BUSINESS_STRING = 100

View File

@@ -0,0 +1,199 @@
package com.mogo.och.biz.login
import android.content.Context
import android.view.View
import androidx.fragment.app.Fragment
import com.alibaba.android.arouter.facade.annotation.Route
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.och.biz.login.callback.ILoginViewCallback
import com.mogo.och.biz.login.model.LoginStatusDefaultModel
import com.mogo.och.biz.login.ui.LoginFragment
import com.mogo.och.biz.login.ui.LoginPassengerFragment
import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.common.module.biz.login.BusinessEnum
import com.mogo.och.common.module.biz.login.LoginInfo
import com.mogo.och.common.module.biz.login.LoginService
import com.mogo.och.common.module.biz.login.LoginStatusManager
import com.mogo.och.common.module.biz.login.RoleEnum
import com.mogo.och.common.module.biz.login.LoginStatusEnum
import com.mogo.och.common.module.biz.login.OpenOrderStatusEnum
import com.mogo.och.common.module.manager.socket.lan.bean.BusinessType
import com.mogo.och.common.module.manager.socket.lan.bean.EnvType
import com.mogo.och.common.module.manager.socket.lan.bean.ProjectType
import com.mogo.och.common.module.manager.socket.lan.bean.VehicleType
import com.mogo.och.common.module.utils.FlavorUtils
/**
* 网约车小巴业务实现入口
*
* @author tongchenfei
*/
@Route(path = OchCommonConst.BIZ_LOGIN)
class LoginProvider : LoginService {
private val tag = LoginProvider::class.java.simpleName
private lateinit var loginFragment: Fragment
private var loginStatus: LoginStatusEnum = LoginStatusEnum.None
private var businessEnum: BusinessEnum = BusinessEnum.None
private var openOrderStatusEnum: OpenOrderStatusEnum = OpenOrderStatusEnum.None
private var loginInfo: LoginInfo? = null
override fun init(context: Context) {
CallerLogger.d(tag, "LoginProvider init")
loginFragment = if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) {
LoginFragment()
} else if (AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) {
LoginPassengerFragment()
} else {
LoginFragment()
}
}
override fun getFragment(): Fragment {
CallerLogger.d(tag, "getFragment:${loginFragment}")
return loginFragment
}
override fun getStatusBarView(context: Context): View {
return View(context)
}
override fun setLoginStatus(status: Int) {
CallerLogger.d(tag, "setLoginStatus:${status}")
when (status) {
0 -> {
setLoginStatus(LoginStatusEnum.Logout)
}
1 -> {
setLoginStatus(LoginStatusEnum.Login)
}
else -> {
setLoginStatus(LoginStatusEnum.None)
}
}
}
override fun queryLoginStatusByNet() {
CallerLogger.d(tag, "queryLoginStatusByNet")
LoginStatusDefaultModel.queryCarStatus()
}
override fun loginOut(mLatitude: Double, mLongitude: Double) {
CallerLogger.d(tag, "loginOut mLatitude:${mLatitude}--mLongitude:${mLongitude}")
LoginStatusDefaultModel.logout(mLatitude, mLongitude)
}
override fun checkBusiness(businessType: Int): Boolean {
val businessInfo = FlavorUtils.getBusinessInfo(businessType)
if(businessInfo.isEmpty()){
return true
}
if (loginFragment is ILoginViewCallback) {
UiThreadHandler.post({
(loginFragment as ILoginViewCallback).showErrorInfo(businessInfo)
},UiThreadHandler.MODE.QUEUE)
}
return false
}
override fun checkAllEnv(
projectType: ProjectType,
envType: EnvType,
vehicleType: VehicleType,
businessType: BusinessType
): Boolean {
val checkAllEnv = FlavorUtils.checkAllEnv(projectType, envType, vehicleType, businessType)
if(checkAllEnv.isEmpty()){
}else{
if (loginFragment is ILoginViewCallback) {
changeStatus(checkAllEnv)
UiThreadHandler.post({
changeStatus(checkAllEnv)
(loginFragment as ILoginViewCallback).checkAllEnv(checkAllEnv)
},UiThreadHandler.MODE.QUEUE)
}
}
return checkAllEnv.isEmpty()
}
override fun changeStatus(currentStatus: String) {
(loginFragment as ILoginViewCallback).updateStatus(currentStatus)
}
override fun setLoginInfo(loginInfo: LoginInfo) {
CallerLogger.d(tag, "setLoginInfo:${loginInfo}")
this.loginInfo = loginInfo
}
override fun getLoginInfo(): LoginInfo? {
CallerLogger.d(tag, "getLoginInfo")
return loginInfo
}
override fun getPurpose(): RoleEnum {
CallerLogger.d(tag, "getPurpose")
return RoleEnum.valueOf(loginInfo?.purpose)
}
override fun isLogin(): Boolean {
CallerLogger.d(tag, "isLogin:${loginStatus == LoginStatusEnum.Login}")
return loginStatus == LoginStatusEnum.Login
}
override fun getLoginStatus(): LoginStatusEnum {
CallerLogger.d(tag, "getLoginStatus:${loginStatus}")
return loginStatus
}
override fun setLoginStatus(loginStatus: LoginStatusEnum) {
CallerLogger.d(tag, "setLoginStatus:${loginStatus}----old${this.loginStatus}")
if (loginStatus != this.loginStatus) {
this.loginStatus = loginStatus
LoginStatusManager.invokeLoginStatusChange(loginStatus)
}
}
override fun setBusinessType(type: Int) {
CallerLogger.d(tag, "setBusinessType:${type}")
if (businessEnum.code != type) {
this.businessEnum = BusinessEnum.valueOf(type)
LoginStatusManager.invokeLBusinessTypeChange(this.businessEnum)
}
}
override fun getBusinessType(): BusinessEnum {
CallerLogger.d(tag, "getBusinessType")
return businessEnum
}
override fun setOpenOrderStatusType(type: Int) {
CallerLogger.d(tag, "setOpenOrderStatusType:${type}")
if (openOrderStatusEnum.code != type) {
this.openOrderStatusEnum = OpenOrderStatusEnum.valueOf(type)
LoginStatusManager.invokeLOpenOrderStatusChange(this.openOrderStatusEnum)
}
}
override fun getOpenOrderStatusType(): OpenOrderStatusEnum {
CallerLogger.d(tag, "getOpenOrderStatusType")
return openOrderStatusEnum
}
override fun isOpenOrderType(): Boolean {
CallerLogger.d(tag, "isOpenOrderType:${openOrderStatusEnum == OpenOrderStatusEnum.Ordering}")
return openOrderStatusEnum == OpenOrderStatusEnum.Ordering
}
}

View File

@@ -0,0 +1,20 @@
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;
@Override
public String toString() {
return "DriverStatusQueryRespBean{" +
"data=" + data +
'}';
}
}

View File

@@ -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 * Created by yangyakun on 2021/8/19

View File

@@ -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; import com.mogo.eagle.core.data.BaseData;

View File

@@ -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 * Created by yyk on 2021/8/19

View File

@@ -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 * Created by yyk on 2021/8/19

View File

@@ -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 { public interface ILoginCallback {
void loginSuccess(DriverStatusQueryRespBean data); void loginSuccess(DriverStatusQueryRespBean data);

View File

@@ -0,0 +1,17 @@
package com.mogo.och.biz.login.callback
import com.mogo.och.common.module.manager.socket.lan.bean.BusinessType
import com.mogo.och.common.module.manager.socket.lan.bean.EnvType
import com.mogo.och.common.module.manager.socket.lan.bean.ProjectType
import com.mogo.och.common.module.manager.socket.lan.bean.VehicleType
interface ILoginViewCallback {
fun showErrorInfo(errorInfo: String)
fun checkAllEnv(
reason:String
){}
fun updateStatus(status:String){}
}

View File

@@ -1,4 +1,4 @@
package com.mogo.och.common.module.biz.callback; package com.mogo.och.biz.login.callback;
/** /**
* Created on 2021/9/8 * Created on 2021/9/8
@@ -7,5 +7,4 @@ package com.mogo.och.common.module.biz.callback;
*/ */
public interface ITaxiLoginCallback { public interface ITaxiLoginCallback {
void getPhoneCodeSuccess(); void getPhoneCodeSuccess();
void loginSuccess();
} }

View File

@@ -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.annotation.SuppressLint
import android.content.Context import android.content.Context
@@ -6,14 +6,12 @@ import com.mogo.eagle.core.data.BaseData
import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager
import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.commons.storage.SharedPrefsMgr
import com.mogo.eagle.core.utilcode.util.NetworkUtils import com.mogo.eagle.core.utilcode.util.NetworkUtils
import com.mogo.och.common.module.R import com.mogo.och.biz.R
import com.mogo.och.common.module.biz.bean.TaxiLoginReqBean import com.mogo.och.biz.login.bean.TaxiLoginReqBean
import com.mogo.och.common.module.biz.bean.TaxiLoginRespBean import com.mogo.och.biz.login.bean.TaxiLoginRespBean
import com.mogo.och.common.module.biz.callback.ITaxiLoginCallback import com.mogo.och.biz.login.callback.ITaxiLoginCallback
import com.mogo.och.common.module.biz.constant.LoginStatusManager import com.mogo.och.biz.login.net.OchCommonServiceManager
import com.mogo.och.common.module.biz.constant.TaxiLoginStatusEnum import com.mogo.och.common.module.network.OchCommonServiceCallback
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.utils.ToastUtilsOch
import com.mogo.och.common.module.wigets.toast.ToastCharterUtils import com.mogo.och.common.module.wigets.toast.ToastCharterUtils
@@ -24,7 +22,7 @@ import com.mogo.och.common.module.wigets.toast.ToastCharterUtils
* 网约车 - 出租车业务逻辑处理 * 网约车 - 出租车业务逻辑处理
*/ */
@SuppressLint("StaticFieldLeak") @SuppressLint("StaticFieldLeak")
object OchCommonLoginModel { object LoginModel {
private val TAG = "TaxiLoginModel" private val TAG = "TaxiLoginModel"
private var mContext: Context? = null private var mContext: Context? = null
@@ -45,7 +43,7 @@ object OchCommonLoginModel {
} }
fun setiTaxiLoginCallback(iTaxiLoginCallback: ITaxiLoginCallback?) { fun setiTaxiLoginCallback(iTaxiLoginCallback: ITaxiLoginCallback?) {
this.iTaxiLoginCallback = iTaxiLoginCallback LoginModel.iTaxiLoginCallback = iTaxiLoginCallback
} }
fun release() { fun release() {
@@ -98,11 +96,10 @@ object OchCommonLoginModel {
if (null != data && 0 == data.code) { if (null != data && 0 == data.code) {
// 获取验证码成功 // 获取验证码成功
ToastCharterUtils.showToastShort(mContext?.getString(R.string.module_och_taxi_login_login_success)) ToastCharterUtils.showToastShort(mContext?.getString(R.string.module_och_taxi_login_login_success))
LoginStatusManager.setLoginStatus(TaxiLoginStatusEnum.Login) LoginStatusDefaultModel.queryCarStatus()
mContext?.let { c -> mContext?.let { c ->
SharedPrefsMgr.getInstance().putString("och_account", phone) SharedPrefsMgr.getInstance().putString("och_account", phone)
} }
iTaxiLoginCallback?.loginSuccess()
} else { } else {
if (data != null) { if (data != null) {
ToastCharterUtils.showToastShort(data.code.toString()) ToastCharterUtils.showToastShort(data.code.toString())

View File

@@ -1,39 +1,36 @@
package com.mogo.och.common.module.biz.model package com.mogo.och.biz.login.model
import android.annotation.SuppressLint import android.annotation.SuppressLint
import com.mogo.commons.AbsMogoApplication
import com.mogo.commons.storage.SharedPrefsMgr
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger 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.mogo.logger.scene.SceneConstant
import com.mogo.commons.storage.SharedPrefsMgr
import com.mogo.eagle.core.utilcode.util.GsonUtils import com.mogo.eagle.core.utilcode.util.GsonUtils
import com.mogo.och.common.module.bean.dpmsg.BusCacheKey import com.mogo.och.biz.login.bean.DriverStatusQueryRespBean
import com.mogo.och.common.module.bean.dpmsg.LoginCacheStatus import com.mogo.och.common.module.biz.login.LoginStatusManager
import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean import com.mogo.och.common.module.manager.socket.lan.bean.BusCacheKey
import com.mogo.och.common.module.biz.callback.ILoginCallback import com.mogo.och.common.module.manager.socket.lan.bean.LoginCacheStatus
import com.mogo.och.common.module.biz.callback.ILoginViewCallback
import com.mogo.och.common.module.biz.constant.LoginStatusManager
import com.mogo.och.common.module.utils.DateTimeUtil import com.mogo.och.common.module.utils.DateTimeUtil
import com.mogo.och.data.manager.cache.CacheDataManager import com.mogo.och.data.manager.cache.CacheDataManager
@SuppressLint("StaticFieldLeak") @SuppressLint("StaticFieldLeak")
object OchCommonLoginStatusDefaultModel : OchCommonLoginStatusModel() { object LoginStatusDefaultModel : LoginStatusModel() {
const val TAG = "OchCommonLoginStatusDefaultModel" const val TAG = "OchCommonLoginStatusDefaultModel"
var loginCallback: ILoginCallback? = null init {
var loginViewCallback: ILoginViewCallback? = null mContext = AbsMogoApplication.getApp();
}
override fun loginSuccess(data: DriverStatusQueryRespBean?) { override fun loginSuccess(data: DriverStatusQueryRespBean?) {
CallerLogger.d(SceneConstant.M_TAXI + TAG, "loginSuccess:${LoginStatusManager.isLogin()}") CallerLogger.d(SceneConstant.M_TAXI + TAG, "loginSuccess:${LoginStatusManager.isLogin()}")
if (LoginStatusManager.isLogin()) { if (LoginStatusManager.isLogin()) {
SharedPrefsMgr.getInstance().putString("och_account", data?.data?.phone) SharedPrefsMgr.getInstance().putString("och_account", data?.data?.phone)
loginViewCallback?.hideLoginDialogFragment()
} else { } else {
SharedPrefsMgr.getInstance().putString("och_account", "") SharedPrefsMgr.getInstance().putString("och_account", "")
loginViewCallback?.showLoginDialogFragment()
} }
loginCallback?.loginSuccess(data)
data?.data?.driverStatus?.let { updateLoginLocalStatus(it) } data?.data?.driverStatus?.let { updateLoginLocalStatus(it) }
@@ -45,15 +42,9 @@ object OchCommonLoginStatusDefaultModel : OchCommonLoginStatusModel() {
GsonUtils.toJson(loginCacheStatus)) GsonUtils.toJson(loginCacheStatus))
} }
override fun loginFail(isLogin: Boolean) { override fun loginFail(isLogin: Boolean) {
CallerLogger.d(SceneConstant.M_TAXI + TAG, "loginFail:$isLogin") CallerLogger.d(SceneConstant.M_TAXI + TAG, "loginFail:$isLogin")
if (isLogin) {
loginViewCallback?.hideLoginDialogFragment()
} else {
loginViewCallback?.showLoginDialogFragment()
}
loginCallback?.loginFail(isLogin)
updateLoginLocalStatus(0) updateLoginLocalStatus(0)
} }

View File

@@ -1,21 +1,21 @@
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; import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI;
import android.content.Context; import android.content.Context;
import com.mogo.commons.AbsMogoApplication;
import com.mogo.eagle.core.data.BaseData; import com.mogo.eagle.core.data.BaseData;
import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager;
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger;
import com.mogo.eagle.core.utilcode.util.NetworkUtils; import com.mogo.eagle.core.utilcode.util.NetworkUtils;
import com.mogo.eagle.core.utilcode.util.ToastUtils; import com.mogo.och.biz.R;
import com.mogo.och.common.module.R; import com.mogo.och.biz.login.bean.DriverStatusQueryRespBean;
import com.mogo.och.common.module.biz.bean.DriverStatusQueryRespBean; import com.mogo.och.biz.login.bean.TaxiLogoutReqBean;
import com.mogo.och.common.module.biz.bean.TaxiLogoutReqBean; import com.mogo.och.biz.login.net.OchCommonServiceManager;
import com.mogo.och.common.module.biz.constant.LoginStatusManager; import com.mogo.och.common.module.biz.login.LoginStatusEnum;
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.constant.OchCommonConst;
import com.mogo.och.common.module.biz.network.OchCommonServiceManager; import com.mogo.och.common.module.network.OchCommonServiceCallback;
import com.mogo.och.common.module.utils.ToastUtilsOch; import com.mogo.och.common.module.utils.ToastUtilsOch;
import com.mogo.och.common.module.wigets.toast.ToastCharterUtils; import com.mogo.och.common.module.wigets.toast.ToastCharterUtils;
@@ -24,7 +24,7 @@ import java.util.concurrent.TimeUnit;
import io.reactivex.Observable; import io.reactivex.Observable;
import io.reactivex.disposables.Disposable; import io.reactivex.disposables.Disposable;
public abstract class OchCommonLoginStatusModel { public abstract class LoginStatusModel {
private static final String TAG = "OchCommonLoginStatusModel"; private static final String TAG = "OchCommonLoginStatusModel";
@@ -33,11 +33,6 @@ public abstract class OchCommonLoginStatusModel {
private Disposable subscribe; private Disposable subscribe;
public void init() {
mContext = AbsMogoApplication.getApp();
queryCarStatus();
}
protected abstract void loginSuccess(DriverStatusQueryRespBean data); protected abstract void loginSuccess(DriverStatusQueryRespBean data);
protected abstract void loginFail(boolean isLogin); protected abstract void loginFail(boolean isLogin);
@@ -59,8 +54,22 @@ public abstract class OchCommonLoginStatusModel {
@Override @Override
public void onSuccess(DriverStatusQueryRespBean data) { public void onSuccess(DriverStatusQueryRespBean data) {
if (null != data && 0 == data.code) { if (null != data && 0 == data.code) {
// 不用登录也可以获得支持的业务模式
LoginStatusManager.setBusinessType(data.data.businessType);
// 后台已登录
if (LoginStatusEnum.valueOf(data.data.driverStatus)==LoginStatusEnum.Login) {
// 业务不支持 去退出登录
if (!LoginStatusManager.checkBusiness(data.data.businessType)) {
double mLatitude = CallerChassisLocationGCJ02ListenerManager.INSTANCE.getChassisLocationGCJ02().getLatitude();
double mLongitude =CallerChassisLocationGCJ02ListenerManager.INSTANCE.getChassisLocationGCJ02().getLongitude();
LoginStatusManager.loginOut(mLatitude,mLongitude);
return;
}
}
LoginStatusManager.setOpenOrderType(data.data.servingStatus);
LoginStatusManager.setLoginStatus(data.data.driverStatus); LoginStatusManager.setLoginStatus(data.data.driverStatus);
CallerLogger.d(M_TAXI + TAG, "changeCarStatus:" + LoginStatusManager.getLoginStatus()); LoginStatusManager.setLoginInfo(data.data);
CallerLogger.d(M_TAXI + TAG, "登录信息:" + data);
loginSuccess(data); loginSuccess(data);
} }
} }

View File

@@ -1,38 +1,54 @@
package com.mogo.och.bus.net.login package com.mogo.och.biz.login.net
import android.content.Context import android.content.Context
import com.mogo.cloud.passport.MoGoAiCloudClientConfig 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.commons.storage.SharedPrefsMgr
import com.mogo.och.common.module.biz.network.OchCommonServiceCallback import com.mogo.och.biz.login.bean.DriverStatusQueryRespBean
import com.mogo.och.common.module.biz.network.OchCommonSubscribeImpl import com.mogo.och.biz.login.bean.TaxiLoginReqBean
import com.mogo.och.common.module.biz.network.interceptor.transformTry 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.eagle.core.utilcode.mogo.logger.CallerLogger
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.constant.OchCommonConst
import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.common.module.network.OchCommonSubscribeImpl
import com.mogo.och.common.module.network.interceptor.transformTry
import com.mogo.och.common.module.utils.ProjectUtils
/**
* Created by pangfan on 2021/8/19
*/
object OchCommonServiceManager { object OchCommonServiceManager {
private const val TAG = "OchCommonServiceManager" private const val TAG = "OchCommonServiceManager"
private val mLoginServiceApi: OchLoginServiceApi = private val ochLoginServiceSaasEh: OchLoginServiceSaasEhApi by lazy {
MoGoRetrofitFactory.getInstance(OchCommonConst.getBaseUrl()).create( MoGoRetrofitFactory.getInstance(OchCommonConst.getBaseUrl()).create(
OchLoginServiceApi::class.java OchLoginServiceSaasEhApi::class.java
) )
}
private val mLoginSaasServiceApi: OchSAASLoginServiceApi = private val ochLoginServiceMogo: OchLoginServiceMogoApi by lazy {
MoGoRetrofitFactory.getInstance(OchCommonConst.getBaseUrl()).create( MoGoRetrofitFactory.getInstance(OchCommonConst.getBaseUrl()).create(
OchSAASLoginServiceApi::class.java OchLoginServiceMogoApi::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
}
/** /**
* 获取手机验证码 * 获取手机验证码
@@ -44,21 +60,22 @@ object OchCommonServiceManager {
context: Context, phone: String?, context: Context, phone: String?,
callback: OchCommonServiceCallback<BaseData>? callback: OchCommonServiceCallback<BaseData>?
) { ) {
if (DebugConfig.getProjectFlavor().contains("saas")){ if (ProjectUtils.isMogo()) {
mLoginSaasServiceApi.getPhoneCode( ochLoginServiceMogo.getPhoneCode(
MoGoAiCloudClientConfig.getInstance().serviceAppId, MoGoAiCloudClientConfig.getInstance().serviceAppId,
SharedPrefsMgr.getInstance().token, SharedPrefsMgr.getInstance().token,
TaxiLoginSmsReqBean(phone) TaxiLoginSmsReqBean(phone)
).transformTry() ).transformTry()
.subscribe(OchCommonSubscribeImpl(context, callback, "getPhoneCode")) .subscribe(OchCommonSubscribeImpl(context, callback, "sendSms"))
}else{ }else{
mLoginServiceApi.getPhoneCode( ochLoginServiceSaasEh.getPhoneCode(
MoGoAiCloudClientConfig.getInstance().serviceAppId, MoGoAiCloudClientConfig.getInstance().serviceAppId,
SharedPrefsMgr.getInstance().token, SharedPrefsMgr.getInstance().token,
TaxiLoginSmsReqBean(phone) TaxiLoginSmsReqBean(phone)
).transformTry() ).transformTry()
.subscribe(OchCommonSubscribeImpl(context, callback, "getPhoneCode")) .subscribe(OchCommonSubscribeImpl(context, callback, "sendSms"))
} }
} }
/** /**
@@ -69,23 +86,23 @@ object OchCommonServiceManager {
@JvmStatic @JvmStatic
fun gotoLoginBycode( fun gotoLoginBycode(
context: Context, phone: String?, code: String?, context: Context, phone: String?, code: String?,
location4Login: TaxiLoginReqBean.Location4Login?, location4Login: TaxiLoginReqBean.Location4Login,
callback: OchCommonServiceCallback<TaxiLoginRespBean>? callback: OchCommonServiceCallback<TaxiLoginRespBean>?
) { ) {
CallerLogger.d(TAG, "gotoLoginBycode:通过手机验证码登录:${phone}---${code}");
val sn = SharedPrefsMgr.getInstance().sn val sn = SharedPrefsMgr.getInstance().sn
if (ProjectUtils.isMogo()) {
if (DebugConfig.getProjectFlavor().contains("saas")){ ochLoginServiceMogo.gotoLoginBycode(
mLoginSaasServiceApi.gotoLoginBycode4Bus(
MoGoAiCloudClientConfig.getInstance().serviceAppId, MoGoAiCloudClientConfig.getInstance().serviceAppId,
SharedPrefsMgr.getInstance().token, SharedPrefsMgr.getInstance().token,
TaxiLoginReqBean(phone, code, sn, location4Login) TaxiLoginReqBean(phone, code, sn, location4Login)
).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "gotoLoginBycode")) ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "login"))
}else{ }else{
mLoginServiceApi.gotoLoginBycode4Bus( ochLoginServiceSaasEh.gotoLoginBycode(
MoGoAiCloudClientConfig.getInstance().serviceAppId, MoGoAiCloudClientConfig.getInstance().serviceAppId,
SharedPrefsMgr.getInstance().token, SharedPrefsMgr.getInstance().token,
TaxiLoginReqBean(phone, code, sn, location4Login) TaxiLoginReqBean(phone, code, sn, location4Login)
).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "gotoLoginBycode")) ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "login"))
} }
} }
@@ -98,17 +115,24 @@ object OchCommonServiceManager {
location4Login: TaxiLogoutReqBean.Location4Login?, location4Login: TaxiLogoutReqBean.Location4Login?,
callback: OchCommonServiceCallback<BaseData>? callback: OchCommonServiceCallback<BaseData>?
) { ) {
if (DebugConfig.getProjectFlavor().contains("saas")){ CallerLogger.d(TAG, "logout:登出");
mLoginSaasServiceApi.logout4Bus( if (ProjectUtils.isMogo()) {
ochLoginServiceMogo.logout(
MoGoAiCloudClientConfig.getInstance().serviceAppId, MoGoAiCloudClientConfig.getInstance().serviceAppId,
SharedPrefsMgr.getInstance().token, SharedPrefsMgr.getInstance().token,
TaxiLogoutReqBean(SharedPrefsMgr.getInstance().sn, location4Login) TaxiLogoutReqBean(
SharedPrefsMgr.getInstance().sn,
location4Login
)
).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "logout")) ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "logout"))
}else{ }else {
mLoginServiceApi.logout4Bus( ochLoginServiceSaasEh.logout(
MoGoAiCloudClientConfig.getInstance().serviceAppId, MoGoAiCloudClientConfig.getInstance().serviceAppId,
SharedPrefsMgr.getInstance().token, SharedPrefsMgr.getInstance().token,
TaxiLogoutReqBean(SharedPrefsMgr.getInstance().sn, location4Login) TaxiLogoutReqBean(
SharedPrefsMgr.getInstance().sn,
location4Login
)
).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "logout")) ).transformTry().subscribe(OchCommonSubscribeImpl(context, callback, "logout"))
} }
} }
@@ -124,27 +148,28 @@ object OchCommonServiceManager {
context: Context, context: Context,
callback: OchCommonServiceCallback<DriverStatusQueryRespBean>? callback: OchCommonServiceCallback<DriverStatusQueryRespBean>?
) { ) {
if (SharedPrefsMgr.getInstance().token.isEmpty()) { CallerLogger.d(TAG, "queryDriverServiceStatus:查询登录状态");
callback?.onFail(OchCommonConst.WAIT_TAKEN, "等待令牌中请稍等") val sn =
MoGoAiCloudClient.getInstance().refreshToken() if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) {
return SharedPrefsMgr.getInstance().sn
} else{
draiverSn
} }
if (DebugConfig.getProjectFlavor().contains("saas")){ if (ProjectUtils.isMogo()) {
mLoginSaasServiceApi.queryDriverServiceStatusAndLoginStatus( ochLoginServiceMogo.queryDriverServiceStatusAndLoginStatus(
MoGoAiCloudClientConfig.getInstance().serviceAppId, MoGoAiCloudClientConfig.getInstance().serviceAppId,
SharedPrefsMgr.getInstance().token, SharedPrefsMgr.getInstance().token,
SharedPrefsMgr.getInstance().sn sn
).transformTry() ).transformTry()
.subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverServiceStatus")) .subscribe(OchCommonSubscribeImpl(context, callback, "loginStatus"))
}else{ }else{
mLoginServiceApi.queryDriverServiceStatusAndLoginStatus( ochLoginServiceSaasEh.queryDriverServiceStatusAndLoginStatus(
MoGoAiCloudClientConfig.getInstance().serviceAppId, MoGoAiCloudClientConfig.getInstance().serviceAppId,
SharedPrefsMgr.getInstance().token, SharedPrefsMgr.getInstance().token,
SharedPrefsMgr.getInstance().sn sn
).transformTry() ).transformTry()
.subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverServiceStatus")) .subscribe(OchCommonSubscribeImpl(context, callback, "loginStatus"))
} }
} }
} }

Some files were not shown because too many files have changed in this diff Show More