|
|
|
@ -29,7 +29,7 @@ class DeviceService: |
|
|
|
"""获取所有设备""" |
|
|
|
try: |
|
|
|
devices = await self.device_manager.get_all_devices() |
|
|
|
return [Device.from_device_info(device) for device in devices] |
|
|
|
return devices # 直接返回Device对象列表,不需要转换 |
|
|
|
except Exception as e: |
|
|
|
logger.error(f"获取所有设备失败: {e}") |
|
|
|
raise |
|
|
|
@ -39,7 +39,7 @@ class DeviceService: |
|
|
|
try: |
|
|
|
device_info = await self.device_manager.get_device(device_id) |
|
|
|
if device_info: |
|
|
|
return Device.from_device_info(device_info) |
|
|
|
return device_info # 直接返回Device对象,不需要转换 |
|
|
|
return None |
|
|
|
except Exception as e: |
|
|
|
logger.error(f"获取设备 {device_id} 失败: {e}") |
|
|
|
@ -55,10 +55,7 @@ class DeviceService: |
|
|
|
return DeviceStatusResponse( |
|
|
|
device_id=device_id, |
|
|
|
status=device.status, |
|
|
|
protocol_type=device.protocol_type, |
|
|
|
source=device.source, |
|
|
|
last_seen=device.last_seen, |
|
|
|
properties=device.properties |
|
|
|
timestamp=device.updated_at |
|
|
|
) |
|
|
|
except Exception as e: |
|
|
|
logger.error(f"获取设备 {device_id} 状态失败: {e}") |
|
|
|
@ -71,7 +68,10 @@ class DeviceService: |
|
|
|
if not device: |
|
|
|
raise ValueError(f"设备 {device_id} 不存在") |
|
|
|
|
|
|
|
if device.source == DeviceSource.REGISTERED: |
|
|
|
# 获取设备来源 |
|
|
|
device_source = await self.device_manager.get_device_source(device_id) |
|
|
|
|
|
|
|
if device_source == DeviceSource.REGISTERED: |
|
|
|
# 注册设备:通过设备分发器执行 |
|
|
|
return await self.device_dispatcher.execute_operation( |
|
|
|
device_id=device_id, |
|
|
|
|