Bladeren bron

根据家庭id与用户id查询权限

zhangdongming 3 jaren geleden
bovenliggende
commit
650e6419b2
1 gewijzigde bestanden met toevoegingen van 15 en 1 verwijderingen
  1. 15 1
      SensorGateway/EquipmentFamilyController.py

+ 15 - 1
SensorGateway/EquipmentFamilyController.py

@@ -192,6 +192,10 @@ class EquipmentFamilyView(View):
         page = int(page)
         line = int(line)
         uid = request_dict.get('uid', None)
+        if family_id:
+            permission = cls.get_member_permission_details(user_id, int(family_id))
+            if not permission or permission == '003':
+                return response.json(404)
         # 获取设备信息列表
         device_info_list = cls.get_device_info_list(user_id, nick_name, uid,
                                                     page, line, family_id, room_id)
@@ -311,7 +315,7 @@ class EquipmentFamilyView(View):
     @classmethod
     def get_uid_set_dict(cls, uid_list):
         """
-
+        获取uid配置信息
         @param uid_list: uid列表
         @return: uid_set_dict uid配置信息
         """
@@ -732,3 +736,13 @@ class EquipmentFamilyView(View):
         result['memberPermission'] = this_permission
         result['permissionList'] = data_list
         return result
+
+    @classmethod
+    def get_member_permission_details(cls, user_id, family_id):
+        member_qs = LoocamFamilyMember.objects.filter(family_id=family_id, user_id=user_id).values()
+        if member_qs.exists():
+            member_qs = member_qs.first()
+            permission_id = member_qs['permission_id']
+            permission_qs = LoocamFamilyMemberPermission.objects.filter(id=permission_id).values('no')
+            return permission_qs.first()['no']
+        return ''