Merge branch 'dev_minibus-d_230425_3.2.0' into merge320tomaster

This commit is contained in:
yangyakun
2023-06-12 16:45:02 +08:00
1091 changed files with 23936 additions and 15523 deletions

View File

@@ -185,6 +185,31 @@ interface IMoGoAutopilotControlProvider : IMoGoFunctionServerProvider {
*/
fun sendDetouringSpeed(speed: Double): Boolean
/**
* 弱网减速停车策略开关
* isEnable = true 使用弱网减速停车策略
* isEnable = false 关闭弱网减速停车策略
* @return boolean
*/
fun sendWeakNetSlowDown(isEnable: Boolean): Boolean
/**
* 获取全部参数
* 结果回调{@link OnAdasListener#onGetParamResp(MessagePad.Header, MessagePad.SetParamReq)}
*
* @return boolean
*/
fun sendGetAllParamReq(): Boolean
/**
* 参数获取请求
* 结果回调{@link OnAdasListener#onGetParamResp(MessagePad.Header, MessagePad.SetParamReq)}
*
* @param paramType 参数类型{@link com.zhidao.support.adas.high.common.Constants.PARAM_TYPE}
* @return boolean
*/
fun sendGetParamReq(paramType: Int): Boolean
/**
* 获取数据采集录制模式配置列表
* @param reqType 0: all, 1:获取当前所有topic列表, 2:配置需要预加载的topic组合
@@ -200,6 +225,12 @@ interface IMoGoAutopilotControlProvider : IMoGoFunctionServerProvider {
*/
fun sendBagManagerCmd(bagManagerEntity: BagManagerEntity): Boolean
/**
* 控制V2N数据给车端PnC
* @param switchCmd true为发给PnCfalse为不发给PnC
*/
fun sendV2nToPncCmd(switchCmd: Boolean)
/**
* 发送工控机所有节点重启命令
*/

View File

@@ -1,6 +1,7 @@
package com.mogo.eagle.core.function.api.autopilot
import mogo.telematics.pad.MessagePad
import mogo.v2x.*
import perception.TrafficLightOuterClass
/**
@@ -35,4 +36,12 @@ interface IMoGoAutopilotIdentifyListener {
*/
fun onAutopilotPerceptionTrafficLight(trafficLights: TrafficLightOuterClass.TrafficLights?){}
/**
* 交通拥堵事件上车数据回调
* @param header 消息头信息
* @param rsi 交通拥堵事件数据实体
*/
fun onAutopilotV2nCongestionEvent(header: MessagePad.Header, rsi: MogoV2X.RSI_PB) {}
}

View File

