浏览代码

查询子设备短地址改长地址

locky 2 年之前
父节点
当前提交
cb669ad87a
共有 2 个文件被更改,包括 16 次插入16 次删除
  1. 8 8
      Controller/SensorGateway/SmartSceneController.py
  2. 8 8
      Controller/SensorGateway/SubDeviceController.py

+ 8 - 8
Controller/SensorGateway/SmartSceneController.py

@@ -329,8 +329,8 @@ class SmartSceneView(View):
 
                     sub_device_id = task.get('subDeviceId', None)
                     if sub_device_id:
-                        sub_device_qs = GatewaySubDevice.objects.filter(id=sub_device_id).values('src_addr').first()
-                        task_temp['sensor_src'] = int(sub_device_qs['src_addr'], 16)
+                        sub_device_qs = GatewaySubDevice.objects.filter(id=sub_device_id).values('ieee_addr').first()
+                        task_temp['sensor_ieee_addr'] = sub_device_qs['ieee_addr']
                     task_list.append(task_temp)
                 msg['task'] = task_list
 
@@ -618,13 +618,13 @@ class SmartSceneView(View):
                     msg['sensor_data'] = float(value)
 
                 device_id = ''
-                sub_device_qs = GatewaySubDevice.objects.filter(id=sub_device_id).values('src_addr',
+                sub_device_qs = GatewaySubDevice.objects.filter(id=sub_device_id).values('ieee_addr',
                                                                                          'device__serial_number')
                 if not sub_device_qs.exists():
                     return response.json(173)
                 serial_number = sub_device_qs[0]['device__serial_number']
                 msg['sensor_type'] = int(conditions_dict['sensor']['device_type'])
-                msg['sensor_src'] = int(sub_device_qs[0]['src_addr'], 16)
+                msg['sensor_ieee_addr'] = sub_device_qs[0]['ieee_addr']
                 msg['sensor_status'] = int(conditions_dict['sensor']['eventValues'][0]['event_type'])
             else:
                 if not device_id:
@@ -648,8 +648,8 @@ class SmartSceneView(View):
 
                 task_sub_device_id = task.get('subDeviceId', None)
                 if task_sub_device_id:
-                    sub_device_qs = GatewaySubDevice.objects.filter(id=task_sub_device_id).values('src_addr').first()
-                    task_temp['sensor_src'] = int(sub_device_qs['src_addr'], 16)
+                    sub_device_qs = GatewaySubDevice.objects.filter(id=task_sub_device_id).values('ieee_addr').first()
+                    task_temp['sensor_ieee_addr'] = sub_device_qs['ieee_addr']
                 task_list.append(task_temp)
             msg['task'] = task_list
 
@@ -935,14 +935,14 @@ class SmartSceneView(View):
             # 下发智能按钮数据
             smart_button_qs = GatewaySubDevice.objects.filter(device_id=device_id,
                                                               device_type=SENSOR_TYPE['smart_button']).values(
-                'src_addr', 'is_tampered')
+                'ieee_addr', 'is_tampered')
             if smart_button_qs.exists():
                 sos_count = smart_button_qs.count()
                 for index, smart_button in enumerate(smart_button_qs):
                     msg = {
                         'sos_count': sos_count,  # 该网关下的智能按钮数量
                         'sos_num': index + 1,  # 第几个按钮
-                        'sensor_src': int(smart_button['src_addr'], 16),
+                        'sensor_ieee_addr': smart_button['ieee_addr'],
                         'sos_select': smart_button['is_tampered']
                     }
                     success = CommonService.req_publish_mqtt_msg(serial_number, topic_name, msg)

+ 8 - 8
Controller/SensorGateway/SubDeviceController.py

@@ -480,22 +480,22 @@ class GatewaySubDeviceView(View):
                 # 更新智能按钮紧急开关状态
                 sub_device_qs.update(is_tampered=emergency_status)
                 # 获取序列号
-                sub_device_qs = sub_device_qs.values('device_id', 'src_addr', 'device__serial_number')
+                sub_device_qs = sub_device_qs.values('device_id', 'ieee_addr', 'device__serial_number')
                 serial_number = sub_device_qs[0]['device__serial_number']
                 topic_name = SMART_SCENE_TOPIC.format(serial_number)
                 gateway_sub_device_qs = GatewaySubDevice.objects.filter(device_id=sub_device_qs[0]['device_id'],
                                                                         device_type=SENSOR_TYPE['smart_button']).values(
-                    'src_addr')
+                    'ieee_addr')
                 sos_count = gateway_sub_device_qs.count()
                 sos_num = 1
                 for index, gateway_sub_device in enumerate(gateway_sub_device_qs):
-                    if sub_device_qs[0]['src_addr'] == gateway_sub_device['src_addr']:
+                    if sub_device_qs[0]['ieee_addr'] == gateway_sub_device['ieee_addr']:
                         sos_num += index
                 # 通知设备修改sos状态
                 msg = {
                     'sos_count': sos_count,  # 该网关下的智能按钮数量
                     'sos_num': sos_num,  # 第几个按钮
-                    'sensor_src': int(sub_device_qs[0]['src_addr'], 16),
+                    'sensor_ieee_addr': sub_device_qs[0]['ieee_addr'],
                     'sos_select': emergency_status
                 }
                 success = CommonService.req_publish_mqtt_msg(serial_number, topic_name, msg)
@@ -551,14 +551,14 @@ class GatewaySubDeviceView(View):
                 room_qs = FamilyRoom.objects.filter(id=item['room_id']).values('name')
                 room_name = room_qs[0]['name'] if room_qs.exists() else ''
                 device_qs = GatewaySubDevice.objects.filter(id=item['sub_device']).values('id', 'nickname',
-                                                                                          'device_type', 'src_addr',
+                                                                                          'device_type', 'ieee_addr',
                                                                                           'status', 'created_time')
                 if device_qs.exists():
                     res = {
                         'gatewaySubId': device_qs[0]['id'],
                         'nickName': device_qs[0]['nickname'],
                         'deviceType': device_qs[0]['device_type'],
-                        'srcAddr': device_qs[0]['src_addr'],
+                        'srcAddr': device_qs[0]['ieee_addr'],
                         'status': device_qs[0]['status'],
                         'createdTime': device_qs[0]['created_time'],
                         'roomName': room_name,
@@ -606,7 +606,7 @@ class GatewaySubDeviceView(View):
                         room_name = room_qs[0]['name'] if room_qs.exists() else ''
                         device_qs = GatewaySubDevice.objects.filter(id=each['sub_device']).values('id', 'nickname',
                                                                                                   'device_type',
-                                                                                                  'src_addr',
+                                                                                                  'ieee_addr',
                                                                                                   'status',
                                                                                                   'created_time')
                         if device_qs.exists():
@@ -614,7 +614,7 @@ class GatewaySubDeviceView(View):
                                 'gatewaySubId': device_qs[0]['id'],
                                 'nickName': device_qs[0]['nickname'],
                                 'deviceType': device_qs[0]['device_type'],
-                                'srcAddr': device_qs[0]['src_addr'],
+                                'srcAddr': device_qs[0]['ieee_addr'],
                                 'status': device_qs[0]['status'],
                                 'createdTime': device_qs[0]['created_time'],
                                 'roomName': room_name,