[6.2.4]修复魔方启动录包和上报原因到工控机Bug

This commit is contained in:
xuxinchao
2023-12-05 16:58:51 +08:00
parent 5b40018700
commit 5bb005753b
2 changed files with 8 additions and 51 deletions

View File

@@ -13,12 +13,10 @@ import androidx.lifecycle.LifecycleOwner
import com.mogo.cloud.passport.MoGoAiCloudClientConfig
import com.mogo.eagle.core.data.app.AppConfigInfo
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.data.deva.badcase.RecordCaseEntity
import com.mogo.eagle.core.data.msgbox.MsgBoxBean
import com.mogo.eagle.core.data.msgbox.MsgBoxType
import com.mogo.eagle.core.data.msgbox.RecordBagMsg
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotRecordListener
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotRecordListenerManager
import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationWGS84ListenerManager
import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxManager
@@ -33,7 +31,6 @@ import com.zhjt.mogo_core_function_devatools.badcase.consts.BadCaseConfig
import com.zhjt.mogo_core_function_devatools.badcase.repository.db.entity.AutoPilotRecord
import com.zhjt.mogo_core_function_devatools.ext.enqueuePop
import me.jessyan.autosize.utils.AutoSizeUtils
import mogo.telematics.pad.MessagePad
import record_cache.RecordPanelOuterClass
internal object BadCaseManager : LifecycleEventObserver, IMoGoAutopilotRecordListener {
@@ -45,9 +42,6 @@ internal object BadCaseManager : LifecycleEventObserver, IMoGoAutopilotRecordLis
@Volatile
private var record: AutoPilotRecord? = null
//是否处理录包配置回调数据
private var receiveRecordConfig: Boolean = false
fun init(context: Context) {
CallerAutopilotRecordListenerManager.addListener(TAG, this)
SpeechUtils.init(context)
@@ -63,13 +57,7 @@ internal object BadCaseManager : LifecycleEventObserver, IMoGoAutopilotRecordLis
if (activity !is AppCompatActivity) {
return
}
//兼容老MAP版本
if (BadCaseConfig.dockerVersion!!.contains("2.3.0")
|| BadCaseConfig.dockerVersion!!.contains("2.4.0")
|| BadCaseConfig.dockerVersion!!.contains("2.5.0")
|| BadCaseConfig.dockerVersion!!.contains("2.6.0")
|| BadCaseConfig.dockerVersion!!.contains("2.8.0")
){
ThreadUtils.runOnUiThread {
val initiativeBadCaseWindow = InitiativeBadCaseWindow(activity)
initiativeBadCaseWindow.setClickListener(object :
InitiativeBadCaseWindow.ClickListener {
@@ -79,10 +67,7 @@ internal object BadCaseManager : LifecycleEventObserver, IMoGoAutopilotRecordLis
})
initiativeBadCaseWindow.showFloatWindow(null)
}else{
receiveRecordConfig = true
//获取数据采集录制模式配置列表
CallerAutoPilotControlManager.getBadCaseConfig(0, 0, ArrayList())
}
}else {
ToastUtils.showShort("工控机连接状态异常")
@@ -315,33 +300,4 @@ internal object BadCaseManager : LifecycleEventObserver, IMoGoAutopilotRecordLis
}
/**
* 数据采集配置应答
*/
override fun onAutopilotRecordConfig(config: MessagePad.RecordDataConfig) {
if(receiveRecordConfig){
ThreadUtils.runOnUiThread {
if(config.recordTypesCount >0){
config.recordTypesList.forEach {
//TODO 需要确认具体是哪个ID
if(it.id == 1){
val recordCaseEntity = RecordCaseEntity(it.id,it.desc,it.topicsList)
val initiativeBadCaseWindow = AppStateManager.currentActivity()
?.let { it1 -> InitiativeBadCaseWindow(it1) }
initiativeBadCaseWindow?.setClickListener(object :
InitiativeBadCaseWindow.ClickListener {
override fun closeWindow() {
initiativeBadCaseWindow.hideFloatWindow()
}
})
initiativeBadCaseWindow?.showFloatWindow(recordCaseEntity)
receiveRecordConfig = false
}
}
}
}
}
}
}

View File

@@ -520,8 +520,6 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList
mWindowManager!!.addView(mFloatLayout, mWindowParams)
//开启录包
recordKey = Random(SystemClock.elapsedRealtime()).nextInt().toLong()
//开启高精地图截图
CallerMapUIServiceManager.getMapUIController()?.getMapScreenShot()
if(recordCaseEntity!=null){
CallerAutoPilotControlManager.recordPackage(recordCaseEntity.caseId,recordKey.toInt(),
BadCaseConfig.totalDuration, BadCaseConfig.previousDuration,recordCaseEntity.topicList)
@@ -566,10 +564,13 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList
override fun onAutopilotRecordResult(recordPanel: RecordPanelOuterClass.RecordPanel) {
CallerLogger.d("${M_DEVA}${TAG}", "-- 收到工控机录制任务回调 -- $recordPanel")
ThreadUtils.runOnUiThread {
if(recordKey==null){
recordKey = recordPanel.key
recordKey = recordPanel.key
//开始录制
if(recordPanel.stat == 300){
BadCaseConfig.recordKeyList.add(recordPanel.key)
//开启高精地图截图
CallerMapUIServiceManager.getMapUIController()?.getMapScreenShot()
}
BadCaseConfig.recordKeyList.add(recordPanel.key)
if(recordFileName==null){
recordFileName = recordPanel.filename
}