diff --git a/apps/web-antd/src/api/aiot/device/index.ts b/apps/web-antd/src/api/aiot/device/index.ts index a083e4734..2a4cab599 100644 --- a/apps/web-antd/src/api/aiot/device/index.ts +++ b/apps/web-antd/src/api/aiot/device/index.ts @@ -31,6 +31,7 @@ export namespace AiotDeviceApi { stream?: string; cameraCode?: string; // 摄像头唯一编码 cameraName?: string; // 摄像头名称(用户自定义) + edgeDeviceId?: string; // 绑定的边缘设备ID srcUrl?: string; timeout?: number; rtspType?: string; // '0'=TCP, '1'=UDP, '2'=Multicast diff --git a/apps/web-antd/src/views/aiot/device/camera/index.vue b/apps/web-antd/src/views/aiot/device/camera/index.vue index 60b8bc6b4..433129a5f 100644 --- a/apps/web-antd/src/views/aiot/device/camera/index.vue +++ b/apps/web-antd/src/views/aiot/device/camera/index.vue @@ -58,6 +58,7 @@ const searchQuery = ref(''); const columns = [ { title: '摄像头名称', dataIndex: 'cameraName', width: 150 }, { title: '拉流地址', dataIndex: 'srcUrl', ellipsis: true }, + { title: '边缘设备', dataIndex: 'edgeDeviceId', width: 100 }, { title: '状态', key: 'status', width: 60, align: 'center' as const }, { title: 'ROI', key: 'roiCount', width: 80, align: 'center' as const }, { title: '操作', key: 'actions', width: 240, fixed: 'right' as const }, @@ -75,6 +76,7 @@ const editForm = reactive>({ cameraName: '', app: '', stream: '', + edgeDeviceId: 'edge', srcUrl: '', timeout: 15, rtspType: '0', @@ -180,6 +182,7 @@ function resetForm() { cameraName: '', app: '', stream: '', + edgeDeviceId: 'edge', srcUrl: '', timeout: 15, rtspType: '0', @@ -242,6 +245,7 @@ function handleEdit(row: AiotDeviceApi.Camera) { cameraName: row.cameraName || '', app: row.app || '', stream: row.stream || '', + edgeDeviceId: row.edgeDeviceId || 'edge', cameraCode: row.cameraCode || '', srcUrl: row.srcUrl || '', timeout: row.timeout ?? 15, @@ -487,6 +491,16 @@ onMounted(() => { placeholder="请输入摄像头名称,如:大堂吧台、室外停车场" /> + +