From 8d682b555ffce212ea0dca663da0b7f8cd02e299 Mon Sep 17 00:00:00 2001 From: xuxinchao Date: Thu, 19 Jun 2025 11:13:44 +0800 Subject: [PATCH] =?UTF-8?q?[8.1.0]OTA=E5=8D=87=E7=BA=A7=E4=B8=8B=E8=BD=BD?= =?UTF-8?q?=E8=BF=87=E7=A8=8B=E4=B8=AD=E5=B1=95=E7=A4=BA=E5=89=A9=E4=BD=99?= =?UTF-8?q?=E6=97=B6=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ota/OTAUpgradeManager.kt | 4 +- .../tools/adapter/OTADownloadStatusAdapter.kt | 12 +++++ .../res/layout/item_ota_download_status.xml | 44 ++++++++++++------- .../core/data/deva/ota/OtaUpgradeInfo.kt | 4 +- 4 files changed, 45 insertions(+), 19 deletions(-) diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/ota/OTAUpgradeManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/ota/OTAUpgradeManager.kt index 42d660236e..ea9ac824c8 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/ota/OTAUpgradeManager.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/ota/OTAUpgradeManager.kt @@ -199,7 +199,7 @@ object OTAUpgradeManager: IMoGoAutopilotStatusListener, IDataCenterBizListener, productName = productName.trim().substringAfterLast(":") } val otaUpgradeInfo = OtaUpgradeInfo(token, productStatus,failReason,upgradeReason, - taskId,taskItemId,otaType,productName,needRestart,isDelay,curSize,totalSize) + taskId,taskItemId,otaType,productName,needRestart,isDelay,curSize,totalSize,leftTime) otaUpgradeList.add(otaUpgradeInfo) } CallerHmiManager.showOTADownloadStatusDialog(true,otaUpgradeList) @@ -338,7 +338,7 @@ object OTAUpgradeManager: IMoGoAutopilotStatusListener, IDataCenterBizListener, productName = productName.trim().substringAfterLast(":") } val otaUpgradeInfo = OtaUpgradeInfo(token, productStatus,failReason,upgradeReason, - taskId,taskItemId,otaType,productName,needRestart,isDelay,curSize,totalSize) + taskId,taskItemId,otaType,productName,needRestart,isDelay,curSize,totalSize,leftTime) otaUpgradeList.add(otaUpgradeInfo) } if(!upgradeComplete){ diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/adapter/OTADownloadStatusAdapter.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/adapter/OTADownloadStatusAdapter.kt index 033aa34971..e7eaa8b8ef 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/adapter/OTADownloadStatusAdapter.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/adapter/OTADownloadStatusAdapter.kt @@ -37,6 +37,17 @@ class OTADownloadStatusAdapter(private val context: Context): RecyclerView.Adapt holder.tvDownloadProgress.text = "部署中" } holder.pbDownloadProgress.progress = (otaUpgradeInfo.cur_size*100/otaUpgradeInfo.total_size).toInt() + if(otaUpgradeInfo.left_time <= 0){ + holder.tvDownloadTime.visibility = View.INVISIBLE + }else{ + holder.tvDownloadTime.visibility = View.VISIBLE + val upgradeTime = if(otaUpgradeInfo.left_time > 60){ + "剩余${otaUpgradeInfo.left_time/60}分钟${otaUpgradeInfo.left_time%60}秒" + }else{ + "剩余${otaUpgradeInfo.left_time%60}秒" + } + holder.tvDownloadTime.text = upgradeTime + } // 0:默认(未开始), 1:下载中, 2:下载完成, 3:升级完成, 4:升级失败 // holder.tvDownloadStatus.text = when (otaUpgradeInfo.status) { // 1 -> { @@ -64,6 +75,7 @@ class OTADownloadStatusAdapter(private val context: Context): RecyclerView.Adapt var tvProductName: TextView = itemView.findViewById(R.id.tvProductName) var tvDownloadProgress: TextView = itemView.findViewById(R.id.tvDownloadProgress) var pbDownloadProgress: ProgressBar = itemView.findViewById(R.id.pbDownloadProgress) + var tvDownloadTime: TextView = itemView.findViewById(R.id.tvDownloadTime) } } \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_ota_download_status.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_ota_download_status.xml index cea7004e5e..4be1d83f64 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_ota_download_status.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_ota_download_status.xml @@ -6,39 +6,51 @@ android:layout_marginTop="@dimen/dp_54" android:layout_marginBottom="@dimen/dp_14"> + + - - + + \ No newline at end of file diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/deva/ota/OtaUpgradeInfo.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/deva/ota/OtaUpgradeInfo.kt index 5d05b9a2d0..7713f43c24 100644 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/deva/ota/OtaUpgradeInfo.kt +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/deva/ota/OtaUpgradeInfo.kt @@ -14,7 +14,9 @@ package com.mogo.eagle.core.data.deva.ota * @param is_delay 是否是延时升级 * @param cur_size 当前已下载文件大小 * @param total_size 下载文件总大小 + * @param left_time 剩余时间 */ data class OtaUpgradeInfo(var token: String,var status: Int,var fail_reason: String,var upgrade_reason: String, var task_id: Int,var task_item_id: Int,var ota_type: Int,var product_name: String, - var need_restart: Boolean,var is_delay: Boolean,var cur_size:Double,var total_size: Double) \ No newline at end of file + var need_restart: Boolean,var is_delay: Boolean,var cur_size:Double, + var total_size: Double,var left_time: Int) \ No newline at end of file