From b2176283d693e6e5069a5ea962e9bd79bfc794c1 Mon Sep 17 00:00:00 2001 From: aibingbing Date: Fri, 20 Sep 2024 19:31:02 +0800 Subject: [PATCH] =?UTF-8?q?[6.7.0][=E5=B7=A5=E5=85=B7=E7=AE=B1]=20feat:=20?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=B7=A5=E5=85=B7=E7=AE=B1=E9=87=8Citem=20?= =?UTF-8?q?=E8=B0=83=E8=AF=95=E9=9D=A2=E6=9D=BF=20/=20=E8=BF=90=E8=90=A5?= =?UTF-8?q?=E9=9D=A2=E6=9D=BF=20/=20=E6=8E=A5=E7=AE=A1=E8=AE=B0=E5=BD=95?= =?UTF-8?q?=20/=20=E6=9D=80=E6=AD=BB=20APP=20/=20=E4=B8=8A=E6=8A=A5=20?= =?UTF-8?q?=E7=82=B9=E5=87=BB=E5=93=8D=E5=BA=94=EF=BC=8C=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=20=E9=87=8D=E5=90=AF=E7=B3=BB=E7=BB=9F=20/=20=E4=B8=80?= =?UTF-8?q?=E9=94=AE=E5=81=9C=E6=9C=8D=E7=9A=84=E8=87=AA=E5=AE=9A=E4=B9=89?= =?UTF-8?q?=E6=8C=89=E9=92=AE=E5=8F=8A=E9=80=BB=E8=BE=91=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hmi/bone/toolkit/ToolKitDataManager.kt | 110 ++++- .../hmi/bone/toolkit/ToolKitListAdapter.kt | 12 +- .../toolkit/custom/ToolRestartSystemView.kt | 103 +++++ .../toolkit/custom/ToolStopServiceView.kt | 431 ++++++++++++++++++ .../icon_toolkit_item_ai_report.png | Bin 0 -> 19802 bytes ...n_toolkit_item_stop_service_background.png | Bin 0 -> 23283 bytes ...con_toolkit_item_stop_service_complete.png | Bin 0 -> 19573 bytes .../icon_toolkit_item_stop_service_fail.png | Bin 0 -> 23447 bytes ...icon_toolkit_item_stop_service_process.png | Bin 0 -> 1681 bytes ...t_item_stop_service_process_background.png | Bin 0 -> 297 bytes ...icon_toolkit_item_stop_service_success.png | Bin 0 -> 23786 bytes .../main/res/layout/view_tool_kit_item.xml | 3 +- .../res/layout/view_tool_kit_item_default.xml | 2 +- .../res/layout/view_tool_restart_system.xml | 36 ++ .../res/layout/view_tool_stop_service.xml | 86 ++++ .../api/och/IToolKitItemClickListener.kt | 4 +- 16 files changed, 769 insertions(+), 18 deletions(-) create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/custom/ToolRestartSystemView.kt create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/custom/ToolStopServiceView.kt create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_ai_report.png create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_stop_service_background.png create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_stop_service_complete.png create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_stop_service_fail.png create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_stop_service_process.png create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_stop_service_process_background.png create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_stop_service_success.png create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_tool_restart_system.xml create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_tool_stop_service.xml diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/ToolKitDataManager.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/ToolKitDataManager.kt index dbcdd93fe3..8b2d385855 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/ToolKitDataManager.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/ToolKitDataManager.kt @@ -1,13 +1,27 @@ package com.mogo.eagle.core.function.hmi.bone.toolkit import android.content.Context +import android.content.Intent +import android.os.Process import android.view.View +import androidx.fragment.app.FragmentActivity +import com.mogo.commons.env.ProjectUtils import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.function.api.och.IToolKitItemClickListener +import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager import com.mogo.eagle.core.function.hmi.R +import com.mogo.eagle.core.function.hmi.bone.toolkit.custom.ToolRestartSystemView +import com.mogo.eagle.core.function.hmi.bone.toolkit.custom.ToolStopServiceView +import com.mogo.eagle.core.function.hmi.ui.setting.SopView +import com.mogo.eagle.core.function.hmi.ui.setting.ToggleDebugView import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils +import com.mogo.eagle.core.utilcode.util.ActivityUtils +import com.mogo.eagle.core.utilcode.util.NetworkUtils import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.zhjt.mogo_core_function_devatools.badcase.biz.AIDataCollectWindow +import com.zhjt.mogo_core_function_devatools.badcase.consts.BadCaseConfig import java.util.concurrent.ConcurrentHashMap +import kotlin.system.exitProcess object ToolKitDataManager : IToolKitItemClickListener { const val TAG = "ToolKitDataManager" @@ -19,7 +33,8 @@ object ToolKitDataManager : IToolKitItemClickListener { TAKE_OVER_HISTORY, //接管记录 KILL_APP, //杀死 APP RESTART_SYSTEM, //重启系统 - STOP_SERVICE //停止服务 + STOP_SERVICE, //停止服务 + AI_REPORT //AI数据采集 } private val listeners by lazy { ConcurrentHashMap() } @@ -37,9 +52,9 @@ object ToolKitDataManager : IToolKitItemClickListener { listeners.remove(tag) } - fun invokeItemClick(toolTag: String) { + fun invokeItemClick(toolTag: String, ctx: Context?) { listeners.values.forEach { itx -> - itx.onItemClick(toolTag) + itx.onItemClick(toolTag, ctx) } } @@ -57,21 +72,31 @@ object ToolKitDataManager : IToolKitItemClickListener { ToolTypeEnum.OPERATION_PANEL.name, getDefaultItemView(ctx, "运营面板", R.drawable.icon_toolkit_item_operation_panel) ) - it += ToolKitBean( - ToolTypeEnum.TAKE_OVER_HISTORY.name, - getDefaultItemView(ctx, "接管记录", R.drawable.icon_toolkit_item_take_over_history) - ) + if (ProjectUtils.isSaas()) { + it += ToolKitBean( + ToolTypeEnum.TAKE_OVER_HISTORY.name, + getDefaultItemView( + ctx, + "接管记录", + R.drawable.icon_toolkit_item_take_over_history + ) + ) + } it += ToolKitBean( ToolTypeEnum.KILL_APP.name, getDefaultItemView(ctx, "杀死APP", R.drawable.icon_toolkit_item_kill_app) ) it += ToolKitBean( ToolTypeEnum.RESTART_SYSTEM.name, - getDefaultItemView(ctx, "重启系统", R.drawable.icon_toolkit_item_restart_system) + getRestartSystemItemView(ctx) ) it += ToolKitBean( ToolTypeEnum.STOP_SERVICE.name, - getDefaultItemView(ctx, "停止服务", R.drawable.icon_toolkit_item_stop_service) + getStopServiceItemView(ctx) + ) + it += ToolKitBean( + ToolTypeEnum.AI_REPORT.name, + getDefaultItemView(ctx, "上报", R.drawable.icon_toolkit_item_ai_report) ) } addListener(TAG, this) @@ -94,10 +119,71 @@ object ToolKitDataManager : IToolKitItemClickListener { } } - override fun onItemClick(toolTag: String) { - ToastUtils.showShort(toolTag) - when (toolTag) { + /** + * 一件停服 自定义view + */ + private fun getStopServiceItemView(context: Context): View { + return ToolStopServiceView(context) + } + /** + * 重启系统 自定义view + */ + private fun getRestartSystemItemView(context: Context): View { + return ToolRestartSystemView(context) + } + + override fun onItemClick(toolTag: String, ctx: Context?) { + //ToastUtils.showShort(toolTag) + when (toolTag) { + ToolTypeEnum.DEBUG_PANEL.name -> { + ctx?.also { + ToggleDebugView.toggleDebugView.toggle(it) + } + } + + ToolTypeEnum.OPERATION_PANEL.name -> { + ctx?.also { + SopView.sopView.toggle(it) + } + } + + ToolTypeEnum.TAKE_OVER_HISTORY.name -> { + ctx?.also { + CallerDevaToolsManager.showTakeOverRecordView(it) + } + } + + ToolTypeEnum.KILL_APP.name -> { + Intent(Intent.ACTION_MAIN).apply { + addCategory(Intent.CATEGORY_HOME) + flags = Intent.FLAG_ACTIVITY_NEW_TASK + ActivityUtils.startActivity(this) + Process.killProcess(Process.myPid()) + exitProcess(0) + } + } + + ToolTypeEnum.AI_REPORT.name -> { + (ctx as? FragmentActivity)?.also { + if (NetworkUtils.isConnected()) { + if (BadCaseConfig.dockerVersion != null) { + val aiDataCollectWindow = AIDataCollectWindow(it) + aiDataCollectWindow.setClickListener(object : + AIDataCollectWindow.ClickListener { + override fun closeWindow() { + aiDataCollectWindow.hideFloatWindow() + } + }) + aiDataCollectWindow.showFloatWindow() + } else { + ToastUtils.showShort("工控机连接状态异常") + } + } else { + ToastUtils.showShort("网络异常,请检查网络") + } + } + } } } } \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/ToolKitListAdapter.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/ToolKitListAdapter.kt index 1b19a95420..8a8485baec 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/ToolKitListAdapter.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/ToolKitListAdapter.kt @@ -6,6 +6,7 @@ import android.view.ViewGroup import android.widget.FrameLayout import androidx.recyclerview.widget.RecyclerView import com.mogo.eagle.core.function.hmi.R +import com.mogo.eagle.core.utilcode.mogo.view.OnPreventFastClickListener class ToolKitListAdapter(var items: List) : RecyclerView.Adapter() { @@ -31,9 +32,14 @@ class ToolKitListAdapter(var items: List) : (it.parent as ViewGroup).removeView(it) } holder.containerView.addView(it) - it.setOnClickListener { - ToolKitDataManager.invokeItemClick(data.toolTag) - } + it.setOnClickListener(object : OnPreventFastClickListener(500L) { + override fun onClickImpl(v: View?) { + ToolKitDataManager.invokeItemClick( + data.toolTag, + holder.itemView.context + ) + } + }) } } } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/custom/ToolRestartSystemView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/custom/ToolRestartSystemView.kt new file mode 100644 index 0000000000..5eac10a8d1 --- /dev/null +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/custom/ToolRestartSystemView.kt @@ -0,0 +1,103 @@ +package com.mogo.eagle.core.function.hmi.bone.toolkit.custom + +import android.content.Context +import android.util.AttributeSet +import android.view.LayoutInflater +import androidx.constraintlayout.widget.ConstraintLayout +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.hmi.R +import com.mogo.eagle.core.function.hmi.ui.tools.DockerRebootDialog +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger +import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_HMI +import com.mogo.eagle.core.utilcode.util.ThreadUtils +import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.zhjt.mogo.adas.data.AdasConstants +import kotlinx.android.synthetic.main.view_tool_restart_system.view.containerView + +class ToolRestartSystemView @JvmOverloads constructor( + context: Context, + attrs: AttributeSet? = null, + defStyleAttr: Int = 0 +) : ConstraintLayout(context, attrs, defStyleAttr), IMoGoAutopilotStatusListener { + + companion object { + const val TAG = "ToolRestartSystemView" + } + + //重启系统对话框 + private var dockerRebootDialog: DockerRebootDialog? = null + private var connectStatus: Boolean = false //与工控机的连接状态 + + init { + LayoutInflater.from(context).inflate(R.layout.view_tool_restart_system, this, true) + initView() + } + + private fun initView() { + //重启系统 + containerView.setOnClickListener { + showRebootDialog() + } + } + + /** + * 展示系统重启确认窗 + */ + private fun showRebootDialog() { + if (!connectStatus) { + ToastUtils.showShort("尚未连接工控机,无法重启系统") + return + } + //dialog + if (dockerRebootDialog == null) { + dockerRebootDialog = DockerRebootDialog(context) + dockerRebootDialog?.setClickListener(object : DockerRebootDialog.ClickListener { + override fun confirm() { + if (CallerAutoPilotStatusListenerManager.getState() == 2) { + //当前处于自动驾驶状态,不可进行重启,Toast提示 + ToastUtils.showShort("请先退出自动驾驶状态") + } else { + //确认重启 + CallerLogger.d("$M_HMI$TAG", "reboot confirm") + CallerAutoPilotControlManager.sendIpcReboot() + ToastUtils.showLong("重启命令已发送") + } + } + + override fun cancel() { + //取消重启 + CallerLogger.d("$M_HMI$TAG", "reboot cancel") + } + + }) + } + dockerRebootDialog?.showUpgradeDialog() + } + + override fun onAttachedToWindow() { + super.onAttachedToWindow() + CallerAutoPilotStatusListenerManager.addListener(TAG, this) + } + + override fun onDetachedFromWindow() { + super.onDetachedFromWindow() + CallerAutoPilotStatusListenerManager.removeListener(TAG) + } + + override fun onAutopilotIpcConnectStatusChanged( + status: AdasConstants.IpcConnectionStatus, + reason: String? + ) { + super.onAutopilotIpcConnectStatusChanged(status, reason) + ThreadUtils.runOnUiThread { + setViewStatus(status == AdasConstants.IpcConnectionStatus.CONNECTED) + } + } + + private fun setViewStatus(connectInfo: Boolean) { + connectStatus = connectInfo + } + +} \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/custom/ToolStopServiceView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/custom/ToolStopServiceView.kt new file mode 100644 index 0000000000..8517775463 --- /dev/null +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/custom/ToolStopServiceView.kt @@ -0,0 +1,431 @@ +package com.mogo.eagle.core.function.hmi.bone.toolkit.custom + +import android.animation.ObjectAnimator +import android.animation.ValueAnimator +import android.content.Context +import android.util.AttributeSet +import android.view.LayoutInflater +import android.view.View +import android.view.animation.LinearInterpolator +import androidx.constraintlayout.widget.ConstraintLayout +import androidx.core.content.ContextCompat +import com.mogo.commons.voice.AIAssist +import com.mogo.eagle.core.data.app.AppConfigInfo +import com.mogo.eagle.core.data.enums.EventTypeEnumNew +import com.mogo.eagle.core.data.msgbox.MsgBoxBean +import com.mogo.eagle.core.data.msgbox.MsgBoxType +import com.mogo.eagle.core.data.msgbox.V2XMsg +import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener +import com.mogo.eagle.core.function.api.autopilot.IMoGoReceiveReceivedAckListener +import com.mogo.eagle.core.function.api.devatools.IPowerOffListener +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.CallerReceiveReceivedAckListenerManager +import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager +import com.mogo.eagle.core.function.call.devatools.CallerPowerOffManager +import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxManager.saveMsgBox +import com.mogo.eagle.core.function.hmi.R +import com.mogo.eagle.core.function.hmi.ui.utils.HmiActionLog.Companion.hmiAction +import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_HMI +import com.mogo.eagle.core.utilcode.util.ParseVersionUtils +import com.mogo.eagle.core.utilcode.util.ThreadUtils +import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.zhjt.mogo.adas.common.MessageType +import com.zhjt.mogo.adas.data.AdasConstants +import com.zhjt.mogo.adas.data.bean.ReceivedAck +import kotlinx.android.synthetic.main.view_tool_stop_service.view.tvCheckShutDown +import kotlinx.android.synthetic.main.view_tool_stop_service.view.tvCountDown +import kotlinx.android.synthetic.main.view_tool_stop_service.view.tvCountDownUnit +import kotlinx.android.synthetic.main.view_tool_stop_service.view.viewCheckShutDown +import kotlinx.android.synthetic.main.view_tool_stop_service.view.viewProgress +import kotlinx.android.synthetic.main.view_tool_stop_service.view.viewProgressBackground + + +class ToolStopServiceView @JvmOverloads constructor( + context: Context, + attrs: AttributeSet? = null, + defStyleAttr: Int = 0 +) : ConstraintLayout(context, attrs, defStyleAttr), IMoGoAutopilotStatusListener, + IPowerOffListener, IMoGoReceiveReceivedAckListener { + + companion object { + const val TAG = "ToolStopServiceView" + } + + //重启系统对话框 + private var connectStatus: Boolean = false //与工控机的连接状态 + private var isExecutingPowerOff: Boolean = false //是否正在下发一键停服命令 + private var isPowerOffCountDown: Boolean = false //一键停服是否处于1分钟倒计时 + private var powerOffMsgId: Long = -1 //一键停服命令下发Id + private var progressAnimator: ObjectAnimator? = null //一键停服命令倒计时 + + /** + * 停止域控服务状态 + * 0:准备停服 1:停服命令下发中 2:停服命令下发成功 3:停服命令下发失败 + * 4:停服命令下发超时 5:停服中 6:停服成功 7:停服成功不可点击 + */ + private var powerOffStatus: Int = 0 + + init { + LayoutInflater.from(context).inflate(R.layout.view_tool_stop_service, this, true) + initView() + } + + private fun initView() { + //一键停服 + viewCheckShutDown.setOnClickListener { + powerOff() + } + tvCheckShutDown.setOnClickListener { + powerOff() + } + CallerDevaToolsManager.getPowerOffStatus()?.let { + powerOffStatus = it + } + when (powerOffStatus) { + //准备停服 + 0 -> { + viewCheckShutDown.setImageDrawable( + ContextCompat.getDrawable( + context, + R.drawable.icon_toolkit_item_stop_service + ) + ) + viewCheckShutDown.isClickable = true + } + //停服命令下发中 + 1 -> { + isExecutingPowerOff = true + } + //停服命令下发成功 + 2 -> { + viewProgressBackground.visibility = View.VISIBLE + viewProgress.visibility = View.VISIBLE + tvCountDown.visibility = View.VISIBLE + tvCountDownUnit.visibility = View.VISIBLE + //开始旋转动画 + if (progressAnimator == null) { + progressAnimator = ObjectAnimator.ofFloat(viewProgress, "rotation", 0f, 360f) + } + progressAnimator?.interpolator = LinearInterpolator() + progressAnimator?.repeatCount = ValueAnimator.INFINITE //无限循环 + progressAnimator?.duration = 10000 //设置持续时间 + progressAnimator?.startDelay = 0 + progressAnimator?.start() + //一键停服倒计时中 + isPowerOffCountDown = true + } + //停服命令下发失败 + 3 -> { + viewCheckShutDown.setImageDrawable( + ContextCompat.getDrawable( + context, + R.drawable.icon_toolkit_item_stop_service_fail + ) + ) + } + //停服命令下发超时 + 4 -> { + //将图标改为失败 + viewCheckShutDown.setImageDrawable( + ContextCompat.getDrawable( + context, + R.drawable.icon_toolkit_item_stop_service_fail + ) + ) + } + //停服中 + 5 -> { + isPowerOffCountDown = true + viewCheckShutDown.setImageDrawable( + ContextCompat.getDrawable( + context, + R.drawable.icon_toolkit_item_stop_service_background + ) + ) + viewProgressBackground.visibility = View.VISIBLE + viewProgress.visibility = View.VISIBLE + tvCountDown.visibility = View.VISIBLE + tvCountDownUnit.visibility = View.VISIBLE + //开始旋转动画 + if (progressAnimator == null) { + progressAnimator = ObjectAnimator.ofFloat(viewProgress, "rotation", 0f, 360f) + } + progressAnimator?.interpolator = LinearInterpolator() + progressAnimator?.repeatCount = ValueAnimator.INFINITE //无限循环 + progressAnimator?.duration = 10000 //设置持续时间 + progressAnimator?.startDelay = 0 + progressAnimator?.start() + } + //停服成功 + 6 -> { + //停止一键停服进度属性动画 + progressAnimator?.cancel() + //隐藏一键停服进度视图 + viewProgressBackground.visibility = View.GONE + viewProgress.visibility = View.GONE + tvCountDown.visibility = View.GONE + tvCountDownUnit.visibility = View.GONE + //一键停服命令倒计时结束,变为成功状态,并且发送1s倒计时 + viewCheckShutDown.setImageDrawable( + ContextCompat.getDrawable( + context, + R.drawable.icon_toolkit_item_stop_service_success + ) + ) + isPowerOffCountDown = false + } + //停服成功不可点击 + 7 -> { + //将倒计时内容隐藏 + viewProgressBackground.visibility = View.GONE + viewProgress.visibility = View.GONE + tvCountDown.visibility = View.GONE + tvCountDownUnit.visibility = View.GONE + //停服成功,将按钮置为不可点击状态 + viewCheckShutDown.setImageDrawable( + ContextCompat.getDrawable( + context, + R.drawable.icon_toolkit_item_stop_service_complete + ) + ) + viewCheckShutDown.isClickable = false + isPowerOffCountDown = false + } + } + } + + /** + * 一键停服 + */ + private fun powerOff() { + if (!connectStatus) { + ToastUtils.showShort("尚未连接工控机,无法下发一键停服命令") + return + } + if (AppConfigInfo.dockerVersion.isEmpty()) { + ToastUtils.showShort("尚未连接工控机,无法下发一键停服命令") + return + } + if (ParseVersionUtils.parseVersion(true, AppConfigInfo.dockerVersion) < 40100) { + ToastUtils.showShort("此域控版本不支持一键停服功能,最低支持版本为4.1.0") + return + } + if (CallerAutoPilotStatusListenerManager.getState() == 2) { + //当前处于自动驾驶状态,不可进行重启,Toast提示 + ToastUtils.showShort("请先退出自动驾驶状态") + return + } + if (isExecutingPowerOff) { + //一键停服命令下发执行中 + ToastUtils.showShort("一键停服命令下发中,请勿重复点击") + return + } + if (isPowerOffCountDown) { + //系统停服中 + ToastUtils.showShort("系统停服中,请勿重复点击") + return + } + //将是否正在下发一键停服命令标签改为true + isExecutingPowerOff = true + CallerDevaToolsManager.setPowerOffStatus(1) + hmiAction("$M_HMI$TAG", mapOf("powerOff" to true)) + //系统命令请求 关机 + powerOffMsgId = CallerAutoPilotControlManager.sendIpcPowerOff() + hmiAction("$M_HMI$TAG", mapOf("powerOffID" to powerOffMsgId)) + //开始执行10秒等待倒计时 + CallerDevaToolsManager.startCommandWaitCountDown() + } + + override fun onAttachedToWindow() { + super.onAttachedToWindow() + CallerAutoPilotStatusListenerManager.addListener(TAG, this) + CallerPowerOffManager.addListener(TAG, this) + CallerReceiveReceivedAckListenerManager.addListener(TAG, this) + } + + override fun onDetachedFromWindow() { + super.onDetachedFromWindow() + CallerAutoPilotStatusListenerManager.removeListener(TAG) + CallerPowerOffManager.removeListener(TAG) + CallerReceiveReceivedAckListenerManager.removeListener(TAG) + } + + override fun onAutopilotIpcConnectStatusChanged( + status: AdasConstants.IpcConnectionStatus, + reason: String? + ) { + super.onAutopilotIpcConnectStatusChanged(status, reason) + ThreadUtils.runOnUiThread { + setViewStatus(status == AdasConstants.IpcConnectionStatus.CONNECTED) + } + } + + private fun setViewStatus(connectInfo: Boolean) { + connectStatus = connectInfo + //下发一键停服命令后又和域控重新连接 + if ((powerOffStatus == 6 || powerOffStatus == 7) && connectStatus) { + CallerDevaToolsManager.setPowerOffStatus(0) + viewCheckShutDown.setImageDrawable( + ContextCompat.getDrawable( + context, + R.drawable.icon_toolkit_item_stop_service + ) + ) + viewCheckShutDown.isClickable = true + } + } + + /** + * 一键停服调用SSM停服命令超时 + */ + override fun commandTimeout() { + //停止命令超时倒计时 + CallerDevaToolsManager.stopCommandWaitCountDown() + /** + * 如果点击一键停服按钮10秒后,是否正在执行命令的标签仍为true,代表域控未返回执行结果 + * 此时应该将按钮状态短暂置为失败,之后再置为常态,并将此标签置为false + */ + if (isExecutingPowerOff) { + //更改标签状态 + isExecutingPowerOff = false + CallerDevaToolsManager.setPowerOffStatus(4) + //将图标改为失败 + viewCheckShutDown.setImageDrawable( + ContextCompat.getDrawable( + context, + R.drawable.icon_toolkit_item_stop_service_fail + ) + ) + //执行1秒倒计时命令 + CallerDevaToolsManager.statusChangeCountDown(false) + } + } + + /** + * 一键停服车辆下电等待倒计时 + */ + override fun powerDownTick(second: Int) { + tvCountDown.text = second.toString() + CallerDevaToolsManager.setPowerOffStatus(5) + } + + /** + * 一键停服车辆下电等待倒计时结束 + */ + override fun powerDownFinish() { + CallerDevaToolsManager.setPowerOffStatus(6) + //停止一键停服进度属性动画 + progressAnimator?.cancel() + //隐藏一键停服进度视图 + viewProgressBackground.visibility = View.GONE + viewProgress.visibility = View.GONE + tvCountDown.visibility = View.GONE + tvCountDownUnit.visibility = View.GONE + //一键停服命令倒计时结束,变为成功状态,并且发送1s倒计时 + viewCheckShutDown.setImageDrawable( + ContextCompat.getDrawable( + context, + R.drawable.icon_toolkit_item_stop_service_success + ) + ) + isPowerOffCountDown = false + //执行1秒倒计时命令 + CallerDevaToolsManager.statusChangeCountDown(true) + } + + /** + * 一键停服状态按钮变更通知 + */ + override fun statusChange(isSuccess: Boolean) { + CallerDevaToolsManager.stopStatusCountDown() + if (isSuccess) { + //将倒计时内容隐藏 + viewProgressBackground.visibility = View.GONE + viewProgress.visibility = View.GONE + tvCountDown.visibility = View.GONE + tvCountDownUnit.visibility = View.GONE + //停服成功,将按钮置为不可点击状态 + viewCheckShutDown.setImageDrawable( + ContextCompat.getDrawable( + context, + R.drawable.icon_toolkit_item_stop_service_complete + ) + ) + viewCheckShutDown.isClickable = false + CallerDevaToolsManager.setPowerOffStatus(7) + } else { + //停服命令下发失败,将按钮置为常态,可点击 + viewCheckShutDown.setImageDrawable( + ContextCompat.getDrawable( + context, + R.drawable.icon_toolkit_item_stop_service + ) + ) + viewCheckShutDown.isClickable = true + } + } + + /** + * 命令下发回执 + */ + override fun onReceiveReceivedAck(receivedAck: ReceivedAck) { + ThreadUtils.runOnUiThread { + if (receivedAck.messageType == MessageType.TYPE_SEND_SYSTEM_CMD_REQ && receivedAck.msgId == powerOffMsgId) { + isExecutingPowerOff = false + //停止命令超时倒计时 + CallerDevaToolsManager.stopCommandWaitCountDown() + if (receivedAck.status == ReceivedAck.Status.NORMAL) { + //一键停服命令回执成功,则正常进入停服阶段中,1分钟倒计时,并且TTS和消息盒子提示 + CallerDevaToolsManager.setPowerOffStatus(2) + AIAssist.getInstance(context).speakTTSVoice("请等待1分钟再执行车辆下电") + saveMsgBox( + MsgBoxBean( + MsgBoxType.V2X, V2XMsg( + EventTypeEnumNew.TYPE_POWER_OFF_TIP.poiType, + EventTypeEnumNew.TYPE_POWER_OFF_TIP.content, + EventTypeEnumNew.TYPE_POWER_OFF_TIP.tts + ) + ) + ) + + viewCheckShutDown.setImageDrawable( + ContextCompat.getDrawable( + context, + R.drawable.icon_toolkit_item_stop_service_background + ) + ) + viewProgressBackground.visibility = View.VISIBLE + viewProgress.visibility = View.VISIBLE + tvCountDown.visibility = View.VISIBLE + tvCountDownUnit.visibility = View.VISIBLE + //开始旋转动画 + if (progressAnimator == null) { + progressAnimator = + ObjectAnimator.ofFloat(viewProgress, "rotation", 0f, 360f) + } + progressAnimator?.interpolator = LinearInterpolator() + progressAnimator?.repeatCount = ValueAnimator.INFINITE //无限循环 + progressAnimator?.duration = 10000 //设置持续时间 + progressAnimator?.startDelay = 0 + progressAnimator?.start() + //开始60S倒计时 + CallerDevaToolsManager.startPowerDownCountDown() + //一键停服倒计时中 + isPowerOffCountDown = true + } else { + //一键停服命令回执失败,则走失败流程 + CallerDevaToolsManager.setPowerOffStatus(3) + viewCheckShutDown.setImageDrawable( + ContextCompat.getDrawable( + context, + R.drawable.icon_toolkit_item_stop_service_fail + ) + ) + //执行1秒倒计时命令 + CallerDevaToolsManager.statusChangeCountDown(false) + } + } + } + } +} \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_ai_report.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_ai_report.png new file mode 100644 index 0000000000000000000000000000000000000000..6a9add4d1c6f419ba5ed1b986682429274533935 GIT binary patch literal 19802 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 K-8voT=l=nkMt~0h literal 0 HcmV?d00001 diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_stop_service_background.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_stop_service_background.png new file mode 100644 index 0000000000000000000000000000000000000000..1e6f83db89644999a0c006d4effda695d12ee95a GIT binary patch literal 23283 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 fKcz=Uf?rw`)k;UB>cXxO0_kX$f`95Tl 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 UaCXxS;y>jV+|tg1aMdgJe_6b)4FCWD literal 0 HcmV?d00001 diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_stop_service_fail.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_stop_service_fail.png new file mode 100644 index 0000000000000000000000000000000000000000..a01d86cb9e9d234f6383870e28a3501d79a76ad5 GIT binary patch literal 23447 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 F{{vlGB@6%n literal 0 HcmV?d00001 diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_stop_service_process.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_stop_service_process.png new file mode 100644 index 0000000000000000000000000000000000000000..b6fc06d1eb6482a4a3456d130b5a10d134412b0a GIT binary patch literal 1681 zcmZuxX*3&%7S2K@s1((fSeh9omYG@((xqrVT2nrl=WdI}!2JR^2>F2s)7}8l5=rocGRoXYM)Q{l2^XyZ07`;jp^eaBTnp zpc@$A8=+?WHlPr-H%-;!s|lDMfyDsWFHNQDz&9Z}Ffk+qV5`b|$|-0|1(vfxh1O3qbj80n60S@Yy`vmdlzW+=EA7n-fCk=4p%RagA=y%A82JcOPG9jyli{U>lhfDRox z#2SH-_4d~v5LN>z46h@=PLLeaGGa`I-ND8&cB}qzP|pfYHN1mKs4qT4?cvNkYUDgy zY5#>kHKR)r5XO?~D|`}}1*Ni!#@P_UH)q)FhMiNFq1>I*r#)7UC3Wp=?9a`-g8t?> z3iJG~4Ki|GCHZmV0*SQrq>{L3Uph+RW>qhnIL$+Icw5IWIV%YRby+;W35jo^C+>YERDNS< zanFtv+FkvGh^_nL-hisznr$tvlKrcxj5{|%LjVdwX{b+p)Z681@_S3pP2u+r?KgdY z|CYKYX!4iU*p(z8`8EE{@wYrCW^>-iqZ22GXJ-7ZCw@nmR7K9Yn^7N#1`Q90n%Na0 z4w{j)*r&TBR)5FDbKZ1`cg*RS@eCk7PT&yQ_QFLh#M8?+j0)#R2$pU88sy}(^0dV8 zV-Gnk{ILM^+?=&1E*$oQ*qH1@=$d}1V_&hqvn<)`|JMPi_bX5Nf#lOkT4N}!dlxAK!W-&2CvxiST`JBeDt6wjD&RG z<$TYScA|x-h&EX!?*3QM+NjliWrzPpDOdi*z-_uvG-eSKF6y?K$>Yw3oiy_&j`*Sl z2K&Yqt}Gh5qLs<7o*X?|!0Ov45vO@&@PH;K!>qvf##(XZ51*V_5e-Zpf$`0QjM`9r zlbpjJt_aWmnj9u*Dv7=scm8zOJ~yef<7D&U;UmE{D8(Nrd@aiC4(XSSA87OLKBC`(H8PRdl9)L#fojf%WKG zfkvbpj#o}t-UTh~A)y^Jbl9@^NgIxR7muddU8vE*HQ!_R9heYFdPZGeI~0;)vM`-1 zDl)ehwDDQCN=Bpn;gz!~_p}>{yYgdtcVvQkL5Cyth*Q`n)9({{Qq3p76lR~d07pmi zV#m|XMeR!Oy2_mv;L2O{^~@N0nnz2+>qe|l9xxuSBG2ojNu8HW7yHVNO~&<^g!r7> z-KUBR-r`I_2f6-rIF4cCzv~XZ@Dj9Z12U<=6c|&h%RGEKzn1Y5y^_?ahyUc9g9@Uo zd@G|Z-D=9_oH<3bkuD-Xjr{aLYt^1Ogde+(b*;t1t5BD@5ofRA<`xkgT2=>4>g{0pr-kz(-5)%^xiH`Ou;9woC=EK&er9zf59D^B(Pz)9CeOz>V3Cw6H z`30pkmPDHomhuZAVpa9B3bJaPJUaf33ssV^t)_+Yuh5UQsEr-?S*zCSG_w<%^aD^% zR_|k^V-nY`NtYa5_u1>a`^>}{n@oO@`(J%sSl(BF=6$Fo-x0hQpte9ioG%*_PyZ8? CzX1NQwaJX7JDc+lZO{mNu7{2mJca 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 ZuYH$39x&y9`;RlOuA;46``Y^R{{TacyG{TA literal 0 HcmV?d00001 diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_tool_kit_item.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_tool_kit_item.xml index 41f2bedfc7..800136e8e3 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_tool_kit_item.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_tool_kit_item.xml @@ -2,4 +2,5 @@ \ No newline at end of file + android:layout_height="wrap_content" + android:layout_gravity="center" /> \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_tool_kit_item_default.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_tool_kit_item_default.xml index 41ec5a6614..c63789e4eb 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_tool_kit_item_default.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_tool_kit_item_default.xml @@ -13,7 +13,7 @@ app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" - tools:src="@drawable/icon_toolkit_item_tiaoshi" /> + tools:src="@drawable/icon_toolkit_item_debug_panel" /> + + + + + + + \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_tool_stop_service.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_tool_stop_service.xml new file mode 100644 index 0000000000..f7049cd09c --- /dev/null +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_tool_stop_service.xml @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/och/IToolKitItemClickListener.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/och/IToolKitItemClickListener.kt index 6c45cf953f..0979d1168f 100644 --- a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/och/IToolKitItemClickListener.kt +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/och/IToolKitItemClickListener.kt @@ -1,8 +1,10 @@ package com.mogo.eagle.core.function.api.och +import android.content.Context + /** * 工具箱-item点击事件监听 */ interface IToolKitItemClickListener { - fun onItemClick(toolTag: String) + fun onItemClick(toolTag: String, ctx: Context?) } \ No newline at end of file