Browse Source

取消设备分享权限

peng 10 months ago
parent
commit
e2ebc66005

+ 0 - 1
Ansjer/urls.py

@@ -64,7 +64,6 @@ urlpatterns = [
     re_path('accounts', AdminManage.search_user_by_content),  # 多条件搜索用户信息admin
     re_path(r'^account/shareUserEquipment$', shareUserPermission.shareUserEquipmentView.as_view()),
     re_path(r'^account/unsharedUserEquipment$', shareUserPermission.unsharedUserEquipmentView.as_view()),
-    re_path(r'^equipment/sharePermission/(?P<operation>.*)$', shareUserPermission.SharePermissionsView.as_view()),
     re_path(r'^response/success$', UserManger.success),
     re_path(r'^equipment/queryUserEquipment$', EquipmentManager.queryUserEquipmentInterface),
     re_path(r'^equipment/addNewUserEquipment$', EquipmentManager.addNewUserEquipmentInterface),

+ 2 - 2
Controller/UserDevice/UserDeviceShareController.py

@@ -99,7 +99,7 @@ class UserDeviceShareView(View):
                 is_select = 1 if str(channel) in share_channel_list else 0
                 c_list.append({'channelIndex': channel, 'isSelect': is_select})
             p_list = []
-            permission_qs = DeviceSharePermission.objects.filter(share_type=1)
+            permission_qs = DeviceSharePermission.objects.all()
             share_permission_list = [item['permission_id'] for item in channel_permission_qs]
             for item in permission_qs:
                 is_select = 1 if item.id in share_permission_list else 0
@@ -185,7 +185,7 @@ class UserDeviceShareView(View):
                               'created_time': now_time, 'updated_time': now_time}
                 device_user_set = DeviceChannelUserSet.objects.create(**device_set)
                 channel_permission_qs = DeviceSharePermission.objects \
-                    .filter(share_type=1).values('id', 'code').order_by('sort')
+                    .all().values('id', 'code').order_by('sort')
                 user_set_id = device_user_set.id
                 channel_permission_list = []
                 for item in channel_permission_qs:

+ 4 - 71
Controller/shareUserPermission.py

@@ -7,7 +7,7 @@ import traceback, simplejson as json
 from django.views.generic.base import View
 from django.views.decorators.csrf import csrf_exempt
 from django.utils.decorators import method_decorator
-from Model.models import Device_User, Device_Info, Role, UserExModel, DeviceUserPermissions, DeviceSharePermission, \
+from Model.models import Device_User, Device_Info, Role, UserExModel, \
     UidSetModel, UidPushModel, GatewayPush
 from Service.CommonService import CommonService
 from Object.ResponseObject import ResponseObject
@@ -169,7 +169,6 @@ class shareUserEquipmentView(View):
         GuestID = queryDict.get('guestID', None)
         content = queryDict.get('content', None)
         sharedAll = queryDict.get('sharedAll', False)
-        permission_ids = queryDict.get('permissionIds', None)
 
         if sharedAll in ('1', '0'):
             sharedAll = bool(int(sharedAll))
@@ -187,22 +186,19 @@ class shareUserEquipmentView(View):
             return response.json(tko.code)
         MasterID = tko.userID
         if sharedAll and MasterID != None:
-            return self.shareUserSQL(MasterID, GuestID, True, permission_ids, response, args, kwargs)
+            return self.shareUserSQL(MasterID, GuestID, True, response, args, kwargs)
         if content != None and MasterID != None:
-            return self.shareUserSQL(MasterID, GuestID, False, permission_ids, response, args, content=content)
+            return self.shareUserSQL(MasterID, GuestID, False, response, args, content=content)
         else:
             return response.json(444, 'sharedAll or content')
 
-    def shareUserSQL(self, MasterID, GuestID, sharedAll, permission_ids, response, *args, **kwargs):
+    def shareUserSQL(self, MasterID, GuestID, sharedAll, response, *args, **kwargs):
         Guest = Device_User.objects.filter(userID=GuestID).order_by('-data_joined')
         Master = Device_Info.objects.filter(userID_id=MasterID).order_by('-data_joined')
         if not Master or not Guest:
             return response.json(104)
         querysetList = []
-        permission_list = []
         uid_push_list = []
-        p_ids = [int(val) for val in permission_ids.split(',')] if permission_ids else []
-        now_time = int(time.time())
         dictLen = 0
         if sharedAll:
             for equipment in Master:
@@ -223,10 +219,6 @@ class shareUserEquipmentView(View):
                     eqDict['userID_id'] = GuestID
                     eqDict['id'] = CommonService.getUserID(getUser=False)
                     querysetList.append(Device_Info(**eqDict))
