This commit is contained in:
zhongchao
2022-03-22 10:07:10 +08:00
parent 3a14b5e37d
commit a39f310331
42 changed files with 1317 additions and 201 deletions

View File

@@ -5,10 +5,10 @@ import com.mogo.commons.context.ContextHolderUtil;
import com.mogo.eagle.core.data.BaseData;
import com.mogo.eagle.core.function.autopilot.entity.AutonomousDriveStatusBean;
import com.mogo.eagle.core.function.autopilot.entity.ReportSiteBean;
import com.mogo.eagle.core.network.MoGoRetrofitFactory;
import com.mogo.eagle.core.network.RequestOptions;
import com.mogo.eagle.core.network.SubscribeImpl;
import com.mogo.eagle.core.network.utils.GsonUtil;
import com.mogo.module.common.MogoApisHandler;
import com.mogo.module.common.constants.HostConst;
import io.reactivex.android.schedulers.AndroidSchedulers;
@@ -30,7 +30,7 @@ public class AdasServiceModel {
private final IAdasApiService mAdasApiService;
private AdasServiceModel() {
this.mAdasApiService = MogoApisHandler.getInstance().getApis().getNetworkApi().create(IAdasApiService.class, HostConst.DATA_SERVICE_HOST);
this.mAdasApiService = MoGoRetrofitFactory.getInstance(HostConst.DATA_SERVICE_HOST).create(IAdasApiService.class);
}
public static AdasServiceModel getInstance() {

View File

@@ -60,7 +60,7 @@ class VehicleMonitoringManager : ICheckProvider, IMogoStatusChangedListener {
}
override fun checkMonitor(context: Context) {
checkNetWork(context, object : ICheckResultCallBack {
checkNetWork( context, object : ICheckResultCallBack {
override fun callBackWithCheckData(data: CheckResultData) {
updateMonitoringStatus(MogoReceiver.ACTION_CHECK_VEHICLE_MONITORING, data.data.vehicle.state)
if (data.data.vehicle.state == 1) {

View File

@@ -1,11 +1,7 @@
package com.mogo.eagle.core.function.check.net;
import android.content.Context;
import com.alibaba.android.arouter.launcher.ARouter;
import com.mogo.eagle.core.data.constants.MogoServicePaths;
import com.mogo.eagle.core.network.MoGoRetrofitFactory;
import com.mogo.module.common.constants.HostConst;
import com.mogo.service.network.IMogoNetwork;
/**
* @author liujing
@@ -18,18 +14,15 @@ public class CheckApiServiceFactory {
/**
* 获取指定域名下的 API 服务
*/
public static CheckApiServices getApiService(Context context, String netHost) {
IMogoNetwork network = (IMogoNetwork) ARouter.getInstance()
.build(MogoServicePaths.PATH_SERVICES_NETWORK)
.navigation(context);
return network.create(CheckApiServices.class, netHost);
public static CheckApiServices getApiService(String netHost) {
return MoGoRetrofitFactory.getInstance(netHost).create(CheckApiServices.class);
}
public static CheckApiServices getDataApiService(Context context) {
public static CheckApiServices getDataApiService() {
if (mDataApiService == null) {
synchronized (CheckApiServiceFactory.class) {
if (mDataApiService == null) {
mDataApiService = getApiService(context, HostConst.DATA_SERVICE_HOST);
mDataApiService = getApiService(HostConst.DATA_SERVICE_HOST);
}
}
}

View File

@@ -21,23 +21,23 @@ object CheckNetWork {
//网络请求,获取自车检测结果(工控机上报云端)
fun checkNetWork(context: Context, callbackFlow: ICheckResultCallBack) {
val params = ParamsBuilder.of(false)
.append("sn", MoGoAiCloudClientConfig.getInstance().sn)
.build()
.append("sn", MoGoAiCloudClientConfig.getInstance().sn)
.build()
CheckApiServiceFactory.getDataApiService(context).loadMonitorDetail(params)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(object : SubscribeImpl<CheckResultData>(RequestOptions.create(context)) {
override fun onSuccess(o: CheckResultData) {
super.onSuccess(o)
ThreadUtils.runOnUiThread { callbackFlow?.callBackWithCheckData(o) }
}
CheckApiServiceFactory.getDataApiService().loadMonitorDetail(params)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(object : SubscribeImpl<CheckResultData>(RequestOptions.create(context)) {
override fun onSuccess(o: CheckResultData) {
super.onSuccess(o)
ThreadUtils.runOnUiThread { callbackFlow?.callBackWithCheckData(o) }
}
override fun onError(message: String, code: Int) {
super.onError(message, code)
ThreadUtils.runOnUiThread { callbackFlow?.callBackWithError(message,code) }
}
})
override fun onError(message: String, code: Int) {
super.onError(message, code)
ThreadUtils.runOnUiThread { callbackFlow?.callBackWithError(message, code) }
}
})
}
}

View File

@@ -14,6 +14,7 @@ import com.zhjt.mogo_core_function_devatools.feedback.FeedbackManager
import com.zhjt.mogo_core_function_devatools.logcatch.MogoLogCatchManager
import com.zhjt.mogo_core_function_devatools.scene.SceneManager.Companion.sceneManager
import com.zhjt.mogo_core_function_devatools.trace.TraceManager.Companion.traceManager
import com.zhjt.mogo_core_function_devatools.upgrade.UpgradeManager.Companion.upgradeManager
import record_cache.RecordPanelOuterClass
@Route(path = MogoServicePaths.PATH_DEVA_TOOLS)
@@ -23,10 +24,13 @@ class DevaToolsProvider : IDevaToolsProvider {
const val MODULE_NAME = "DevaTools"
}
private var mContext: Context? = null
override val functionName: String
get() = "DevaToolsProvider"
override fun init(context: Context) {
mContext = context
traceManager.init(context)
MogoLogCatchManager.init(context)
}
@@ -80,6 +84,14 @@ class DevaToolsProvider : IDevaToolsProvider {
FeedbackManager.showFeedbackWindow(ctx)
}
override fun getUpgradeVersionUrls(versionName: String) {
upgradeManager.getPackageUrls(versionName)
}
override fun downLoadPackage(downLoadKey: String) {
// upgradeManager.downLoadPackage(mContext!!, downLoadKey)
}
override fun onDestroy() {
MogoLogCatchManager.onDestroy()
}

View File

@@ -0,0 +1,49 @@
package com.zhjt.mogo_core_function_devatools.upgrade
import android.content.Context
import com.mogo.commons.context.ContextHolderUtil
import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsListenerManager
import com.mogo.eagle.core.utilcode.breakpoint.Config
import com.mogo.eagle.core.utilcode.breakpoint.utils.DownloadUtils
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_DEVA
import com.zhjt.mogo_core_function_devatools.upgrade.network.UpgradeVersionNetWorkModel
class UpgradeManager {
companion object {
const val TAG = "UpgradeManager"
val upgradeManager by lazy(LazyThreadSafetyMode.SYNCHRONIZED) {
UpgradeManager()
}
}
private val upgradeVersionNetWorkModel = UpgradeVersionNetWorkModel()
private var map: Map<String, String>? = null
private var version: String? = null
fun getPackageUrls(version: String) {
this.version = version
upgradeVersionNetWorkModel.requestUpgradeVersionUrls(version, onSuccess = {
map = it
CallerDevaToolsListenerManager.invokeDevaToolsUpgradeVersionUrls(map)
}, onError = {
CallerLogger.e("$M_DEVA$TAG", " getPackageUrls error: $it")
})
}
fun downLoadPackage(context: Context, downLoadKey: String) {
// val downLoadUrl = map?.get(downLoadKey)
// downLoadUrl?.let {
DownloadUtils.downLoad(
context,
"https://scm-1255510688.cos.ap-beijing.myqcloud.com/test/com.mogo.launcher.f/2.5.1.1009/IntelligentPilot_v2.5.1.1009_20220216_[fPadLenovoOchTaxi-launcher-online]_debug.apk",
Config.downLoadPath,
downLoadKey,
5
)
// }
}
}

View File

@@ -0,0 +1,22 @@
package com.zhjt.mogo_core_function_devatools.upgrade.network
import com.mogo.commons.debug.DebugConfig
class HostConst {
companion object {
private const val HOST_DEV = "http://myflow.ee-private-dev.myghost.zhidaoauto.com"
private const val HOST_RELEASE = "https://myflow.zhidaoauto.com"
fun getBaseUrl(): String {
return when (DebugConfig.getNetMode()) {
DebugConfig.NET_MODE_DEV -> HOST_DEV
DebugConfig.NET_MODE_QA -> HOST_DEV
DebugConfig.NET_MODE_DEMO -> HOST_RELEASE
DebugConfig.NET_MODE_RELEASE -> HOST_RELEASE
else -> HOST_RELEASE
}
}
}
}

View File

@@ -0,0 +1,12 @@
package com.zhjt.mogo_core_function_devatools.upgrade.network
import com.mogo.eagle.core.data.Response
import retrofit2.http.GET
import retrofit2.http.Query
interface UpgradeVersionApiService {
@GET("/backend/app/getApkInfo")
suspend fun getUpgradeVersion(@Query("fileName") versionName: String): Response<Any>
}

View File

@@ -0,0 +1,49 @@
package com.zhjt.mogo_core_function_devatools.upgrade.network
import com.mogo.eagle.core.data.Response
import com.mogo.eagle.core.network.MoGoRetrofitFactory
import com.mogo.eagle.core.network.apiResponseCall
import com.mogo.eagle.core.network.request
import com.mogo.module.common.constants.HostConst
import com.zhjt.mogo_core_function_devatools.upgrade.network.HostConst.Companion.getBaseUrl
class UpgradeVersionNetWorkModel {
private fun getNetWorkApi(baseUrl: String = HostConst.CITY_HOST): UpgradeVersionApiService {
return MoGoRetrofitFactory.getInstanceNoCallAdapter(baseUrl)
.create(UpgradeVersionApiService::class.java)
}
fun requestUpgradeVersionUrls(
versionName: String,
onSuccess: ((Map<String, String>) -> Unit),
onError: ((String) -> Unit)
) {
request<Response<Any?>> {
loader {
apiResponseCall {
getNetWorkApi(getBaseUrl()).getUpgradeVersion(
versionName
)
}
}
onSuccess {
if (it.data != null) {
val jsonData = it.data.toString()
val map = mutableMapOf<String, String>()
jsonData.split(",").forEach { data ->
val array = data.split("=")
map[array[0]] = array[1]
}
onSuccess.invoke(map)
} else {
onError.invoke("没有获取到最新版本信息")
}
}
onError {
onError.invoke(it.message ?: "获取最新版本信息失败")
}
}
}
}

View File

@@ -9,6 +9,7 @@ import com.mogo.eagle.core.data.autopilot.AutopilotRouteInfo;
import com.mogo.eagle.core.data.autopilot.AutopilotStatus;
import com.mogo.eagle.core.data.dispatch.ReportDispatchResult;
import com.mogo.eagle.core.data.dispatch.ReportedRoute;
import com.mogo.eagle.core.network.MoGoRetrofitFactory;
import com.mogo.eagle.core.network.RequestOptions;
import com.mogo.eagle.core.network.SubscribeImpl;
import com.mogo.eagle.core.network.utils.GsonUtil;
@@ -34,7 +35,7 @@ public class DispatchServiceModel {
private final IDispatchAdasApiService mAdasApiService;
private DispatchServiceModel() {
mAdasApiService = MogoApisHandler.getInstance().getApis().getNetworkApi().create(IDispatchAdasApiService.class, DATA_SERVICE_HOST);
mAdasApiService = MoGoRetrofitFactory.getInstance(DATA_SERVICE_HOST).create(IDispatchAdasApiService.class);
}
public static DispatchServiceModel getInstance() {

View File

@@ -3,10 +3,12 @@ package com.mogo.eagle.core.function.hmi.ui.setting
import android.annotation.SuppressLint
import android.content.Context
import android.graphics.Color
import android.os.Build
import android.text.Html
import android.util.AttributeSet
import android.view.LayoutInflater
import android.view.View
import androidx.annotation.RequiresApi
import androidx.constraintlayout.widget.ConstraintLayout
import androidx.core.content.ContextCompat
import com.mogo.cloud.passport.MoGoAiCloudClient
@@ -145,6 +147,8 @@ class DebugSettingView @JvmOverloads constructor(
CallerAutopilotIdentifyListenerManager.addListener(TAG, this)
// 添加 规划路径相关回调 监听
CallerAutopilotPlanningListenerManager.addListener(TAG, this)
// 添加 工控机基础信息回调 监听
CallerAutopilotCarConfigListenerManager.addListener(TAG, this)
if (logInfoView != null) {
logInfoView!!.onEnterForeground()
}
@@ -890,6 +894,10 @@ class DebugSettingView @JvmOverloads constructor(
override fun moduleLogChanged(moduleTag: MutableMap<String, SceneModule>) {
//todo 模块日志 tag 发生变化,需要更新对应 UI
}
override fun upgradeVersionUrls(urls: Map<String, String>?) {
//todo 版本信息更新
}
})
/**
@@ -1145,6 +1153,7 @@ class DebugSettingView @JvmOverloads constructor(
mGnssInfo = gnssInfo
}
@RequiresApi(Build.VERSION_CODES.N)
override fun onAutopilotIdentifyDataUpdate(trafficData: List<MessagePad.TrackedObject>?) {
// 重制数据
mIdentifyDataSize = 0

View File

@@ -10,12 +10,12 @@ import com.mogo.commons.AbsMogoApplication;
import com.mogo.eagle.core.data.BaseData;
import com.mogo.eagle.core.data.map.MogoLocation;
import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager;
import com.mogo.eagle.core.network.MoGoRetrofitFactory;
import com.mogo.eagle.core.network.RequestOptions;
import com.mogo.eagle.core.network.SubscribeImpl;
import com.mogo.eagle.core.network.utils.GsonUtil;
import com.mogo.eagle.core.utilcode.util.NetworkUtils;
import com.mogo.map.location.IMogoLocationClient;
import com.mogo.module.common.MogoApisHandler;
import io.reactivex.schedulers.Schedulers;
import okhttp3.MediaType;
@@ -79,8 +79,7 @@ public class DelayCheckUtil implements Handler.Callback {
private void startEmptyRequest() {
requestTime = SystemClock.elapsedRealtime();
requestStartSystemTime = System.currentTimeMillis();
MogoApisHandler.getInstance().getApis().getNetworkApi()
.create(DelayCheckApiServices.class, DelayCheckHttpConstant.getBaseUrl())
MoGoRetrofitFactory.getInstance(DelayCheckHttpConstant.getBaseUrl()).create(DelayCheckApiServices.class)
.emptyInterface().subscribeOn(Schedulers.io()).observeOn(Schedulers.io())
.subscribe(new SubscribeImpl<BaseData>(RequestOptions.create(context)) {
@Override
@@ -128,8 +127,7 @@ public class DelayCheckUtil implements Handler.Callback {
RequestBody params = RequestBody.create(MediaType.get("application/json"), GsonUtil.jsonFromObject(request));
MogoApisHandler.getInstance().getApis().getNetworkApi()
.create(DelayCheckApiServices.class, DelayCheckHttpConstant.getBaseUrl())
MoGoRetrofitFactory.getInstance(DelayCheckHttpConstant.getBaseUrl()).create(DelayCheckApiServices.class)
.uploadDelayCheckData(params).observeOn(Schedulers.io()).subscribeOn(Schedulers.io())
.subscribe(new SubscribeImpl<DelayCheckResponse>(RequestOptions.create(context)) {
@Override

View File

@@ -6,10 +6,11 @@ import android.os.Looper
import android.os.Message
import com.mogo.eagle.core.data.camera.CameraEntity
import com.mogo.eagle.core.data.camera.ReqLiveCarBean
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_MONITOR
import com.mogo.eagle.core.function.call.hmi.CallerHmiManager
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.function.monitoring.net.CameraListServices
import com.mogo.eagle.core.network.MoGoRetrofitFactory
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_MONITOR
import com.mogo.map.MogoLocationClient
import com.mogo.module.common.MogoApisHandler
import com.mogo.module.common.constants.HostConst
@@ -58,7 +59,8 @@ class CronTaskManager(private var context: Context?) {
@Deprecated("已废弃", ReplaceWith("requestDeviceList()"), DeprecationLevel.WARNING)
private fun requestCameraList() {
// 衡阳可直播的摄像头有限先写死roadId便于调试
disposable = netWork.create(CameraListServices::class.java, HostConst.CAMERA_STREAM_HOST)
disposable = MoGoRetrofitFactory.getInstance(HostConst.CAMERA_STREAM_HOST)
.create(CameraListServices::class.java)
.getCameraList("10849")
.subscribeOn(Schedulers.io())
.map { cameraListInfo ->
@@ -88,7 +90,8 @@ class CronTaskManager(private var context: Context?) {
*/
private fun requestDeviceList() {
MogoLocationClient.getInstance(context).lastKnowLocation?.let { location ->
disposable = netWork.create(CameraListServices::class.java, HostConst.CITY_HOST)
disposable = MoGoRetrofitFactory.getInstance(HostConst.CITY_HOST)
.create(CameraListServices::class.java)
.getDeviceList(location.longitude, location.latitude, 500)
.subscribeOn(Schedulers.io())
.map { cameraListInfo ->
@@ -121,32 +124,32 @@ class CronTaskManager(private var context: Context?) {
private fun requestCarCameraList() {
MogoLocationClient.getInstance(context).lastKnowLocation?.let { location ->
carDisposable =
netWork.create(CameraListServices::class.java, HostConst.CITY_HOST)
.getCarCameraList(ReqLiveCarBean(location.longitude, location.latitude))
.subscribeOn(Schedulers.io())
.map { liveCarCameraInfo ->
liveCarCameraInfo.result?.liveCamera?.filter { liveCarCamera ->
!liveCarCamera.videoSn.isNullOrEmpty()
}?.map { cameraInfo ->
CameraEntity(
sn = cameraInfo.videoSn,
street = cameraInfo.street,
township = cameraInfo.township
)
} ?: ArrayList()
}
.observeOn(AndroidSchedulers.mainThread())
.subscribe({
carCameraList = it
// CallerLogger.d("$M_MONITOR$TAG", "requestCarCameraList返回结果为$it")
}, {
CallerLogger.e(
"$M_MONITOR$TAG",
"message is:${it.message}, cause is:${it.cause}"
carDisposable = MoGoRetrofitFactory.getInstance(HostConst.CITY_HOST)
.create(CameraListServices::class.java)
.getCarCameraList(ReqLiveCarBean(location.longitude, location.latitude))
.subscribeOn(Schedulers.io())
.map { liveCarCameraInfo ->
liveCarCameraInfo.result?.liveCamera?.filter { liveCarCamera ->
!liveCarCamera.videoSn.isNullOrEmpty()
}?.map { cameraInfo ->
CameraEntity(
sn = cameraInfo.videoSn,
street = cameraInfo.street,
township = cameraInfo.township
)
it.printStackTrace()
})
} ?: ArrayList()
}
.observeOn(AndroidSchedulers.mainThread())
.subscribe({
carCameraList = it
// CallerLogger.d("$M_MONITOR$TAG", "requestCarCameraList返回结果为$it")
}, {
CallerLogger.e(
"$M_MONITOR$TAG",
"message is:${it.message}, cause is:${it.cause}"
)
it.printStackTrace()
})
} ?: run {
CallerLogger.e("$M_MONITOR$TAG", "CurrentLocation is null!")
}
@@ -160,26 +163,26 @@ class CronTaskManager(private var context: Context?) {
streamDisposable?.let {
if (!it.isDisposed) it.dispose()
}
streamDisposable =
netWork.create(CameraListServices::class.java, HostConst.OPEN_CAMERA_STREAM_HOST)
.openCameraStream(cameraIp)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe({
CallerLogger.d("$M_MONITOR$TAG", "openCameraStream返回结果为$it")
it.result?.let { streamResult ->
if (!streamResult.flvUrl.isNullOrEmpty()) CallerHmiManager.startRoadCameraLive(
streamResult.flvUrl!!
)
}
}, {
CallerLogger.e(
"$M_MONITOR$TAG",
"openCameraStream&message is:${it.message}, cause is:${it.cause}"
streamDisposable = MoGoRetrofitFactory.getInstance(HostConst.OPEN_CAMERA_STREAM_HOST)
.create(CameraListServices::class.java)
.openCameraStream(cameraIp)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe({
CallerLogger.d("$M_MONITOR$TAG", "openCameraStream返回结果为$it")
it.result?.let { streamResult ->
if (!streamResult.flvUrl.isNullOrEmpty()) CallerHmiManager.startRoadCameraLive(
streamResult.flvUrl!!
)
CallerHmiManager.showNoSignalView()
it.printStackTrace()
})
}
}, {
CallerLogger.e(
"$M_MONITOR$TAG",
"openCameraStream&message is:${it.message}, cause is:${it.cause}"
)
CallerHmiManager.showNoSignalView()
it.printStackTrace()
})
}
/**
@@ -189,7 +192,8 @@ class CronTaskManager(private var context: Context?) {
streamDisposable?.let {
if (!it.isDisposed) it.dispose()
}
streamDisposable = netWork.create(CameraListServices::class.java, HostConst.CITY_HOST)
streamDisposable = MoGoRetrofitFactory.getInstance(HostConst.CITY_HOST)
.create(CameraListServices::class.java)
.reqOpenCameraStream(cameraIp)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())

View File

@@ -1,11 +1,7 @@
package com.mogo.eagle.core.function.v2x.events.network;
import android.content.Context;
import com.alibaba.android.arouter.launcher.ARouter;
import com.mogo.eagle.core.data.constants.MogoServicePaths;
import com.mogo.eagle.core.network.MoGoRetrofitFactory;
import com.mogo.module.common.constants.HostConst;
import com.mogo.service.network.IMogoNetwork;
/**
* 应对不同接口对应不同服务域名的工厂累
@@ -16,54 +12,52 @@ public class V2XApiServiceFactory {
private static V2XApiService mGeoFenceCarServiceApiService;
private static V2XApiService mRealtimeLocationApiService;
private static V2XApiService mDataServiceApiService;
/**
* 获取指定域名下的 API 服务
*/
public static V2XApiService getApiService(Context context, String netHost) {
IMogoNetwork network = (IMogoNetwork) ARouter.getInstance()
.build(MogoServicePaths.PATH_SERVICES_NETWORK)
.navigation(context);
return network.create(V2XApiService.class, netHost);
public static V2XApiService getApiService(String netHost) {
return MoGoRetrofitFactory.getInstance(netHost).create(V2XApiService.class);
}
public static V2XApiService getDevaApiService(Context context) {
public static V2XApiService getDevaApiService() {
if (mDevaApiService == null) {
synchronized (V2XApiServiceFactory.class) {
if (mDevaApiService == null) {
mDevaApiService = getApiService(context, HostConst.DEVA_HOST);
mDevaApiService = getApiService(HostConst.DEVA_HOST);
}
}
}
return mDevaApiService;
}
public static V2XApiService getGeoFenceCarServiceApiService(Context context) {
public static V2XApiService getGeoFenceCarServiceApiService() {
if (mGeoFenceCarServiceApiService == null) {
synchronized (V2XApiServiceFactory.class) {
if (mGeoFenceCarServiceApiService == null) {
mGeoFenceCarServiceApiService = getApiService(context, HostConst.GEOFENCE_HOST);
mGeoFenceCarServiceApiService = getApiService(HostConst.GEOFENCE_HOST);
}
}
}
return mGeoFenceCarServiceApiService;
}
public static V2XApiService getRealtimeLocationApiService(Context context) {
public static V2XApiService getRealtimeLocationApiService() {
if (mRealtimeLocationApiService == null) {
synchronized (V2XApiServiceFactory.class) {
if (mRealtimeLocationApiService == null) {
mRealtimeLocationApiService = getApiService(context, HostConst.REALTIME_LOCATION_HOST);
mRealtimeLocationApiService = getApiService(HostConst.REALTIME_LOCATION_HOST);
}
}
}
return mRealtimeLocationApiService;
}
public static V2XApiService getStrategyPushApiService(Context context) {
public static V2XApiService getStrategyPushApiService() {
if (mDataServiceApiService == null) {
synchronized (V2XApiServiceFactory.class) {
if (mDataServiceApiService == null) {
mDataServiceApiService = getApiService(context, HostConst.STRATEGY_PUSH_HOST);
mDataServiceApiService = getApiService(HostConst.STRATEGY_PUSH_HOST);
}
}
}

View File

@@ -57,7 +57,7 @@ public class V2XRefreshModel {
public void giveLikeLiveVideo(final V2XRefreshCallback callback, String snStr) {
final Map<String, Object> query = new ParamsProvider.Builder(mContext).build();
query.put("data", "{\"sn\":" + snStr + "}");
V2XApiServiceFactory.getGeoFenceCarServiceApiService(mContext).giveLikeLiveVideo(query)
V2XApiServiceFactory.getGeoFenceCarServiceApiService().giveLikeLiveVideo(query)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new SubscribeImpl<BaseData>(RequestOptions.create(mContext)) {
@@ -92,7 +92,7 @@ public class V2XRefreshModel {
okhttp3.MediaType.parse("application/json; charset=utf-8"),
"{\"sn\":\"" + sn + "\"}");
V2XApiServiceFactory.getRealtimeLocationApiService(mContext).queryUserInfoBySn(body)
V2XApiServiceFactory.getRealtimeLocationApiService().queryUserInfoBySn(body)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new SubscribeImpl<V2XUserInfoRes>(RequestOptions.create(mContext)) {
@@ -142,7 +142,7 @@ public class V2XRefreshModel {
dataStr.append("}");
query.put("data", dataStr.toString());
V2XApiServiceFactory.getRealtimeLocationApiService(mContext).queryNearbyVehicleLiveByLocation(query)
V2XApiServiceFactory.getRealtimeLocationApiService().queryNearbyVehicleLiveByLocation(query)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new SubscribeImpl<V2XLiveCarRes>(RequestOptions.create(mContext)) {
@@ -182,7 +182,7 @@ public class V2XRefreshModel {
.append(0)
.append("}").toString();
map.put("data", json);
V2XApiServiceFactory.getRealtimeLocationApiService(mContext).sendHelpSignal(map).subscribeOn(Schedulers.io())
V2XApiServiceFactory.getRealtimeLocationApiService().sendHelpSignal(map).subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new SubscribeImpl<BaseData>(RequestOptions.create(mContext)) {
@Override
@@ -225,7 +225,7 @@ public class V2XRefreshModel {
.append("\"sn\":").append(MoGoAiCloudClientConfig.getInstance().getSn())
.append("}").toString();
map.put("data", json);
V2XApiServiceFactory.getDevaApiService(mContext).addPoiInfoFabulous(map).subscribeOn(Schedulers.io())
V2XApiServiceFactory.getDevaApiService().addPoiInfoFabulous(map).subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new SubscribeImpl<BaseData>(RequestOptions.create(mContext)) {
@Override
@@ -263,7 +263,7 @@ public class V2XRefreshModel {
.append("\"enthusiasticSn\":").append(MoGoAiCloudClientConfig.getInstance().getSn())
.append("}").toString();
map.put("data", json);
V2XApiServiceFactory.getDevaApiService(mContext).respondingToHelp(map).subscribeOn(Schedulers.io())
V2XApiServiceFactory.getDevaApiService().respondingToHelp(map).subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new SubscribeImpl<BaseData>(RequestOptions.create(mContext)) {
@Override
@@ -290,7 +290,7 @@ public class V2XRefreshModel {
final Map<String, Object> map = new ParamsProvider.Builder(mContext).build();
String json = "{" + "\"id\":\"" + id + "\"," + "\"sn\":\"" + MoGoAiCloudClientConfig.getInstance().getSn() + "\"," + "\"status\":" + status + "," + "\"helpId\":\"" + helpId + "\"}";
map.put("data", json);
V2XApiServiceFactory.getDevaApiService(mContext).manualMarkingTrafficJam(map).subscribeOn(Schedulers.io())
V2XApiServiceFactory.getDevaApiService().manualMarkingTrafficJam(map).subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new SubscribeImpl<BaseData>(RequestOptions.create(mContext)) {
@Override
@@ -309,7 +309,7 @@ public class V2XRefreshModel {
* 根据名称获取策略详情
*/
public void getStrategyPush(V2XRefreshCallback<V2XStrategyPushRes> callback) {
V2XApiServiceFactory.getStrategyPushApiService(mContext).getStrategyPush().subscribeOn(Schedulers.io())
V2XApiServiceFactory.getStrategyPushApiService().getStrategyPush().subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new SubscribeImpl<V2XStrategyPushRes>(RequestOptions.create(mContext)) {
@Override
@@ -341,7 +341,7 @@ public class V2XRefreshModel {
public void getHelpSignal(V2XRefreshCallback<V2XSeekHelpRes> callback) {
final Map<String, Object> map = new ParamsProvider.Builder(mContext).build();
map.put("sn", MoGoAiCloudClientConfig.getInstance().getSn());
V2XApiServiceFactory.getRealtimeLocationApiService(mContext).queryHelpSignal(map).subscribeOn(Schedulers.io())
V2XApiServiceFactory.getRealtimeLocationApiService().queryHelpSignal(map).subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new SubscribeImpl<V2XSeekHelpRes>(RequestOptions.create(mContext)) {
@Override

View File

@@ -104,7 +104,7 @@ public class V2XShareNetworkModel {
builder.append("data", GsonUtil.jsonFromObject(hashMap));
Map<String, Object> parameters = builder.build();
//热心指数
V2XApiServiceFactory.getDevaApiService(mContext).getEnthusiasmIndex(parameters)
V2XApiServiceFactory.getDevaApiService().getEnthusiasmIndex(parameters)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new SubscribeImpl<BaseData>(RequestOptions.create((mContext))) {
@@ -148,7 +148,7 @@ public class V2XShareNetworkModel {
builder.append("data", GsonUtil.jsonFromObject(hashMap));
Map<String, Object> parameters = builder.build();
V2XApiServiceFactory.getDevaApiService(mContext).getShareEventList(parameters)
V2XApiServiceFactory.getDevaApiService().getShareEventList(parameters)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new SubscribeImpl<BaseData>(RequestOptions.create(mContext)) {

View File

@@ -4,19 +4,17 @@ import com.google.gson.Gson
import com.mogo.cloud.passport.MoGoAiCloudClientConfig
import com.mogo.eagle.core.data.BaseResponse
import com.mogo.eagle.core.data.trafficlight.*
import com.mogo.eagle.core.network.MoGoRetrofitFactory
import com.mogo.eagle.core.network.apiCall
import com.mogo.eagle.core.network.cancel
import com.mogo.eagle.core.network.request
import com.mogo.module.common.MogoApisHandler
import com.mogo.module.common.constants.HostConst.CITY_HOST
class TrafficLightNetWorkModel {
private fun getNetWorkApi(baseUrl: String = CITY_HOST): TrafficLightApiService {
return MogoApisHandler.getInstance().apis.networkApi.createNoCallAdapter(
TrafficLightApiService::class.java, baseUrl
)
return MoGoRetrofitFactory.getInstanceNoCallAdapter(baseUrl)
.create(TrafficLightApiService::class.java)
}
fun requestRoadID(
@@ -86,10 +84,10 @@ class TrafficLightNetWorkModel {
}
}
onSuccess {
if(it.result!=null){
if (it.result != null) {
onSuccess.invoke(it.result)
}else{
onError.invoke(it.msg?:"返回result数据为null")
} else {
onError.invoke(it.msg ?: "返回result数据为null")
}
}
onError {
@@ -115,7 +113,8 @@ class TrafficLightNetWorkModel {
request<BaseResponse<Any>> {
val map = hashMapOf<String, String>()
start {
val trafficLightRequestData = ChangeLightRequestData(lightId, crossingNo, heading, controlTime)
val trafficLightRequestData =
ChangeLightRequestData(lightId, crossingNo, heading, controlTime)
map["sn"] = MoGoAiCloudClientConfig.getInstance().sn
map["data"] = Gson().toJson(trafficLightRequestData)
}

View File

@@ -3,18 +3,17 @@ package com.mogo.eagle.core.function.v2x.vip.network
import com.mogo.cloud.passport.MoGoAiCloudClientConfig
import com.mogo.eagle.core.data.BaseResponse
import com.mogo.eagle.core.data.v2x.VipRequest
import com.mogo.eagle.core.network.MoGoRetrofitFactory
import com.mogo.eagle.core.network.apiCall
import com.mogo.eagle.core.network.request
import com.mogo.module.common.MogoApisHandler
import com.mogo.module.common.constants.HostConst.DATA_SERVICE_HOST
class VipNetWorkModel {
private fun getNetWorkApi(baseUrl: String = DATA_SERVICE_HOST): VipApiService {
return MogoApisHandler.getInstance().apis.networkApi.createNoCallAdapter(
VipApiService::class.java, baseUrl
)
return MoGoRetrofitFactory.getInstanceNoCallAdapter(baseUrl)
.create(VipApiService::class.java)
}
fun requestVip(onSuccess: ((VipRequest) -> Unit), onError: ((String) -> Unit)) {