@@ -13,7 +13,7 @@ import system_master.*
interface IMoGoAutopilotStatusListener {
/**
* 自动驾驶状态信息
* 自动驾驶状态信息 TODO 接口优化,拆分业务属性字段
*
* @param autoPilotStatusInfo 状态信息
*/

View File

@@ -0,0 +1,11 @@
package com.mogo.eagle.core.function.api.autopilot
import mogo.v2x.MogoV2X
/**
* V2X数据
*/
interface IMoGoV2XListener {
fun onV2nGlobalPathEvents(eventCount: Int, construct: MogoV2X.RSI_PB?, triangle: MogoV2X.RSI_PB?, congestion: MogoV2X.RSI_PB?, parkingViolation: MogoV2X.RSM_PB?)
}

View File

@@ -73,6 +73,8 @@ interface IMoGoFuncBizProvider : IMoGoFunctionServerProvider {
fun getAllV2XEvents()
fun stopQueryV2XEvents()
fun queryV2XEvents()

View File

@@ -10,6 +10,8 @@ interface IMsgBoxProvider: IMoGoFunctionServerProvider {
fun saveMsg(bean: MsgBoxBean)
fun delMsgTable(context: Context)
/**
* 获取本地数据库缓存的通知消息V2X、云公告、运营信息
*/

View File

@@ -11,6 +11,6 @@ interface IMoGoObuInfoListener {
/**
* @param obuInfoStr OBU信息
*/
fun onGetObuInfo(obuInfoStr: String)
fun onGetObuInfo(obuInfoStr: String?)
}

View File

@@ -20,4 +20,6 @@ interface IMoGoObuProvider : IMoGoFunctionServerProvider {
fun uploadObuPack(filePathArray: Array<String>)
fun deleteObuFile()
fun setHvInfoSendCycle(time: Int)
}

View File

@@ -1,16 +0,0 @@
package com.mogo.eagle.core.function.api.datacenter.obu.obucombine
import mogo.v2x.ObuWarningEvent
/**
* obu和dc 通道打通融合
*/
interface IMoGoObuDcCombineListener {
/**
* obu透传v2i数据标牌弱势交通红绿灯限速道路危险状况
* @param obuWarningData
*/
fun onMoGoObuDcCombineData(obuWarningData: ObuWarningEvent.ObuWarningData?)
}

View File

@@ -18,6 +18,11 @@ interface IMoGoTrafficLightListener {
}
/**
* 是否重置
*/
fun resetTrafficLight(isReset: Boolean) {}
/**
* 云端红绿灯接口请求失败
*/

View File

@@ -13,6 +13,8 @@ import com.mogo.eagle.core.data.deva.scene.SceneTAG
import com.mogo.eagle.core.data.msgbox.MsgBoxBean
import com.mogo.eagle.core.function.api.devatools.apm.*
import com.mogo.eagle.core.function.api.devatools.strict.*
import com.mogo.eagle.core.function.api.devatools.download.*
import com.mogo.eagle.core.function.api.upgrade.*
/**
* 开发套件工具接口
@@ -119,7 +121,7 @@ interface IDevaToolsProvider : IProvider {
/**
* 下载指定包
*/
fun downLoadPackage(downloadKey: String, downloadUrl: String)
fun downLoadPackage(type: DownloadType, downloadKey: String, downloadUrl: String)
/**
* 更新下载进度
@@ -197,5 +199,10 @@ interface IDevaToolsProvider : IProvider {
fun apmEnvProvider(): IApmEnvProvider
/**
* 升级相关状态查询
*/
fun upgradeProvider(): IMoGoUpgradeProvider?
fun strict(): IStrictModeProvider
}

View File

@@ -22,7 +22,7 @@ interface IMogoDevaToolsUpgradeListener {
/**
* 线程下载完毕
*/
fun onFinished(url: String?)
fun onFinished(url: String?, localPath: String)
/**
* 错误信息回调

View File

@@ -1,10 +1,13 @@
package com.mogo.eagle.core.function.api.devatools.apm
import androidx.annotation.WorkerThread
interface IApmEnvProvider {
fun init(buildType: String, netType: String, dockerVersion: String)
fun onEnvChanged(buildType: String, netType: String, dockerVersion: String)
@WorkerThread
fun isDebugEnabled(): Boolean?
}

View File

@@ -0,0 +1,7 @@
package com.mogo.eagle.core.function.api.devatools.download
enum class DownloadType {
APK,
OBU,
PATCH
}

View File

@@ -8,7 +8,6 @@ import com.mogo.eagle.core.data.enums.WarningDirectionEnum
import com.mogo.eagle.core.data.map.Infrastructure
import com.mogo.eagle.core.data.biz.notice.NoticeNormalData
import com.mogo.eagle.core.data.biz.notice.NoticeTrafficStylePushData
import com.mogo.eagle.core.data.deva.report.ReportEntity
/**
* @author xiaoyuzhou
@@ -19,7 +18,7 @@ interface IMoGoHmiProvider :IProvider{
/**
* 不展示顶部弹窗,其它保留
*/
fun warningV2X(v2xType: String, alertContent: CharSequence?, ttsContent: String?, listener: IMoGoWarningStatusListener?, direction: WarningDirectionEnum, expireTime: Long)
fun warningV2X(v2xType: String, alertContent: CharSequence?, ttsContent: String?, listener: IMoGoWarningStatusListener?, direction: WarningDirectionEnum, expireTime: Long, isFromObu: Boolean)
/**
* 展示指定方位上的红框预警

View File

@@ -3,10 +3,8 @@ package com.mogo.eagle.core.function.api.map;
import android.content.Context;
import com.alibaba.android.arouter.facade.template.IProvider;
import com.mogo.eagle.core.function.api.map.marker.IMogoMarkerService;
import com.mogo.map.location.IMogoGDLocationClient;
import com.mogo.map.marker.IMogoMarkerManager;
import com.mogo.map.overlay.IMogoOverlayManager;
import com.mogo.map.overlay.IMoGoOverlayManager;
import com.mogo.map.uicontroller.IMogoMapUIController;
/**
@@ -16,19 +14,8 @@ import com.mogo.map.uicontroller.IMogoMapUIController;
* 地图对外接口
*/
public interface IMogoMapService extends IProvider {
/**
* marker 操作
*
* @return
*/
IMogoMarkerManager getMarkerManager(Context context);
/**
* 带有业务标注的服务marker
*
* @return
*/
IMogoMarkerService getMarkerService();
/**
* 地图UI控制
@@ -37,12 +24,12 @@ public interface IMogoMapService extends IProvider {
*/
IMogoMapUIController getMapUIController();
/**
* 覆盖物操作
*
* @return
*/
IMogoOverlayManager getOverlayManager();
IMoGoOverlayManager getOverlayManager();
/**
* 获取高德定位服务

View File

@@ -1,10 +0,0 @@
package com.mogo.eagle.core.function.api.map.marker
import com.alibaba.android.arouter.facade.template.IProvider
import mogo.telematics.pad.MessagePad
interface IMoGoIdentifyListener :IProvider{
fun getIdentifyObj(uuid: String): MessagePad.TrackedObject?
}

View File

@@ -1,73 +0,0 @@
package com.mogo.eagle.core.function.api.map.marker;
import androidx.annotation.Nullable;
import com.mogo.eagle.core.data.map.MogoLatLng;
import com.mogo.eagle.core.data.traffic.TrafficData;
import com.mogo.map.marker.IMogoMarker;
public interface IMogoMarkerService {
/**
* @param object
* @return
*/
@Nullable
IMogoMarker drawMarker(Object object);
/**
* 识别物体移动
* @param lon
* @param lat
* @param type
* @param collisionlat
* @param collisionLon
* @param angle
* @param showTime
*/
void renderWarningMoveMarker(double lon, double lat, int type, double collisionlat, double collisionLon, double angle, long showTime);
/**
* 绘制停止线marker
* @param lon
* @param lat
*/
void renderStopLineMarker(double lon, double lat);
/**
* 绘制箭头
* @param location
* @param markerType
* @param type
* @param rotate
*/
void drawerArrowsMarkerWithLocation(MogoLatLng location, String markerType, int type, int rotate);
/**
* 更新OBU/V2X传来的 单个物体感知数据
* @param trafficData
*/
void updateITrafficInfo(TrafficData trafficData);
/**
* 更新数据
*/
void updateITrafficLocationInfo(TrafficData trafficData);
/**
* 更新识别数据颜色
*/
void updateITrafficThreatLevelInfo(TrafficData trafficData);
/**
* 移除OBU/V2X传来的 单个物体感知数据
* @param uuid
*/
void removeCvxRvInfoIndInfo(String uuid);
}

View File

@@ -0,0 +1,9 @@
package com.mogo.eagle.core.function.api.map.roma
interface IMoGoRomaListener {
/**
* 漫游状态回调
*/
fun romaStatus(status:Boolean)
}

View File

@@ -0,0 +1,13 @@
package com.mogo.eagle.core.function.api.map.roma
import com.alibaba.android.arouter.facade.template.IProvider
interface IMogoRoma : IProvider {
/**
* 触发开启/关闭漫游
* @param romaStatus 漫游状态
*/
fun trigger(romaStatus:Boolean,requestSuccess:((Boolean) -> Unit)? = null)
}

View File

@@ -0,0 +1,20 @@
package com.mogo.eagle.core.function.api.order
/**
* @author XuXinChao
* @date 2023/4/20
* 订单事件监听回调
*/
interface IOrderListener {
/**
* 通知订单状态
* @param inOrder true:开始订单false:订单结束
*/
fun onUpdateOrderStatus(inOrder: Boolean){}
/**
* 订单核销
*/
fun onOrderRemoval(){}
}

View File

@@ -0,0 +1,35 @@
package com.mogo.eagle.core.function.api.patch
import android.content.Context
import com.alibaba.android.arouter.facade.template.IProvider
import java.io.*
interface IMoGoPatchProvider : IProvider {
/**
* @param context 上下文环境
* @param expectOldApkMd5 服务端返回的旧apk文件的md5
* @param patchSize patch文件大小
* @return true: 本地apk与服务端旧apk版本的md5文件一致; false: 本地apk与服务端旧apk版本md5不一致
*/
fun isPatchAccept(context: Context, expectOldApkMd5: String, patchSize: Long): Boolean
/**
* @param context 上下文环境
* @param patch 已下载文件的patch路径
* @param newApk 合成后文件的文件路径
* @return true: patch与旧apk文件合成成功; false: patch与旧apk文件合成失败
*/
fun applyPatch(context: Context, patch: File, newApk: File): Boolean
/**
* @param context 上下文环境
* @param mergedApk patch合成后的文件路径
* @param expectNewApkMd5 期望合成后文件的md5值
* @return true: md5校验成功; false: md5校验失败
*/
fun checkMd5ForMergedApk(context: Context, mergedApk: File, expectNewApkMd5: String): Boolean
}

View File

@@ -2,4 +2,6 @@ package com.mogo.eagle.core.function.api.telematic
interface IReceivedMsgListener {
fun onReceivedMsg(type: Int, byteArray: ByteArray)
fun onReceivedServerSn(sn: String?) {}
}

View File

@@ -0,0 +1,52 @@
package com.mogo.eagle.core.function.api.upgrade
import com.alibaba.android.arouter.facade.template.IProvider
interface IMoGoUpgradeProvider: IProvider {
suspend fun recordUpgradeRecord(sn: String, mac: String, type: String?, isSupportPatch: Boolean)
suspend fun recordUpgradeRequestStart()
suspend fun recordUpgradeRequestSuccess(response: String)
suspend fun recordUpgradeRequestFailed(error: String)
suspend fun recordUpgradeRecord(newVersionName: String, newMd5: String?, type: Int)
suspend fun recordDownloadStart(downloadUrl: String)
suspend fun recordDownloadPause(downloadUrl: String)
suspend fun recordDownloadFailed(downloadUrl: String, error: String)
suspend fun recordDownloadSuccess(downloadUrl: String)
suspend fun recordInstallStart()
suspend fun recordSourceMd5CheckStart()
suspend fun recordSourceMd5CheckFailed(error: String)
suspend fun recordSourceMd5CheckSuccess()
suspend fun recordInstallApplyPatchStart()
suspend fun recordInstallApplyPatchFailed(error: String)
suspend fun recordInstallApplyPatchSuccess()
suspend fun recordTargetMd5CheckStart()
suspend fun recordTargetMd5CheckFailed(error: String)
suspend fun recordTargetMd5CheckSuccess()
suspend fun recordInstallFailed(code: Int, error: String)
suspend fun getUpgradeRecords(): Map<String, List<Pair<String, String>>>?
suspend fun hasUpgradeRecord(): Boolean
suspend fun isNeedGoPatchUpgrade(): Boolean
}