diff --git a/src/api/iot/ota/task/index.ts b/src/api/iot/ota/task/index.ts index 66e2e9bd..454405c5 100644 --- a/src/api/iot/ota/task/index.ts +++ b/src/api/iot/ota/task/index.ts @@ -3,15 +3,15 @@ import request from '@/config/axios' /** IoT OTA 任务信息 */ export interface OtaTask { id?: number // 任务编号 - name?: string // 任务名称 + name: string // 任务名称 description?: string // 任务描述 firmwareId?: number // 固件编号 - status?: number // 任务状态 + status: number // 任务状态 deviceScope?: number // 升级范围 deviceIds?: number[] // 指定设备ID列表(当升级范围为指定设备时使用) deviceTotalCount?: number // 设备总共数量 deviceSuccessCount?: number // 设备成功数量 - createTime?: string // 创建时间 + createTime?: Date // 创建时间 } // IoT OTA 任务 API diff --git a/src/api/iot/ota/task/record/index.ts b/src/api/iot/ota/task/record/index.ts index 4ae38373..447f0e76 100644 --- a/src/api/iot/ota/task/record/index.ts +++ b/src/api/iot/ota/task/record/index.ts @@ -7,11 +7,14 @@ export interface OtaTaskRecord { firmwareVersion?: string // 固件版本 taskId?: number // 任务编号 deviceId?: string // 设备编号 + deviceName?: string // 设备名称 + currentVersion?: string // 当前版本 fromFirmwareId?: number // 来源的固件编号 fromFirmwareVersion?: string // 来源的固件版本 status?: number // 升级状态 progress?: number // 升级进度,百分比 description?: string // 升级进度描述 + updateTime?: Date // 更新时间 } // IoT OTA 任务记录 API @@ -31,5 +34,10 @@ export const IoTOtaTaskRecordApi = { // 查询 OTA 任务记录详情 getOtaTaskRecord: async (id: number) => { return await request.get({ url: `/iot/ota/task/record/get?id=` + id }) + }, + + // 取消 OTA 任务记录 + cancelOtaTaskRecord: async (id: number) => { + return await request.post({ url: `/iot/ota/task/record/cancel?id=` + id }) } } diff --git a/src/utils/dict.ts b/src/utils/dict.ts index 0daad8ed..a6770778 100644 --- a/src/utils/dict.ts +++ b/src/utils/dict.ts @@ -244,5 +244,5 @@ export enum DICT_TYPE { IOT_ALERT_RECEIVE_TYPE = 'iot_alert_receive_type', // IoT 告警接收类型 IOT_OTA_TASK_DEVICE_SCOPE = 'iot_ota_task_device_scope', // IoT OTA任务设备范围 IOT_OTA_TASK_STATUS = 'iot_ota_task_status', // IoT OTA 任务状态 - IOT_OTA_RECORD_STATUS = 'iot_ota_record_status' // IoT OTA 记录状态 + IOT_OTA_TASK_RECORD_STATUS = 'iot_ota_task_record_status' // IoT OTA 记录状态 } diff --git a/src/views/iot/ota/firmware/detail/index.vue b/src/views/iot/ota/firmware/detail/index.vue index fea514f8..715b24d1 100644 --- a/src/views/iot/ota/firmware/detail/index.vue +++ b/src/views/iot/ota/firmware/detail/index.vue @@ -104,16 +104,14 @@ import OtaTaskList from '../../task/OtaTaskList.vue' /** IoT OTA 固件详情 */ defineOptions({ name: 'IoTOtaFirmwareDetail' }) -const route = useRoute() -const firmwareId = ref(Number(route.params.id)) +const route = useRoute() // 路由 -// 固件信息 -const firmwareLoading = ref(false) -const firmware = ref({} as IoTOtaFirmware) +const firmwareId = ref(Number(route.params.id)) // 固件编号 +const firmwareLoading = ref(false) // 固件加载状态 +const firmware = ref({} as IoTOtaFirmware) // 固件信息 -// 统计信息 -const firmwareStatisticsLoading = ref(false) -const firmwareStatistics = ref>({}) +const firmwareStatisticsLoading = ref(false) // 统计信息加载状态 +const firmwareStatistics = ref>({}) // 统计信息 /** 获取固件信息 */ const getFirmwareInfo = async () => { diff --git a/src/views/iot/ota/task/OtaTaskDetail.vue b/src/views/iot/ota/task/OtaTaskDetail.vue index e0e5637b..2e19b39e 100644 --- a/src/views/iot/ota/task/OtaTaskDetail.vue +++ b/src/views/iot/ota/task/OtaTaskDetail.vue @@ -3,71 +3,80 @@ - {{ taskInfo.id }} - {{ taskInfo.name }} - 版本升级 - {{ - taskInfo.deviceTotalCount - }} - - - {{ - formatTime(taskInfo.createTime) - }} - {{ - taskInfo.description || '-' - }} + {{ task.id }} + {{ task.name }} + + + + + + + + {{ task.createTime ? formatDate(task.createTime) : '-' }} + + + {{ task.description }} + - - + +
- {{ statisticsData.total }} + {{ Object.values(taskStatistics).reduce((sum, count) => sum + (count || 0), 0) || 0 }}
升级设备总数
- +
- {{ statisticsData.pending }} + {{ taskStatistics[IoTOtaTaskRecordStatusEnum.PENDING.value] || 0 }}
待推送
- + +
+
+ {{ taskStatistics[IoTOtaTaskRecordStatusEnum.PUSHED.value] || 0 }} +
+
已推送
+
+
+
- {{ statisticsData.upgrading }} + {{ taskStatistics[IoTOtaTaskRecordStatusEnum.UPGRADING.value] || 0 }}
正在升级
- +
- {{ statisticsData.success }} + {{ taskStatistics[IoTOtaTaskRecordStatusEnum.SUCCESS.value] || 0 }}
升级成功
- +
- {{ statisticsData.failure }} + {{ taskStatistics[IoTOtaTaskRecordStatusEnum.FAILURE.value] || 0 }}
升级失败
- +
- {{ statisticsData.stopped }} + {{ taskStatistics[IoTOtaTaskRecordStatusEnum.CANCELED.value] || 0 }}
-
停止
+
升级取消
@@ -89,10 +98,10 @@ :show-overflow-tooltip="true" > - + @@ -100,7 +109,9 @@ - +