-                    for permission_id in p_ids:
-                        permission_list.append(DeviceUserPermissions(permission_id=permission_id, user_id=GuestID,
-                                                                     uid=eqDict.get('UID', None),
-                                                                     created_time=now_time))
         else:
             content = kwargs.get('content', None)
             if content != None:
@@ -251,11 +243,6 @@ class shareUserEquipmentView(View):
                             eqDict['userID_id'] = GuestID
                             eqDict['id'] = CommonService.getUserID(getUser=False)
                             querysetList.append(Device_Info(**eqDict))
-                            for permission_id in p_ids:
-                                permission_list.append(DeviceUserPermissions(permission_id=permission_id,
-                                                                             user_id=GuestID,
-                                                                             uid=eqDict.get('UID', None),
-                                                                             created_time=now_time))
                     else:
                         continue
 
@@ -264,7 +251,6 @@ class shareUserEquipmentView(View):
         else:
             try:
                 Device_Info.objects.bulk_create(querysetList)
-                DeviceUserPermissions.objects.bulk_create(permission_list)
                 uid_set_qs = UidSetModel.objects.filter(uid__in=uid_push_list).values('id')
                 for uid_set in uid_set_qs:
                     uid_set_id = uid_set['id']
@@ -380,7 +366,6 @@ class unsharedUserEquipmentView(View):
                         else:
                             errorUID.append(uid)
                             continue
-                        DeviceUserPermissions.objects.filter(user_id=GuestID, uid=uid).delete()
                     except Exception as e:
                         errorInfo = traceback.format_exc()
                         print('查询数据库错误: %s' % errorInfo)
@@ -396,55 +381,3 @@ class unsharedUserEquipmentView(View):
                         return response.json(173, {'removeCount': removeCount, 'error_UID': errorUID})
                     else:
                         return response.json(0, {'removeCount': removeCount})
-
-
-class SharePermissionsView(View):
-    @method_decorator(csrf_exempt)
-    def dispatch(self, *args, **kwargs):
-        return super(SharePermissionsView, self).dispatch(*args, **kwargs)
-
-    def get(self, request, *args, **kwargs):
-        request.encoding = 'utf-8'
-        operation = kwargs.get('operation')
-        return self.validation(request, request.GET, operation)
-
-    def post(self, request, *args, **kwargs):
-        request.encoding = 'utf-8'
-        operation = kwargs.get('operation')
-        return self.validation(request, request.POST, operation)
-
-    def validation(self, request, request_dict, operation):
-        lang = request_dict.get('lang', 'en')
-        response = ResponseObject(lang)
-        if operation == 'get-permission-list':  # 获取分享权限列表
-            return self.get_permission_list(request_dict, response)
-        else:
-            token = request_dict.get('token', None)
-            # 设备主键uid
-            tko = TokenObject(token)
-            if tko.code != 0:
-                return response.json(tko.code)
-            user_id = tko.userID
-            if operation == 'edit-user-permission':  # 获取用户设备分享权限
-                return self.edit_user_permission(user_id, request_dict, response)
-            else:
-                return response.json(404)
-
-    @staticmethod
-    def get_permission_list(request_dict, response):
-        permission_qs = DeviceSharePermission.objects.filter(share_type=2).values('id', 'code').order_by('sort')
-        return response.json(0, list(permission_qs))
-
-    @staticmethod
-    def edit_user_permission(user_id, request_dict, response):
-        uid = request_dict.get('uid', None)
-        permission_ids = request_dict.get('permissionIds', None)
-        if not all([uid, permission_ids]):
-            return response.json(444)
-        permission_ids_list = [int(val) for val in permission_ids.split(',')] if permission_ids else []
-        now_time = int(time.time())
-        DeviceUserPermissions.objects.filter(user_id=user_id, uid=uid).delete()
-        for permission_id in permission_ids_list:
-            DeviceUserPermissions.objects.create(permission_id=permission_id, user_id=user_id, uid=uid,
-                                                 created_time=now_time)
-        return response.json(0)

+ 0 - 1
Model/models.py

@@ -4427,7 +4427,6 @@ class DeviceChannelUserSet(models.Model):
 class DeviceSharePermission(models.Model):
     id = models.AutoField(primary_key=True, verbose_name='自增id')
     code = models.CharField(blank=True, db_index=True, max_length=32, verbose_name=u'权限编码')
-    share_type = models.SmallIntegerField(default=1, verbose_name='分享权限类型')  # 1:分享设备通道权限; 2:分享设备权限
     sort = models.IntegerField(default=99, blank=True, verbose_name=u'排序,越小越靠前')
     created_time = models.IntegerField(default=0, verbose_name='创建时间')
     updated_time = models.IntegerField(default=0, verbose_name='更新时间')