[6.6.0]接管记录
This commit is contained in:
@@ -82,6 +82,7 @@ import com.zhjt.mogo_core_function_devatools.tts.TtsManager.Companion.ttsManager
|
||||
import com.zhjt.mogo_core_function_devatools.upgrade.UpgradeManager.Companion.upgradeManager
|
||||
import com.zhjt.mogo_core_function_devatools.weaknetwork.DetectResultImpl
|
||||
import com.zhjt.mogo_core_function_devatools.weaknetwork.WeakNetworkStrategy
|
||||
import com.zhjt.mogo_core_function_devatools.workorder.WorkOrderManager
|
||||
import com.zhjt.service.chain.ChainLog
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.delay
|
||||
@@ -449,6 +450,13 @@ class DevaToolsProvider : IDevaToolsProvider, IAppStateListener {
|
||||
BadCaseManager.showBadCaseManagerWindow(context)
|
||||
}
|
||||
|
||||
/**
|
||||
* 展示接管记录页面
|
||||
*/
|
||||
override fun showTakeOverRecordView(context: Context) {
|
||||
WorkOrderManager.workOrderManager.showTakeOverRecordView(context)
|
||||
}
|
||||
|
||||
/**
|
||||
* 启动调用SSM停服命令超时检测
|
||||
*/
|
||||
|
||||
@@ -13,6 +13,7 @@ import androidx.fragment.app.FragmentActivity
|
||||
import androidx.lifecycle.Lifecycle.Event
|
||||
import androidx.lifecycle.LifecycleEventObserver
|
||||
import androidx.lifecycle.LifecycleOwner
|
||||
import com.mogo.commons.env.ProjectUtils
|
||||
import com.mogo.commons.module.status.IMogoStatusChangedListener
|
||||
import com.mogo.commons.module.status.MogoStatusManager
|
||||
import com.mogo.commons.module.status.StatusDescriptor
|
||||
@@ -53,6 +54,7 @@ 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.badcase.util.RecordBitmapUtils
|
||||
import com.zhjt.mogo_core_function_devatools.ext.enqueuePop
|
||||
import com.zhjt.mogo_core_function_devatools.workorder.ReportTypeWindow
|
||||
import com.zhjt.mogo_core_function_devatools.workorder.WorkOrderWindow
|
||||
import me.jessyan.autosize.utils.AutoSizeUtils
|
||||
import record_cache.RecordPanelOuterClass
|
||||
@@ -189,15 +191,28 @@ internal object BadCaseManager : LifecycleEventObserver, IMoGoAutopilotRecordLis
|
||||
view.setOnClickListener{
|
||||
if (ClickUtils.isFastClick()){
|
||||
if (NetworkUtils.isConnected()){
|
||||
if (BadCaseConfig.dockerVersion != null){
|
||||
//展示工单上报弹窗
|
||||
val workOrderWindow = WorkOrderWindow(activity)
|
||||
workOrderWindow.setClickListener(object: WorkOrderWindow.ClickListener{
|
||||
override fun closeWindow() {
|
||||
workOrderWindow.hideFloatWindow()
|
||||
}
|
||||
})
|
||||
workOrderWindow.showFloatWindow()
|
||||
//TODO 更改dockerVersion是否为空
|
||||
if (BadCaseConfig.dockerVersion == null){
|
||||
if(ProjectUtils.isSaas()){
|
||||
//660版本数据闭环增加统一上报问题入口(仅限于saas渠道)
|
||||
//TODO 已存在WIndow再次点击会再次创建WIndow
|
||||
val reportTypeWindow = ReportTypeWindow(activity)
|
||||
reportTypeWindow.setClickListener(object: ReportTypeWindow.ClickListener{
|
||||
override fun closeWindow() {
|
||||
reportTypeWindow.hideFloatWindow()
|
||||
}
|
||||
})
|
||||
reportTypeWindow.showFloatWindow()
|
||||
}else{
|
||||
//展示工单上报弹窗
|
||||
val workOrderWindow = WorkOrderWindow(activity)
|
||||
workOrderWindow.setClickListener(object: WorkOrderWindow.ClickListener{
|
||||
override fun closeWindow() {
|
||||
workOrderWindow.hideFloatWindow()
|
||||
}
|
||||
})
|
||||
workOrderWindow.showFloatWindow()
|
||||
}
|
||||
}else{
|
||||
ToastUtils.showShort("工控机连接状态异常")
|
||||
}
|
||||
|
||||
@@ -2,11 +2,27 @@ package com.zhjt.mogo_core_function_devatools.workorder
|
||||
|
||||
import android.annotation.SuppressLint
|
||||
import android.app.Activity
|
||||
import android.graphics.PixelFormat
|
||||
import android.os.CountDownTimer
|
||||
import android.os.SystemClock
|
||||
import android.util.DisplayMetrics
|
||||
import android.view.Gravity
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.WindowManager
|
||||
import android.widget.ImageView
|
||||
import android.widget.TextView
|
||||
import androidx.appcompat.widget.AppCompatTextView
|
||||
import androidx.constraintlayout.widget.Group
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager
|
||||
import com.mogo.eagle.core.utilcode.util.BarUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.zhjt.mogo_core_function_devatools.R
|
||||
import com.zhjt.mogo_core_function_devatools.badcase.record.RecordManager
|
||||
import com.zhjt.mogo_core_function_devatools.badcase.consts.BadCaseConfig
|
||||
import java.util.Random
|
||||
import kotlin.math.absoluteValue
|
||||
import kotlin.math.round
|
||||
|
||||
/**
|
||||
* 上报类型选择,包括一键上报及上报类型选择:故障类、接管类
|
||||
@@ -22,6 +38,18 @@ class ReportTypeWindow constructor(activity: Activity) {
|
||||
private var mWindowParams: WindowManager.LayoutParams? = null
|
||||
private var mWindowManager: WindowManager? = null
|
||||
private lateinit var mFloatLayout: View
|
||||
private var clickListener: ClickListener? = null
|
||||
|
||||
private lateinit var tvOneClickReportTitle: TextView
|
||||
private lateinit var ivOneClickReport: ImageView
|
||||
private lateinit var oneClickGroup: Group
|
||||
private lateinit var tvReportTypeFault: AppCompatTextView
|
||||
private lateinit var tvReportTypeTakeOver: AppCompatTextView
|
||||
private lateinit var reportTypeGroup: Group
|
||||
private lateinit var tvReportSuccess: AppCompatTextView
|
||||
|
||||
private var isOneClickType: Boolean = false //是否是一键上报类型
|
||||
private var hasReportOperate: Boolean = false //是否点击了一键上报按钮
|
||||
|
||||
init {
|
||||
initFloatWindow()
|
||||
@@ -30,13 +58,105 @@ class ReportTypeWindow constructor(activity: Activity) {
|
||||
@SuppressLint("InflateParams")
|
||||
private fun initFloatWindow(){
|
||||
mFloatLayout = LayoutInflater.from(mActivity).inflate(R.layout.view_report_type, null) as View
|
||||
initView()
|
||||
initEvent()
|
||||
mWindowParams = WindowManager.LayoutParams()
|
||||
mWindowManager = mActivity.windowManager
|
||||
mWindowParams?.let {
|
||||
it.format = PixelFormat.RGBA_8888
|
||||
it.flags = WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL
|
||||
it.gravity = Gravity.START or Gravity.TOP
|
||||
it.width = 457
|
||||
it.height = 333
|
||||
it.alpha = 1.0f
|
||||
}
|
||||
}
|
||||
|
||||
private fun initView(){
|
||||
tvOneClickReportTitle = mFloatLayout.findViewById(R.id.tvOneClickReportTitle)
|
||||
ivOneClickReport = mFloatLayout.findViewById(R.id.ivOneClickReport)
|
||||
oneClickGroup = mFloatLayout.findViewById(R.id.oneClickGroup)
|
||||
tvReportTypeFault = mFloatLayout.findViewById(R.id.tvReportTypeFault)
|
||||
tvReportTypeTakeOver = mFloatLayout.findViewById(R.id.tvReportTypeTakeOver)
|
||||
reportTypeGroup = mFloatLayout.findViewById(R.id.reportTypeGroup)
|
||||
tvReportSuccess = mFloatLayout.findViewById(R.id.tvReportSuccess)
|
||||
}
|
||||
|
||||
private fun initEvent(){
|
||||
if(isOneClickType){
|
||||
oneClickGroup.visibility = View.VISIBLE
|
||||
reportTypeGroup.visibility = View.GONE
|
||||
tvReportSuccess.visibility = View.GONE
|
||||
tvOneClickReportTitle.text = String.format(mActivity.resources.getString(R.string.identified_vehicle_malfunction),5)
|
||||
val oneClickTimer = object : CountDownTimer(5000, 1000) {
|
||||
override fun onTick(count: Long) {
|
||||
ThreadUtils.runOnUiThread {
|
||||
tvOneClickReportTitle.text = String.format(mActivity.resources.getString(R.string.identified_vehicle_malfunction),round((count.toDouble()/1000)).toInt())
|
||||
}
|
||||
}
|
||||
|
||||
override fun onFinish() {
|
||||
//如果有页面操作,则不自动关闭窗口
|
||||
if(!hasReportOperate){
|
||||
clickListener?.closeWindow()
|
||||
}
|
||||
}
|
||||
}
|
||||
oneClickTimer.start()
|
||||
}else{
|
||||
oneClickGroup.visibility = View.GONE
|
||||
reportTypeGroup.visibility = View.VISIBLE
|
||||
tvReportSuccess.visibility = View.GONE
|
||||
}
|
||||
//一键上报
|
||||
ivOneClickReport.setOnClickListener {
|
||||
hasReportOperate = true
|
||||
//TODO
|
||||
}
|
||||
//故障类
|
||||
tvReportTypeFault.setOnClickListener {
|
||||
val faultReasonWindow = FaultReasonWindow(mActivity)
|
||||
faultReasonWindow.showFloatWindow()
|
||||
clickListener?.closeWindow()
|
||||
}
|
||||
//主动录包
|
||||
tvReportTypeTakeOver.setOnClickListener {
|
||||
val response = CallerAutoPilotControlManager.recordPackage(
|
||||
BadCaseConfig.type, Random(SystemClock.elapsedRealtime()).nextInt().absoluteValue,
|
||||
BadCaseConfig.totalDuration, BadCaseConfig.previousDuration)
|
||||
if(response){
|
||||
ToastUtils.showShort("主动录包命令下发成功")
|
||||
}else{
|
||||
ToastUtils.showShort("主动录包命令下发失败")
|
||||
}
|
||||
clickListener?.closeWindow()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
fun showFloatWindow() {
|
||||
if (mFloatLayout.parent == null) {
|
||||
val metrics = DisplayMetrics()
|
||||
// 默认固定位置,靠屏幕右边缘的中间
|
||||
mWindowManager!!.defaultDisplay.getMetrics(metrics)
|
||||
mWindowParams!!.x = metrics.widthPixels-2257
|
||||
mWindowParams!!.y = metrics.heightPixels - BarUtils.getStatusBarHeight()-420
|
||||
mWindowManager!!.addView(mFloatLayout, mWindowParams)
|
||||
}
|
||||
}
|
||||
|
||||
fun hideFloatWindow() {
|
||||
if (mFloatLayout.parent != null){
|
||||
mWindowManager!!.removeView(mFloatLayout)
|
||||
}
|
||||
}
|
||||
|
||||
fun setClickListener(clickListener: ClickListener) {
|
||||
this.clickListener = clickListener
|
||||
}
|
||||
|
||||
interface ClickListener {
|
||||
fun closeWindow()
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,6 +1,5 @@
|
||||
package com.zhjt.mogo_core_function_devatools.workorder
|
||||
|
||||
|
||||
import android.annotation.SuppressLint
|
||||
import android.app.Activity
|
||||
import android.graphics.PixelFormat
|
||||
@@ -21,6 +20,7 @@ import android.widget.EditText
|
||||
import android.widget.ImageView
|
||||
import android.widget.TextView
|
||||
import androidx.appcompat.widget.AppCompatEditText
|
||||
import androidx.appcompat.widget.AppCompatTextView
|
||||
import androidx.constraintlayout.widget.Group
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import com.iflytek.cloud.ErrorCode
|
||||
@@ -43,7 +43,7 @@ import kotlin.math.absoluteValue
|
||||
/**
|
||||
* 接管原因编辑窗口
|
||||
*/
|
||||
class TakeOverReasonWindow constructor(activity: Activity) : View.OnTouchListener{
|
||||
class TakeOverReasonWindow constructor(activity: Activity) : View.OnTouchListener {
|
||||
|
||||
companion object{
|
||||
const val TAG = "TakeOverReasonWindow"
|
||||
@@ -71,21 +71,17 @@ class TakeOverReasonWindow constructor(activity: Activity) : View.OnTouchListene
|
||||
|
||||
private var clickListener: ClickListener? = null
|
||||
|
||||
private lateinit var tvTakeOverTitle: TextView
|
||||
private lateinit var tvTakeOverTime: TextView
|
||||
private lateinit var tvFaultType: TextView
|
||||
private lateinit var ivFaultTypeSelect: ImageView
|
||||
private lateinit var tvFaultReason: TextView
|
||||
private lateinit var ivFaultReasonSelect: ImageView
|
||||
private lateinit var ivTimeReduce: ImageView
|
||||
private lateinit var tvOccurrenceTime: TextView
|
||||
private lateinit var ivTimeAdd: ImageView
|
||||
private lateinit var tvTakeOverType: TextView
|
||||
private lateinit var ivTakeOverTypeSelect: ImageView
|
||||
private lateinit var tvTakeOverReason: TextView
|
||||
private lateinit var ivTakeOverReasonSelect: ImageView
|
||||
private lateinit var etNoteInput: AppCompatEditText
|
||||
private lateinit var ivNoteAudio: ImageView
|
||||
private lateinit var tvTakeOverReport: TextView
|
||||
private lateinit var tvTakeOverCancel: TextView
|
||||
private lateinit var rvFaultList: RecyclerView
|
||||
private lateinit var tvUploadSuccess: TextView
|
||||
private lateinit var rvTakeOverList: RecyclerView
|
||||
private lateinit var tvUploadSuccess: AppCompatTextView
|
||||
private lateinit var takeOverReasonGroup: Group
|
||||
|
||||
init {
|
||||
@@ -115,44 +111,27 @@ class TakeOverReasonWindow constructor(activity: Activity) : View.OnTouchListene
|
||||
}
|
||||
|
||||
private fun initView(){
|
||||
tvTakeOverTitle = mFloatLayout.findViewById(R.id.tvTakeOverTitle)
|
||||
tvTakeOverTime = mFloatLayout.findViewById(R.id.tvTakeOverTime)
|
||||
tvFaultType = mFloatLayout.findViewById(R.id.tvFaultType)
|
||||
ivFaultTypeSelect = mFloatLayout.findViewById(R.id.ivFaultTypeSelect)
|
||||
tvFaultReason = mFloatLayout.findViewById(R.id.tvFaultReason)
|
||||
ivFaultReasonSelect = mFloatLayout.findViewById(R.id.ivFaultReasonSelect)
|
||||
ivTimeReduce = mFloatLayout.findViewById(R.id.ivTimeReduce)
|
||||
tvOccurrenceTime = mFloatLayout.findViewById(R.id.tvOccurrenceTime)
|
||||
ivTimeAdd = mFloatLayout.findViewById(R.id.ivTimeAdd)
|
||||
tvTakeOverType = mFloatLayout.findViewById(R.id.tvTakeOverType)
|
||||
ivTakeOverTypeSelect = mFloatLayout.findViewById(R.id.ivTakeOverTypeSelect)
|
||||
tvTakeOverReason = mFloatLayout.findViewById(R.id.tvTakeOverReason)
|
||||
ivTakeOverReasonSelect = mFloatLayout.findViewById(R.id.ivTakeOverReasonSelect)
|
||||
etNoteInput = mFloatLayout.findViewById(R.id.etNoteInput)
|
||||
ivNoteAudio = mFloatLayout.findViewById(R.id.ivNoteAudio)
|
||||
tvTakeOverReport = mFloatLayout.findViewById(R.id.tvTakeOverReport)
|
||||
tvTakeOverCancel = mFloatLayout.findViewById(R.id.tvTakeOverCancel)
|
||||
rvFaultList = mFloatLayout.findViewById(R.id.rvFaultList)
|
||||
rvTakeOverList = mFloatLayout.findViewById(R.id.rvTakeOverList)
|
||||
tvUploadSuccess = mFloatLayout.findViewById(R.id.tvUploadSuccess)
|
||||
takeOverReasonGroup = mFloatLayout.findViewById(R.id.takeOverReasonGroup)
|
||||
}
|
||||
|
||||
|
||||
@OptIn(DelicateCoroutinesApi::class)
|
||||
@SuppressLint("SetTextI18n")
|
||||
private fun initEvent(){
|
||||
//弹窗展示时间
|
||||
tvTakeOverTime.text = mActivity.resources.getString(R.string.take_over_time) +
|
||||
millis2String(System.currentTimeMillis(), TimeUtils.getHourMinSecondFormat())
|
||||
//发生时间
|
||||
tvOccurrenceTime.text = millis2String(workOrderOccurrenceTime, TimeUtils.getHourMinFormat())
|
||||
ivTimeReduce.setOnClickListener {
|
||||
workOrderOccurrenceTime -= 60000
|
||||
tvOccurrenceTime.text = millis2String(workOrderOccurrenceTime, TimeUtils.getHourMinFormat())
|
||||
}
|
||||
ivTimeAdd.setOnClickListener {
|
||||
if(workOrderOccurrenceTime + 60000 > System.currentTimeMillis()){
|
||||
ToastUtils.showShort("发生时间应在当前时间之前")
|
||||
return@setOnClickListener
|
||||
}
|
||||
workOrderOccurrenceTime += 60000
|
||||
tvOccurrenceTime.text = millis2String(workOrderOccurrenceTime, TimeUtils.getHourMinFormat())
|
||||
}
|
||||
//补充描述
|
||||
etNoteInput.onFocusChangeListener = OnFocusChangeListener { v, hasFocus ->
|
||||
val edit = v as EditText
|
||||
@@ -187,9 +166,8 @@ class TakeOverReasonWindow constructor(activity: Activity) : View.OnTouchListene
|
||||
}
|
||||
//取消
|
||||
tvTakeOverCancel.setOnClickListener {
|
||||
clickListener?.closeWindow()
|
||||
hideFloatWindow()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private fun setAudio(status: Boolean){
|
||||
|
||||
@@ -28,6 +28,7 @@ class TakeOverRecordView @JvmOverloads constructor(
|
||||
}
|
||||
|
||||
private var takeOverListAdapter: TakeOverListAdapter ?= null
|
||||
private var clickListener: ClickListener? = null
|
||||
|
||||
init {
|
||||
LayoutInflater.from(context).inflate(R.layout.view_take_over_record, this, true)
|
||||
@@ -37,7 +38,7 @@ class TakeOverRecordView @JvmOverloads constructor(
|
||||
private fun initView(){
|
||||
//关闭窗口
|
||||
ivTakeOverRecordClose.setOnClickListener {
|
||||
|
||||
clickListener?.onClose()
|
||||
}
|
||||
takeOverListAdapter = TakeOverListAdapter()
|
||||
val linearLayoutManager = LinearLayoutManager(context)
|
||||
@@ -50,4 +51,12 @@ class TakeOverRecordView @JvmOverloads constructor(
|
||||
|
||||
}
|
||||
|
||||
fun setOnClickListener(clickListener: ClickListener) {
|
||||
this.clickListener = clickListener
|
||||
}
|
||||
|
||||
interface ClickListener {
|
||||
fun onClose()
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,8 +1,11 @@
|
||||
package com.zhjt.mogo_core_function_devatools.workorder
|
||||
|
||||
import android.content.Context
|
||||
import android.view.WindowManager
|
||||
import com.mogo.eagle.core.data.deva.report.WorkOrderReportInfo
|
||||
import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsListenerManager
|
||||
import com.zhjt.mogo_core_function_devatools.ext.enqueuePop
|
||||
import me.jessyan.autosize.utils.AutoSizeUtils
|
||||
|
||||
/**
|
||||
* @author XuXinChao
|
||||
@@ -20,11 +23,34 @@ class WorkOrderManager{
|
||||
|
||||
private var mContext: Context? = null
|
||||
private val workOrderNetWorkModel = WorkOrderNetWorkModel()
|
||||
private var hideFloat: (() -> Unit)? = null
|
||||
|
||||
fun init(context: Context){
|
||||
mContext = context
|
||||
}
|
||||
|
||||
/**
|
||||
* 展示接管记录页面
|
||||
*/
|
||||
fun showTakeOverRecordView(context: Context){
|
||||
val takeOverRecordView = TakeOverRecordView(context)
|
||||
takeOverRecordView.setOnClickListener(object: TakeOverRecordView.ClickListener{
|
||||
override fun onClose() {
|
||||
hideFloat?.invoke()
|
||||
hideFloat = null
|
||||
}
|
||||
|
||||
})
|
||||
context.enqueuePop(
|
||||
takeOverRecordView,
|
||||
AutoSizeUtils.dp2px(context, 960f),
|
||||
WindowManager.LayoutParams.MATCH_PARENT,
|
||||
key = "BadCaseManagerView"
|
||||
).also {
|
||||
hideFloat = it
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 工单上报
|
||||
*/
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 122 KiB After Width: | Height: | Size: 108 KiB |
@@ -48,7 +48,7 @@
|
||||
android:text="@string/report_type"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="@dimen/sp_32"
|
||||
android:layout_marginTop="@dimen/dp_30"
|
||||
android:layout_marginTop="@dimen/dp_50"
|
||||
/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
@@ -61,9 +61,9 @@
|
||||
android:textColor="@color/white"
|
||||
android:textSize="@dimen/sp_26"
|
||||
app:drawableTopCompat="@drawable/icon_type_fault"
|
||||
android:drawablePadding="@dimen/dp_12"
|
||||
android:layout_marginLeft="@dimen/dp_81"
|
||||
android:layout_marginTop="@dimen/dp_107"
|
||||
android:drawablePadding="@dimen/dp_3"
|
||||
android:layout_marginLeft="@dimen/dp_72"
|
||||
android:layout_marginTop="@dimen/dp_118"
|
||||
/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
@@ -76,9 +76,9 @@
|
||||
android:textColor="@color/white"
|
||||
android:textSize="@dimen/sp_26"
|
||||
app:drawableTopCompat="@drawable/icon_type_take_over"
|
||||
android:drawablePadding="@dimen/dp_12"
|
||||
android:layout_marginTop="@dimen/dp_107"
|
||||
android:layout_marginRight="@dimen/dp_81"
|
||||
android:drawablePadding="@dimen/dp_3"
|
||||
android:layout_marginTop="@dimen/dp_118"
|
||||
android:layout_marginRight="@dimen/dp_72"
|
||||
/>
|
||||
|
||||
<View
|
||||
@@ -97,7 +97,7 @@
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:constraint_referenced_ids="tvReportTypeTitle,tvReportTypeFault,tvReportTypeTakeOver,viewDivider"
|
||||
android:visibility="gone"
|
||||
android:visibility="visible"
|
||||
/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
@@ -113,6 +113,7 @@
|
||||
app:drawableTopCompat="@drawable/icon_report_success"
|
||||
android:layout_marginTop="@dimen/dp_59"
|
||||
android:drawablePadding="@dimen/dp_22"
|
||||
android:visibility="gone"
|
||||
/>
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="@dimen/dp_844"
|
||||
android:layout_height="@dimen/dp_991"
|
||||
android:layout_height="@dimen/dp_846"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:background="@drawable/bg_take_over_reason">
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
/>
|
||||
|
||||
<View
|
||||
android:id="@+id/viewFaultTypeLabel"
|
||||
android:id="@+id/viewTakeOverTypeLabel"
|
||||
android:layout_width="@dimen/dp_6"
|
||||
android:layout_height="@dimen/dp_29"
|
||||
android:background="#FF0176FF"
|
||||
@@ -55,18 +55,18 @@
|
||||
android:id="@+id/tvTypeTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/fault_type"
|
||||
android:text="@string/take_over_type"
|
||||
android:textSize="@dimen/sp_32"
|
||||
android:textColor="@color/white"
|
||||
android:textStyle="bold"
|
||||
app:layout_constraintTop_toTopOf="@id/viewFaultTypeLabel"
|
||||
app:layout_constraintBottom_toBottomOf="@id/viewFaultTypeLabel"
|
||||
app:layout_constraintLeft_toRightOf="@id/viewFaultTypeLabel"
|
||||
app:layout_constraintTop_toTopOf="@id/viewTakeOverTypeLabel"
|
||||
app:layout_constraintBottom_toBottomOf="@id/viewTakeOverTypeLabel"
|
||||
app:layout_constraintLeft_toRightOf="@id/viewTakeOverTypeLabel"
|
||||
android:layout_marginStart="@dimen/dp_14"
|
||||
/>
|
||||
|
||||
<View
|
||||
android:id="@+id/viewFaultType"
|
||||
android:id="@+id/viewTakeOverType"
|
||||
android:layout_width="@dimen/dp_781"
|
||||
android:layout_height="@dimen/dp_70"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
@@ -77,56 +77,56 @@
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvFaultType"
|
||||
android:id="@+id/tvTakeOverType"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintTop_toTopOf="@id/viewFaultType"
|
||||
app:layout_constraintBottom_toBottomOf="@id/viewFaultType"
|
||||
app:layout_constraintLeft_toLeftOf="@id/viewFaultType"
|
||||
app:layout_constraintTop_toTopOf="@id/viewTakeOverType"
|
||||
app:layout_constraintBottom_toBottomOf="@id/viewTakeOverType"
|
||||
app:layout_constraintLeft_toLeftOf="@id/viewTakeOverType"
|
||||
android:layout_marginLeft="@dimen/dp_21"
|
||||
android:textSize="@dimen/sp_30"
|
||||
android:textColor="@color/white"
|
||||
/>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/ivFaultTypeSelect"
|
||||
android:id="@+id/ivTakeOverTypeSelect"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintTop_toTopOf="@id/viewFaultType"
|
||||
app:layout_constraintBottom_toBottomOf="@id/viewFaultType"
|
||||
app:layout_constraintRight_toRightOf="@id/viewFaultType"
|
||||
app:layout_constraintTop_toTopOf="@id/viewTakeOverType"
|
||||
app:layout_constraintBottom_toBottomOf="@id/viewTakeOverType"
|
||||
app:layout_constraintRight_toRightOf="@id/viewTakeOverType"
|
||||
android:src="@drawable/icon_fault_expand"
|
||||
android:layout_marginRight="@dimen/dp_21"
|
||||
android:contentDescription="@string/fault_type_select"
|
||||
android:contentDescription="@string/take_over_type_select"
|
||||
/>
|
||||
|
||||
<View
|
||||
android:id="@+id/viewFaultReasonLabel"
|
||||
android:id="@+id/viewTakeOverReasonLabel"
|
||||
android:layout_width="@dimen/dp_6"
|
||||
android:layout_height="@dimen/dp_29"
|
||||
android:background="#FF0176FF"
|
||||
app:layout_constraintTop_toBottomOf="@id/viewFaultType"
|
||||
app:layout_constraintTop_toBottomOf="@id/viewTakeOverType"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
android:layout_marginStart="@dimen/dp_32"
|
||||
android:layout_marginTop="@dimen/dp_48"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvFaultReasonTitle"
|
||||
android:id="@+id/tvTakeOverReasonTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/fault_reason"
|
||||
android:text="@string/take_over_reason"
|
||||
android:textSize="@dimen/sp_32"
|
||||
android:textColor="@color/white"
|
||||
android:textStyle="bold"
|
||||
app:layout_constraintTop_toTopOf="@id/viewFaultReasonLabel"
|
||||
app:layout_constraintBottom_toBottomOf="@id/viewFaultReasonLabel"
|
||||
app:layout_constraintLeft_toRightOf="@id/viewFaultReasonLabel"
|
||||
app:layout_constraintTop_toTopOf="@id/viewTakeOverReasonLabel"
|
||||
app:layout_constraintBottom_toBottomOf="@id/viewTakeOverReasonLabel"
|
||||
app:layout_constraintLeft_toRightOf="@id/viewTakeOverReasonLabel"
|
||||
android:layout_marginStart="@dimen/dp_14"
|
||||
/>
|
||||
|
||||
<View
|
||||
android:id="@+id/viewFaultReason"
|
||||
android:id="@+id/viewTakeOverReason"
|
||||
android:layout_width="@dimen/dp_781"
|
||||
android:layout_height="@dimen/dp_70"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
@@ -137,121 +137,61 @@
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvFaultReason"
|
||||
android:id="@+id/tvTakeOverReason"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintTop_toTopOf="@id/viewFaultReason"
|
||||
app:layout_constraintBottom_toBottomOf="@id/viewFaultReason"
|
||||
app:layout_constraintLeft_toLeftOf="@id/viewFaultReason"
|
||||
app:layout_constraintTop_toTopOf="@id/viewTakeOverReason"
|
||||
app:layout_constraintBottom_toBottomOf="@id/viewTakeOverReason"
|
||||
app:layout_constraintLeft_toLeftOf="@id/viewTakeOverReason"
|
||||
android:layout_marginLeft="@dimen/dp_21"
|
||||
android:textSize="@dimen/sp_30"
|
||||
android:textColor="@color/white"
|
||||
/>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/ivFaultReasonSelect"
|
||||
android:id="@+id/ivTakeOverReasonSelect"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintTop_toTopOf="@id/viewFaultReason"
|
||||
app:layout_constraintBottom_toBottomOf="@id/viewFaultReason"
|
||||
app:layout_constraintRight_toRightOf="@id/viewFaultReason"
|
||||
app:layout_constraintTop_toTopOf="@id/viewTakeOverReason"
|
||||
app:layout_constraintBottom_toBottomOf="@id/viewTakeOverReason"
|
||||
app:layout_constraintRight_toRightOf="@id/viewTakeOverReason"
|
||||
android:src="@drawable/icon_fault_expand"
|
||||
android:layout_marginRight="@dimen/dp_21"
|
||||
android:contentDescription="@string/fault_type_select"
|
||||
/>
|
||||
|
||||
<View
|
||||
android:id="@+id/viewFaultTimeLabel"
|
||||
android:id="@+id/viewTakeOverNoteLabel"
|
||||
android:layout_width="@dimen/dp_6"
|
||||
android:layout_height="@dimen/dp_29"
|
||||
android:background="#FF0176FF"
|
||||
app:layout_constraintTop_toBottomOf="@id/viewFaultReason"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
android:layout_marginStart="@dimen/dp_32"
|
||||
android:layout_marginTop="@dimen/dp_48"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvFaultTimeTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/fault_time"
|
||||
android:textSize="@dimen/sp_32"
|
||||
android:textColor="@color/white"
|
||||
android:textStyle="bold"
|
||||
app:layout_constraintTop_toTopOf="@id/viewFaultTimeLabel"
|
||||
app:layout_constraintBottom_toBottomOf="@id/viewFaultTimeLabel"
|
||||
app:layout_constraintLeft_toRightOf="@id/viewFaultTimeLabel"
|
||||
android:layout_marginStart="@dimen/dp_14"
|
||||
/>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/ivTimeReduce"
|
||||
android:layout_width="@dimen/dp_72"
|
||||
android:layout_height="@dimen/dp_72"
|
||||
android:src="@drawable/icon_work_order_reduce"
|
||||
app:layout_constraintLeft_toLeftOf="@id/viewFaultTimeLabel"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvFaultTimeTitle"
|
||||
android:layout_marginTop="@dimen/dp_17"
|
||||
android:contentDescription="@string/fault_time_reduce"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvOccurrenceTime"
|
||||
android:layout_width="@dimen/dp_150"
|
||||
android:layout_height="@dimen/dp_72"
|
||||
android:textSize="@dimen/sp_30"
|
||||
android:textColor="@color/white"
|
||||
android:gravity="center"
|
||||
android:background="#1AA7B6F0"
|
||||
app:layout_constraintTop_toTopOf="@id/ivTimeReduce"
|
||||
app:layout_constraintBottom_toBottomOf="@id/ivTimeReduce"
|
||||
app:layout_constraintStart_toEndOf="@id/ivTimeReduce"
|
||||
/>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/ivTimeAdd"
|
||||
android:layout_width="@dimen/dp_72"
|
||||
android:layout_height="@dimen/dp_72"
|
||||
android:src="@drawable/icon_work_order_add"
|
||||
app:layout_constraintTop_toTopOf="@id/tvOccurrenceTime"
|
||||
app:layout_constraintBottom_toBottomOf="@id/tvOccurrenceTime"
|
||||
app:layout_constraintStart_toEndOf="@id/tvOccurrenceTime"
|
||||
android:contentDescription="@string/fault_time_add"
|
||||
/>
|
||||
|
||||
<View
|
||||
android:id="@+id/viewFaultNoteLabel"
|
||||
android:layout_width="@dimen/dp_6"
|
||||
android:layout_height="@dimen/dp_29"
|
||||
android:background="#FF0176FF"
|
||||
app:layout_constraintTop_toBottomOf="@id/ivTimeReduce"
|
||||
app:layout_constraintTop_toBottomOf="@id/viewTakeOverReason"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
android:layout_marginStart="@dimen/dp_32"
|
||||
android:layout_marginTop="@dimen/dp_47"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvFaultNoteTitle"
|
||||
android:id="@+id/tvTakeOverNoteTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/fault_note"
|
||||
android:textSize="@dimen/sp_32"
|
||||
android:textColor="@color/white"
|
||||
android:textStyle="bold"
|
||||
app:layout_constraintTop_toTopOf="@id/viewFaultNoteLabel"
|
||||
app:layout_constraintBottom_toBottomOf="@id/viewFaultNoteLabel"
|
||||
app:layout_constraintLeft_toRightOf="@id/viewFaultNoteLabel"
|
||||
app:layout_constraintTop_toTopOf="@id/viewTakeOverNoteLabel"
|
||||
app:layout_constraintBottom_toBottomOf="@id/viewTakeOverNoteLabel"
|
||||
app:layout_constraintLeft_toRightOf="@id/viewTakeOverNoteLabel"
|
||||
android:layout_marginStart="@dimen/dp_14"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvFaultNoteSupplement"
|
||||
android:id="@+id/tvTakeOverNoteSupplement"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintTop_toTopOf="@id/tvFaultNoteTitle"
|
||||
app:layout_constraintBottom_toBottomOf="@id/tvFaultNoteTitle"
|
||||
app:layout_constraintLeft_toRightOf="@id/tvFaultNoteTitle"
|
||||
app:layout_constraintTop_toTopOf="@id/tvTakeOverNoteTitle"
|
||||
app:layout_constraintBottom_toBottomOf="@id/tvTakeOverNoteTitle"
|
||||
app:layout_constraintLeft_toRightOf="@id/tvTakeOverNoteTitle"
|
||||
android:text="@string/fault_note_supplement"
|
||||
android:textSize="@dimen/sp_30"
|
||||
android:textColor="#A3ABC0"
|
||||
@@ -261,7 +201,7 @@
|
||||
android:id="@+id/etNoteInput"
|
||||
android:layout_width="@dimen/dp_779"
|
||||
android:layout_height="@dimen/dp_115"
|
||||
app:layout_constraintTop_toBottomOf="@id/viewFaultNoteLabel"
|
||||
app:layout_constraintTop_toBottomOf="@id/viewTakeOverNoteLabel"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
android:hint="@string/take_over_note_input"
|
||||
@@ -322,12 +262,12 @@
|
||||
/>
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/rvFaultList"
|
||||
android:id="@+id/rvTakeOverList"
|
||||
android:layout_width="@dimen/dp_0"
|
||||
android:layout_height="@dimen/dp_0"
|
||||
app:layout_constraintLeft_toLeftOf="@id/viewFaultType"
|
||||
app:layout_constraintRight_toRightOf="@id/viewFaultType"
|
||||
app:layout_constraintTop_toBottomOf="@id/viewFaultType"
|
||||
app:layout_constraintLeft_toLeftOf="@id/viewTakeOverType"
|
||||
app:layout_constraintRight_toRightOf="@id/viewTakeOverType"
|
||||
app:layout_constraintTop_toBottomOf="@id/viewTakeOverType"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:layout_marginBottom="@dimen/dp_39"
|
||||
android:visibility="gone"
|
||||
@@ -353,11 +293,12 @@
|
||||
android:id="@+id/takeOverReasonGroup"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:constraint_referenced_ids="viewFaultTypeLabel,tvTypeTitle,viewFaultType,tvFaultType,
|
||||
ivFaultTypeSelect,viewFaultReasonLabel,tvFaultReasonTitle,viewFaultReason,tvFaultReason,
|
||||
ivFaultReasonSelect,viewFaultTimeLabel,tvFaultTimeTitle,ivTimeReduce,tvOccurrenceTime,
|
||||
ivTimeAdd,viewFaultNoteLabel,tvFaultNoteTitle,tvFaultNoteSupplement,etNoteInput,
|
||||
ivNoteAudio,tvTakeOverReport,tvTakeOverCancel,rvFaultList"
|
||||
app:constraint_referenced_ids="viewTakeOverTypeLabel,tvTypeTitle,viewTakeOverType,
|
||||
tvTakeOverType,ivTakeOverTypeSelect,viewTakeOverReasonLabel,tvTakeOverReasonTitle,
|
||||
viewTakeOverReason,tvTakeOverReason,ivTakeOverReasonSelect,viewTakeOverNoteLabel,
|
||||
tvTakeOverNoteTitle,tvTakeOverNoteSupplement,etNoteInput,ivNoteAudio,
|
||||
tvTakeOverReport,tvTakeOverCancel,rvTakeOverList"
|
||||
/>
|
||||
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
@@ -33,11 +33,11 @@
|
||||
<string name="exam_emergency_stop">应急停车</string>
|
||||
<string name="exam_close">关闭考试车辆控制</string>
|
||||
|
||||
<string name="identified_vehicle_malfunction">识别到车辆故障%d</string>
|
||||
<string name="identified_vehicle_malfunction">识别到车辆故障(%ds)</string>
|
||||
<string name="one_click_report">一键上报</string>
|
||||
<string name="report_type">上报类型</string>
|
||||
<string name="report_type_fault">故障类</string>
|
||||
<string name="report_type_take_over">接管类</string>
|
||||
<string name="report_type_take_over">主动录包</string>
|
||||
<string name="report_success">已发起上报</string>
|
||||
<string name="record_success">已发起录包</string>
|
||||
<string name="take_over_record_close">接管记录关闭按钮</string>
|
||||
@@ -45,13 +45,16 @@
|
||||
<string name="take_over_record_upload">一键上传</string>
|
||||
<string name="take_over_record_delete">删除</string>
|
||||
<string name="take_over_record_status_label">接管记录状态标签</string>
|
||||
<string name="take_over_reason">故障原因</string>
|
||||
<string name="take_over_reason">接管原因</string>
|
||||
<string name="take_over_time">时间:</string>
|
||||
<string name="take_over_type_select">接管类型选择</string>
|
||||
<string name="take_over_type">接管类型</string>
|
||||
<string name="fault_type">故障类型</string>
|
||||
<string name="fault_type_select">故障类型选择</string>
|
||||
<string name="fault_reason">故障原因</string>
|
||||
<string name="fault_reason_select">故障原因选择</string>
|
||||
<string name="fault_time">发生时间</string>
|
||||
<string name="fault_open_time">时间:</string>
|
||||
<string name="fault_time_reduce">发生时间前溯</string>
|
||||
<string name="fault_time_add">发生时间后置</string>
|
||||
<string name="fault_note">补充描述</string>
|
||||
|
||||
@@ -58,6 +58,14 @@ class ToolsView private constructor() {
|
||||
dismissToolsFloatView()
|
||||
CallerDevaToolsManager.showBadCaseManagerView(it)
|
||||
}
|
||||
|
||||
/**
|
||||
* 展示接管记录页面
|
||||
*/
|
||||
override fun showTakeOverRecordView() {
|
||||
dismissToolsFloatView()
|
||||
CallerDevaToolsManager.showTakeOverRecordView(it)
|
||||
}
|
||||
})
|
||||
}
|
||||
toolsViewFloat = WarningFloat.with(it)
|
||||
|
||||
@@ -10,6 +10,7 @@ import android.util.AttributeSet
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.widget.FrameLayout
|
||||
import com.mogo.commons.env.ProjectUtils
|
||||
import com.mogo.eagle.core.data.app.AppConfigInfo
|
||||
import com.mogo.eagle.core.data.deva.bindingcar.IPCUpgradeStateInfo
|
||||
import com.mogo.eagle.core.data.deva.bizconfig.FuncBizConfig
|
||||
@@ -144,7 +145,13 @@ internal class AutoPilotAndCheckView @JvmOverloads constructor(
|
||||
ivDebugPanel.setOnClickListener {
|
||||
clickListener?.showDebugPanelView()
|
||||
}
|
||||
|
||||
//接管记录
|
||||
if(ProjectUtils.isSaas()){
|
||||
takeOverRecordLayout.visibility = View.VISIBLE
|
||||
takeOverRecordLayout.setOnClickListener {
|
||||
clickListener?.showTakeOverRecordView()
|
||||
}
|
||||
}
|
||||
if (AppConfigInfo.isConnectAutopilot) {
|
||||
CallerAutoPilotControlManager.getCarConfig()
|
||||
}
|
||||
@@ -300,6 +307,7 @@ internal class AutoPilotAndCheckView @JvmOverloads constructor(
|
||||
fun showFeedbackView()
|
||||
fun showSOPSettingView()
|
||||
fun showBadCaseManagerView()
|
||||
fun showTakeOverRecordView()
|
||||
}
|
||||
|
||||
override fun onAutopilotCarConfig(carConfigResp: MessagePad.CarConfigResp) {
|
||||
|
||||
@@ -159,6 +159,7 @@
|
||||
android:layout_height="150dp"
|
||||
android:layout_centerHorizontal="true"
|
||||
android:background="@drawable/debug_icon_bag_manager"
|
||||
android:contentDescription="@string/debug_bad_case"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
@@ -180,6 +181,36 @@
|
||||
app:layout_constraintLeft_toRightOf="@id/sopLayout"
|
||||
app:layout_constraintTop_toTopOf="@id/sopLayout" />
|
||||
|
||||
<RelativeLayout
|
||||
android:id="@+id/takeOverRecordLayout"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="@dimen/dp_216"
|
||||
app:layout_constraintLeft_toLeftOf="@id/checkSystemView"
|
||||
app:layout_constraintTop_toBottomOf="@id/checkSystemView"
|
||||
android:layout_marginTop="@dimen/dp_90"
|
||||
android:layout_marginStart="@dimen/dp_142"
|
||||
android:visibility="gone"
|
||||
>
|
||||
|
||||
<ImageView
|
||||
android:layout_width="@dimen/dp_150"
|
||||
android:layout_height="@dimen/dp_150"
|
||||
android:layout_centerHorizontal="true"
|
||||
android:background="@drawable/icon_take_over_record"
|
||||
android:contentDescription="@string/take_over_record"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="@dimen/dp_42"
|
||||
android:layout_alignParentBottom="true"
|
||||
android:layout_centerHorizontal="true"
|
||||
android:text="@string/take_over_record"
|
||||
android:textColor="@color/color_FFA7B6F0"
|
||||
android:textSize="@dimen/sp_32" />
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_check_title"
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
<string name="debug_panel_fb">录包设置</string>
|
||||
<string name="debug_sop">运营面板</string>
|
||||
<string name="debug_bad_case">录包</string>
|
||||
<string name="take_over_record">接管记录</string>
|
||||
<string name="debug_bad_case_manager">录包管理</string>
|
||||
<string name="debug_bad_case_report">上报</string>
|
||||
<string name="check_vehicle_speed_setting">车速设置</string>
|
||||
|
||||
@@ -142,6 +142,11 @@ interface IDevaToolsProvider : IProvider {
|
||||
*/
|
||||
fun showBadCaseManagerView(context: Context)
|
||||
|
||||
/**
|
||||
* 展示接管记录页面
|
||||
*/
|
||||
fun showTakeOverRecordView(context: Context)
|
||||
|
||||
/**
|
||||
* 启动调用SSM停服命令超时检测
|
||||
*/
|
||||
|
||||
@@ -256,36 +256,26 @@ object CallerAutoPilotControlManager {
|
||||
}
|
||||
|
||||
fun recordPackage(type: Int, id: Int) {
|
||||
if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) {
|
||||
providerApi?.recordPackage(type, id)
|
||||
}
|
||||
providerApi?.recordPackage(type, id)
|
||||
}
|
||||
|
||||
fun recordPackage(type: Int, id: Int, duration: Int) {
|
||||
if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) {
|
||||
providerApi?.recordPackage(type, id, duration)
|
||||
}
|
||||
providerApi?.recordPackage(type, id, duration)
|
||||
}
|
||||
|
||||
fun recordPackage(type: Int, id: Int, duration: Int, bduration: Int) {
|
||||
if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) {
|
||||
providerApi?.recordPackage(type, id, duration, bduration)
|
||||
}
|
||||
fun recordPackage(type: Int, id: Int, duration: Int, bduration: Int): Boolean{
|
||||
return providerApi?.recordPackage(type, id, duration, bduration) == true
|
||||
}
|
||||
|
||||
fun recordPackage(type: Int, id: Int, duration: Int, bduration: Int, topics: List<String>) {
|
||||
if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) {
|
||||
providerApi?.recordPackage(type, id, duration, bduration, topics)
|
||||
}
|
||||
providerApi?.recordPackage(type, id, duration, bduration, topics)
|
||||
}
|
||||
|
||||
/**
|
||||
* 停止录制bag包
|
||||
*/
|
||||
fun stopRecord(type: Int, id: Int) {
|
||||
if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) {
|
||||
providerApi?.stopRecord(type, id)
|
||||
}
|
||||
providerApi?.stopRecord(type, id)
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -192,6 +192,13 @@ object CallerDevaToolsManager {
|
||||
devaToolsProviderApi?.showBadCaseManagerView(context)
|
||||
}
|
||||
|
||||
/**
|
||||
* 展示接管记录页面
|
||||
*/
|
||||
fun showTakeOverRecordView(context: Context){
|
||||
devaToolsProviderApi?.showTakeOverRecordView(context)
|
||||
}
|
||||
|
||||
/**
|
||||
* 启动调用SSM停服命令超时检测
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user