Browse Source

feat: 设备OTA相关新增设备未激活状态展示

liujia 3 weeks ago
parent
commit
01fd60b

+ 1 - 1
src/api/device/types.ts

@@ -187,7 +187,7 @@ export interface DeviceDetailData {
   userId: ID // 用户ID
   devName: string //设备名称
   devType: string // 设备类型
-  online: SwitchType // 设备状态:0-离线,1-在线
+  online: SwitchType | 9 // 设备状态:0-离线,1-在线 9-未激活
   devWarn: SwitchType // 设备报警:0-正常,1-报警
   software: string // 软件版本
   hardware: string // 硬件版本

+ 2 - 2
src/const/device.ts

@@ -8,9 +8,9 @@ export const deviceOnlineStateMap = {
     name: '在线',
     color: 'green',
   },
-  2: {
+  9: {
     name: '未激活',
-    color: 'gray',
+    color: '#ccc',
   },
 }
 

+ 1 - 1
src/views/device/detail/components/deviceAreaConfig/index.vue

@@ -263,7 +263,7 @@ type Props = {
   width: number
   ranges: [number, number, number, number] // 区域范围
   angle: number // 设备角度,用于初始化画布的旋转角度
-  online?: SwitchType // 设备在线状态,用于判断是否可以保存配置
+  online?: SwitchType | 9 // 设备在线状态,用于判断是否可以保存配置
 }
 const emit = defineEmits<{
   (e: 'success', value: void): void

+ 1 - 1
src/views/device/detail/components/deviceBaseConfig/index.vue

@@ -269,7 +269,7 @@ defineOptions({
 type Props = {
   devId: string // 设备id 查询使用
   clientId: string // 设备id 更新使用
-  online: SwitchType // 设备是否在线
+  online: SwitchType | 9 // 设备是否在线
 }
 const emit = defineEmits<{
   (e: 'success', value: void): void

+ 1 - 1
src/views/device/detail/components/deviceConfig/index.vue

@@ -62,7 +62,7 @@ type Props = {
     yEnd: number
   }
   angle: number
-  online?: SwitchType
+  online?: SwitchType | 9
 }
 
 const emit = defineEmits<{

+ 7 - 1
src/views/device/detail/index.vue

@@ -92,11 +92,17 @@
                 :color="deviceOnlineStateMap[detailState.online].color"
                 >{{ deviceOnlineStateMap[detailState.online].name }}</a-tag
               >
+              <a-tag
+                v-if="detailState.online === 9"
+                :bordered="false"
+                :color="deviceOnlineStateMap[detailState.online].color"
+                >{{ deviceOnlineStateMap[detailState.online].name }}</a-tag
+              >
             </template>
           </info-item>
           <info-item label="归属租户">{{ detailState.tenantName }}</info-item>
           <info-item label="统计信息">
-            <a-space>
+            <a-space size="0">
               <a-button
                 v-if="detailState.clientId"
                 type="link"