chenjunkai 6 жил өмнө
parent
commit
9cbab0f0d8

+ 0 - 34
Ansjer/test/util/testss.py

@@ -1,34 +0,0 @@
-import json
-from aliyunsdkmts.request.v20140618 import QueryMediaListByURLRequest
-from aliyunsdkcore import client
-import urllib
-
-host = "oss-cn-shenzhen.aliyuncs.com"  # just for example
-
-# accessid = 'LTAIyMkGfEdogyL9'
-# accesskey = '71uIjpsqVOmF7DAITRyRuc259jHOjO'
-accessid = 'LTAIpezLGJWqmrwR'
-accesskey = 'S6vx8nZQw8pwoX07qMMnLdA61TMvX5'
-
-bucket_name = "cnvod1"
-region = 'cn-shenzhen'
-
-def queryMediaListByURL():
-    global client
-    client = client.AcsClient(accessid, accesskey, region)
-    request = QueryMediaListByURLRequest.QueryMediaListByURLRequest()
-    # ossDomain = 'http://<input-bucket>.<region>.aliyuncs.com/';
-    ossDomain = 'http://cnvod1.oss-cn-shenzhen.aliyuncs.com/'
-    #对ossObject进行encode
-    ossObject = encodeByRFC3986("5ZBU8UD6RHMZJ5JW111A/vod1/2018122416/1545639357/ts0.ts")
-    print(ossObject)
-    request.set_FileURLs(ossDomain + ossObject)
-    # response = client.do_action_with_exception(request);
-    response = client.do_action_with_exception(request);
-    json_response = json.loads(response)
-    print(json_response)
-def encodeByRFC3986(ossObject):
-    return urllib.parse.quote(ossObject)
-    # return urllib.quote(ossObject)
-if __name__ == "__main__":
-    queryMediaListByURL()

+ 0 - 3
Controller/AccessLog.py

@@ -41,7 +41,6 @@ class AccessLog(View):
         token = request_dict.get('token', None)
         if token is not None:
             tko = TokenObject(token)
-            tko.valid()
             response.lang = tko.lang
             if tko.code == 0:
                 userID = tko.userID
@@ -156,7 +155,6 @@ def statisticsPath(request):
         return response.json(5)
     if token is not None:
         tko = TokenObject(token)
-        tko.valid()
         response.lang = tko.lang
         if tko.code == 0:
             userID = tko.userID
@@ -188,7 +186,6 @@ def deleteSn(request):
     response = ResponseObject()
     if token and days:
         tko = TokenObject(token)
-        tko.valid()
         response.lang = tko.lang
         if tko.code == 0:
             userID = tko.userID

+ 131 - 150
Controller/AdminManage.py

@@ -3,16 +3,17 @@ from django.views.decorators.csrf import csrf_exempt
 from django.views.generic import TemplateView
 from django.utils.decorators import method_decorator
 from django.contrib.auth.hashers import make_password  # 对密码加密模块
-from Model.models import Device_Info,Role
+from Model.models import Device_Info, Role
 from Service.ModelService import ModelService
 from django.utils import timezone
-from Model.models import Access_Log,Device_User
+from Model.models import Access_Log, Device_User
 from django.views.decorators.http import require_http_methods
 from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
 from Ansjer.config import OFF_LINE_TIME_DELTA
-import datetime,simplejson as json
+import datetime, simplejson as json
 from Service.CommonService import CommonService
+
 '''
 http://192.168.136.40:8077/adminManage/manage?operation=getAllDeviceArea&token=debug
 http://192.168.136.40:8077/adminManage/manage?operation=getAllUserName&token=debug
@@ -40,7 +41,6 @@ class AdminManage(TemplateView):
         response = ResponseObject()
         token = request_dict.get('token', None)
         tko = TokenObject(token)
-        tko.valid()
         response.lang = tko.lang
         if tko.code != 0:
             return response.json(tko.code)
@@ -63,8 +63,7 @@ class AdminManage(TemplateView):
         if operation == 'getAllDeviceArea':
             return self.getAllDeviceArea(userID, response)
 
-
-    def resetUserPwd(self, request_dict, userID,response):
+    def resetUserPwd(self, request_dict, userID, response):
         own_permission = ModelService.check_permission(userID=userID, permID=50)
         if not own_permission:
             return response.json(404)
@@ -83,82 +82,82 @@ class AdminManage(TemplateView):
         else:
             return response.json(444, 'duserID')
 
-    def getAllUserName(self, userID,response):
+    def getAllUserName(self, userID, response):
         # 权限固定为30
         own_permission = ModelService.check_permission(userID=userID, permID=30)
-        if own_permission is True:
-            username_list = Device_User.objects.all().values_list('username', flat=True)
-            if username_list:
-                return response.json(0,{'username_list': list(username_list)})
-            else:
-                return response.json(0)
-        else:
+        if own_permission is not True:
             return response.json(404)
+        username_list = Device_User.objects.all().values_list('username', flat=True)
+        if username_list:
+            return response.json(0, {'username_list': list(username_list)})
+        else:
+            return response.json(0)
+
     #    获取全部用户的在线个数
-    def getAllOnLine(self, userID,response):
+    def getAllOnLine(self, userID, response):
         # 权限固定为30
         own_permission = ModelService.check_permission(userID=userID, permID=30)
-        if own_permission is True:
-            allonline = Device_User.objects.all().values('online')
-            # 两个变量,分别是在线,离线
-            onlinenum = 0
-            noonlinenum=0
-            for q in allonline:
-                if q['online'] ==True:
-                    onlinenum+=1
-                else:
-                    noonlinenum+=1
-            print("在线人数:")
-            print(onlinenum)
-            return response.json(0, {"onlinenum": onlinenum, "no_onlinenum": noonlinenum})
-        else:
+        if own_permission is not True:
             return response.json(404)
+        allonline = Device_User.objects.all().values('online')
+        # 两个变量,分别是在线,离线
+        onlinenum = 0
+        noonlinenum = 0
+        for q in allonline:
+            if q['online'] == True:
+                onlinenum += 1
+            else:
+                noonlinenum += 1
+        print("在线人数:")
+        print(onlinenum)
+        return response.json(0, {"onlinenum": onlinenum, "no_onlinenum": noonlinenum})
+
     #    获取全部用户的在线人数
-    def getOnLine(self, userID,response):
+    def getOnLine(self, userID, response):
         # 权限固定为30
         own_permission = ModelService.check_permission(userID=userID, permID=30)
         if own_permission is True:
             online_list = Device_User.objects.all().values('online', 'last_login')
             # 两个变量,分别是在线,离线
-            onlinenum=0
-            noonlinenum=0
+            onlinenum = 0
+            noonlinenum = 0
             for q in online_list:
-                    # print(q['last_login'] )
-                    # 最后访问时间加5分种
-                    dl_time = q['last_login'] + datetime.timedelta(minutes=OFF_LINE_TIME_DELTA)
-                    # print(dl_time)
-                    # 当前时间
-                    now_time = timezone.localtime(timezone.now())
-                    # print(now_time)
-                    # 如果当前时间大于最后访问的时间
-                    if now_time < dl_time:
-                        onlinenum += 1
-                    else:
-                        noonlinenum += 1
+                # print(q['last_login'] )
+                # 最后访问时间加5分种
+                dl_time = q['last_login'] + datetime.timedelta(minutes=OFF_LINE_TIME_DELTA)
+                # print(dl_time)
+                # 当前时间
+                now_time = timezone.localtime(timezone.now())
+                # print(now_time)
+                # 如果当前时间大于最后访问的时间
+                if now_time < dl_time:
+                    onlinenum += 1
+                else:
+                    noonlinenum += 1
             print("在线人")
             print(onlinenum)
-            return response.json(0, {"onlinenum": onlinenum,"no_onlinenum": noonlinenum})
+            return response.json(0, {"onlinenum": onlinenum, "no_onlinenum": noonlinenum})
         else:
             return response.json(404)
 
     # 获取所有设备地区
-    def getAllDeviceArea(self, userID,response):
+    def getAllDeviceArea(self, userID, response):
         own_permission = ModelService.check_permission(userID=userID, permID=30)
         if own_permission is True:
-            qs = Device_Info.objects.all().values('area','UID')
+            qs = Device_Info.objects.all().values('area', 'UID')
             uid_area_dict = {}
             for q in qs:
                 if q['UID'] and q['area']:
-                    uid_area_dict[q['UID']]=q['area']
+                    uid_area_dict[q['UID']] = q['area']
             if len(uid_area_dict):
                 area_dict = {}
 
-                for k,v in uid_area_dict.items():
+                for k, v in uid_area_dict.items():
                     if v in area_dict:
                         area_dict[v] += 1
                     else:
                         area_dict[v] = 1
-                return response.json(0,{'area':area_dict})
+                return response.json(0, {'area': area_dict})
             else:
                 return response.json(0)
         else:
@@ -168,55 +167,51 @@ class AdminManage(TemplateView):
     统计一天访问量
     http://192.168.136.45:8077/adminManage/manage?token=test&operation=getStatisAccess&timestamp=1528773308
     '''
-    def getStatisAccess(self,userID,request_dict,response):
+
+    def getStatisAccess(self, userID, request_dict, response):
         own_permission = ModelService.check_permission(userID=userID, permID=30)
-        if own_permission is True:
-            time_stamp = int(request_dict.get('timestamp', None))
-            times = datetime.datetime.fromtimestamp(time_stamp)
-            time_dict = CommonService.getTimeDict(times)
-            res = {}
-            for k, v in time_dict.items():
-                start_date = time_dict[k]
-                end_date = time_dict[k] + datetime.timedelta(hours=1)
-                count = Access_Log.objects.filter(time__range=(start_date, end_date)).count()
-                if count:
-                    res[k] = count
-                else:
-                    res[k] = 0
-            return response.json(0, {'count': res})
-        else:
+        if own_permission is not True:
             return response.json(404)
+        time_stamp = int(request_dict.get('timestamp', None))
+        times = datetime.datetime.fromtimestamp(time_stamp)
+        time_dict = CommonService.getTimeDict(times)
+        res = {}
+        for k, v in time_dict.items():
+            start_date = time_dict[k]
+            end_date = time_dict[k] + datetime.timedelta(hours=1)
+            count = Access_Log.objects.filter(time__range=(start_date, end_date)).count()
+            if count:
+                res[k] = count
+            else:
+                res[k] = 0
+        return response.json(0, {'count': res})
 
-    def getAllUID(self,userID,response):
+    def getAllUID(self, userID, response):
         own_permission = ModelService.check_permission(userID=userID, permID=30)
-        if own_permission is True:
-            uid_list = Device_Info.objects.all().values_list('UID', flat=True)
-            if uid_list:
-                return response.json(0, {'count': len(uid_list),'uid_list':list(uid_list)})
-        else:
+        if own_permission is not True:
             return response.json(404)
+        uid_list = Device_Info.objects.all().values_list('UID', flat=True)
+        res = {}
+        if uid_list:
+            res = {'count': len(uid_list), 'uid_list': list(uid_list)}
+        return response.json(0, res)
+
 
 @require_http_methods(["GET"])
 def getUserIds(request):
     token = request.GET.get('token', None)
     response = ResponseObject()
-    if token is not None:
-        tko = TokenObject(token)
-        tko.valid()
-        response.lang = tko.lang
-        if tko.code == 0:
-            userID = tko.userID
-            own_perm = ModelService.check_permission(userID,30)
-            if own_perm is True:
-                # userID_list = Device_User.objects.all().values_list('userID', flat=True)
-                dn = Device_User.objects.all().values('userID', 'username')
-                return response.json(0,{"datas":list(dn)})
-            else:
-                return response.json(404)
-        else:
-            return response.json(tko.code)
-    else:
-        return response.json(309)
+    tko = TokenObject(token)
+    response.lang = tko.lang
+    if tko.code != 0:
+        return response.json(tko.code)
+    userID = tko.userID
+    own_perm = ModelService.check_permission(userID, 30)
+    if own_perm is not True:
+        return response.json(404)
+    dn = Device_User.objects.all().values('userID', 'username')
+    return response.json(0, {"datas": list(dn)})
+
 
 @csrf_exempt
 def search_user_by_content(request):
@@ -235,64 +230,50 @@ def search_user_by_content(request):
         page = int(page)
         line = int(line)
     else:
-        return response.json(10,'page,line is none')
-    if token is not None:
-        tko = TokenObject(token)
-        tko.valid()
-        response.lang = tko.lang
-        if tko.code == 0:
-            userID = tko.userID
-            own_perm = ModelService.check_permission(userID,30)
-            if own_perm is True:
-                check_perm = ModelService.check_permission(userID=userID, permID=20)
-                if check_perm is True:
-                    try:
-                        content = json.loads(content)
-                        search_kwargs = CommonService.get_kwargs(data=content)
-                        queryset = Device_User.objects.filter(**search_kwargs)
-                    except Exception as e:
-                        return response.json(444,repr(e))
-                    if rstime is not None and rstime != '' and retime is not None and retime != '':
-                        startt = datetime.datetime.fromtimestamp(int(rstime))
-                        rstime = startt.strftime("%Y-%m-%d %H:%M:%S.%f")
-                        endt = datetime.datetime.fromtimestamp(int(retime))
-                        retime = endt.strftime("%Y-%m-%d %H:%M:%S.%f")
-                        queryset = queryset.filter(data_joined__range=(rstime, retime))
-                    elif rstime is not None and rstime != '':
-                        startt = datetime.datetime.fromtimestamp(int(rstime))
-                        rstime = startt.strftime("%Y-%m-%d %H:%M:%S.%f")
-                        queryset = queryset.filter(data_joined__gte=rstime)
-                    elif retime is not None and retime != '':
-                        endt = datetime.datetime.fromtimestamp(int(retime))
-                        retime = endt.strftime("%Y-%m-%d %H:%M:%S.%f")
-                        queryset = queryset.filter(data_joined__lte=retime)
-                    if queryset.exists():
-                        count = queryset.count()
-                        res = queryset[(page - 1) * line:page * line]
-                        sqlDict = CommonService.qs_to_dict(res)
-                        for k, v in enumerate(sqlDict["datas"]):
-                            if len(v['fields']['role']) > 0:
-                                role_query_set = Role.objects.get(rid=v['fields']['role'][0])
-                                sqlDict["datas"][k]['fields']['role'].append(role_query_set.roleName)
-                            for val in res:
-                                if v['pk'] == val.userID:
-                                    if sqlDict["datas"][k]['fields']['online'] is True:
-                                        dl_time = val.last_login + datetime.timedelta(minutes=5)
-                                        now_time = timezone.localtime(timezone.now())
-                                        if now_time > dl_time:
-                                            sqlDict["datas"][k]['fields']['online'] = False
-                        sqlDict['count'] = count
-                        return response.json(0, sqlDict)
-                    return response.json(0, {'datas': [], 'count': 0})
-                else:
-                    return response.json(404)
-            else:
-                return response.json(404)
-        else:
-            return response.json(tko.code)
-    else:
-        return response.json(309)
-
-
-
-
+        return response.json(10, 'page,line is none')
+    tko = TokenObject(token)
+    response.lang = tko.lang
+    if tko.code != 0:
+        return response.json(tko.code)
+    userID = tko.userID
+    own_perm = ModelService.check_permission(userID=userID, permID=20)
+    if own_perm is not True:
+        return response.json(404)
+    try:
+        content = json.loads(content)
+        search_kwargs = CommonService.get_kwargs(data=content)
+        queryset = Device_User.objects.filter(**search_kwargs)
+    except Exception as e:
+        return response.json(444, repr(e))
+    if rstime is not None and rstime != '' and retime is not None and retime != '':
+        startt = datetime.datetime.fromtimestamp(int(rstime))
+        rstime = startt.strftime("%Y-%m-%d %H:%M:%S.%f")
+        endt = datetime.datetime.fromtimestamp(int(retime))
+        retime = endt.strftime("%Y-%m-%d %H:%M:%S.%f")
+        queryset = queryset.filter(data_joined__range=(rstime, retime))
+    elif rstime is not None and rstime != '':
+        startt = datetime.datetime.fromtimestamp(int(rstime))
+        rstime = startt.strftime("%Y-%m-%d %H:%M:%S.%f")
+        queryset = queryset.filter(data_joined__gte=rstime)
+    elif retime is not None and retime != '':
+        endt = datetime.datetime.fromtimestamp(int(retime))
+        retime = endt.strftime("%Y-%m-%d %H:%M:%S.%f")
+        queryset = queryset.filter(data_joined__lte=retime)
+    if queryset.exists():
+        count = queryset.count()
+        res = queryset[(page - 1) * line:page * line]
+        sqlDict = CommonService.qs_to_dict(res)
+        for k, v in enumerate(sqlDict["datas"]):
+            if len(v['fields']['role']) > 0:
+                role_query_set = Role.objects.get(rid=v['fields']['role'][0])
+                sqlDict["datas"][k]['fields']['role'].append(role_query_set.roleName)
+            for val in res:
+                if v['pk'] == val.userID:
+                    if sqlDict["datas"][k]['fields']['online'] is True:
+                        dl_time = val.last_login + datetime.timedelta(minutes=5)
+                        now_time = timezone.localtime(timezone.now())
+                        if now_time > dl_time:
+                            sqlDict["datas"][k]['fields']['online'] = False
+        sqlDict['count'] = count
+        return response.json(0, sqlDict)
+    return response.json(0, {'datas': [], 'count': 0})

+ 137 - 155
Controller/AppInfo.py

@@ -7,6 +7,7 @@ from Model.models import App_Info
 import traceback
 from Object.TokenObject import TokenObject
 from Object.ResponseObject import ResponseObject
+
 '''
 http://192.168.136.45:8077/appInfo?operation=add&token=test&appBundleId=123456&appName=%E8%AF%BA%E5%9F%BA%E4%BA%9A1%E5%8F%B7&systemLanguage=US&content=dladfjklsjfdsajkdfasjkljlk&app_type=2&newAppversion=1234&bundleVersion=1234
 http://192.168.136.45:8077/appInfo?operation=update&token=test&appBundleId=1234&appName=%E8%AF%BA%E5%9F%BA%E4%BA%9A3%E5%8F%B7&systemLanguage=US&content=dladfjklsjfdsajkdfasjkljlk&app_type=2&newAppversion=555&id=6
@@ -31,35 +32,29 @@ class AppInfo(View):
     def validation(self, request_dict, *args, **kwargs):
         operation = request_dict.get('operation', None)
         response = ResponseObject()
-        if operation is not None:
-            if operation == 'getAppNewVersion':
-                return self.getAppNewVersion(request_dict,response)
-            else:
-                token = request_dict.get('token', None)
-                if token is not None:
-                    tko = TokenObject(token)
-                    tko.valid()
-                    response.lang = tko.lang
-                    if tko.code == 0:
-                        userID = tko.userID
-                        if userID is not None:
-                            if operation == 'query':
-                                return self.query(request_dict, userID,response)
-                            elif operation == 'add':
-                                return self.add(request_dict, userID,response)
-                            elif operation == 'update':
-                                return self.update(request_dict, userID,response)
-                            elif operation == 'delete':
-                                return self.delete(request_dict, userID,response)
-                        return response.json(444,'userID')
-                    else:
-                        return response.json(tko.code)
-                else:
-                    return response.json(309)
+        if not operation:
+            return response.json(444, 'operation')
+        if operation == 'getAppNewVersion':
+            return self.getAppNewVersion(request_dict, response)
         else:
-            return response.json(444,'operation')
+            token = request_dict.get('token', None)
+            tko = TokenObject(token)
+            response.lang = tko.lang
+            if tko.code != 0:
+                return response.json(tko.code)
+            userID = tko.userID
+            if not userID:
+                return response.json(104)
+            if operation == 'query':
+                return self.query(request_dict, userID, response)
+            elif operation == 'add':
+                return self.add(request_dict, userID, response)
+            elif operation == 'update':
+                return self.update(request_dict, userID, response)
+            elif operation == 'delete':
+                return self.delete(request_dict, userID, response)
 
-    def getAppNewVersion(self, request_dict,response):
+    def getAppNewVersion(self, request_dict, response):
         appBundleId = request_dict.get('appBundleId', None)
         app_type = request_dict.get('app_type', None)
         if appBundleId is not None and app_type is not None:
@@ -71,150 +66,137 @@ class AppInfo(View):
                 return response.json(424, {'details': errorInfo})
             else:
                 return response.json(0, {'appBundleId': app_info.appBundleId,
-                                        'appName': app_info.appName,
-                                        'newAppversion': app_info.newAppversion,
-                                        'systemLanguage': app_info.systemLanguage,
-                                        'content': app_info.content,
-                                        'app_type': app_info.app_type,
-                                        'downloadLink':app_info.downloadLink,
-                                        'id': app_info.id,
-                                        'bundleVersion': app_info.bundleVersion})
+                                         'appName': app_info.appName,
+                                         'newAppversion': app_info.newAppversion,
+                                         'systemLanguage': app_info.systemLanguage,
+                                         'content': app_info.content,
+                                         'app_type': app_info.app_type,
+                                         'downloadLink': app_info.downloadLink,
+                                         'id': app_info.id,
+                                         'bundleVersion': app_info.bundleVersion})
         else:
-            return response.json(444,'app_type,appBundleId')
+            return response.json(444, 'app_type,appBundleId')
 
-    def add(self, request_dict, userID,response):
+    def add(self, request_dict, userID, response):
         own_perm = ModelService.check_permission(userID=userID, permID=40)
-        if own_perm is True:
-            appBundleId = request_dict.get('appBundleId', None)
-            appName = request_dict.get('appName', None)
-            systemLanguage = request_dict.get('systemLanguage', None)
-            newAppversion = request_dict.get('newAppversion', None)
-            content = request_dict.get('content', None)
-            app_type = request_dict.get('app_type', None)
-            bundleVersion = request_dict.get('bundleVersion', None)
-            downloadLink = request_dict.get('downloadLink', None)
-            param_flag = CommonService.get_param_flag(
-                data=[appBundleId, appName, systemLanguage, newAppversion, content, app_type, bundleVersion])
-            if param_flag is True:
+        if own_perm is not True:
+            return response.json(404)
+        appBundleId = request_dict.get('appBundleId', None)
+        appName = request_dict.get('appName', None)
+        systemLanguage = request_dict.get('systemLanguage', None)
+        newAppversion = request_dict.get('newAppversion', None)
+        content = request_dict.get('content', None)
+        app_type = request_dict.get('app_type', None)
+        bundleVersion = request_dict.get('bundleVersion', None)
+        downloadLink = request_dict.get('downloadLink', None)
+        param_flag = CommonService.get_param_flag(
+            data=[appBundleId, appName, systemLanguage, newAppversion, content, app_type, bundleVersion])
+        if param_flag is not True:
+            return response.json(444)
+
+        try:
+            has_app_info = App_Info.objects.filter(appBundleId=appBundleId)
+        except Exception:
+            errorInfo = traceback.format_exc()
+            print(errorInfo)
+            return response.json(424, {'details': errorInfo})
+        else:
+            if has_app_info.exists():
+                return response.json(60)
+            else:
                 try:
-                    has_app_info = App_Info.objects.filter(appBundleId=appBundleId)
+                    app_Info = App_Info(
+                        appBundleId=appBundleId,
+                        appName=appName,
+                        newAppversion=newAppversion,
+                        systemLanguage=systemLanguage,
+                        content=content,
+                        app_type=app_type,
+                        bundleVersion=bundleVersion,
+                        downloadLink=downloadLink,
+                    )
+                    app_Info.save()
                 except Exception:
                     errorInfo = traceback.format_exc()
                     print(errorInfo)
-                    return response.json(424, {'details': errorInfo})
+                    return response.json(500, {'details': errorInfo})
                 else:
-                    if has_app_info.exists():
-                        return response.json(60)
+                    app_Info.save()
+                    if app_Info.id:
+                        res = {'appBundleId': app_Info.appBundleId,
+                               'appName': app_Info.appName,
+                               'newAppversion': app_Info.newAppversion,
+                               'systemLanguage': app_Info.systemLanguage,
+                               'content': app_Info.content,
+                               'app_type': app_Info.app_type,
+                               'id': app_Info.id,
+                               'downloadLink': downloadLink,
+                               'bundleVersion': app_Info.bundleVersion}
+                        return response.json(0, res)
                     else:
-                        try:
-                            app_Info = App_Info(
-                                appBundleId=appBundleId,
-                                appName=appName,
-                                newAppversion=newAppversion,
-                                systemLanguage=systemLanguage,
-                                content=content,
-                                app_type=app_type,
-                                bundleVersion=bundleVersion,
-                                downloadLink=downloadLink,
-                            )
-                            app_Info.save()
-                        except Exception:
-                            errorInfo = traceback.format_exc()
-                            print(errorInfo)
-                            return response.json(500, {'details': errorInfo})
-                        else:
-                            app_Info.save()
-                            if app_Info.id:
-                                return response.json(0,
-                                                    {
-                                                        'appBundleId': app_Info.appBundleId,
-                                                        'appName': app_Info.appName,
-                                                        'newAppversion': app_Info.newAppversion,
-                                                        'systemLanguage': app_Info.systemLanguage,
-                                                        'content': app_Info.content,
-                                                        'app_type': app_Info.app_type,
-                                                        'id': app_Info.id,
-                                                        'downloadLink':downloadLink,
-                                                        'bundleVersion': app_Info.bundleVersion
-                                                    })
-                            else:
-                                return response.json(500)
-            return response.json(444)
-        else:
-            return response.json(404)
+                        return response.json(500)
 
-    def query(self, request_dict, userID,response):
+    def query(self, request_dict, userID, response):
         own_perm = ModelService.check_permission(userID=userID, permID=30)
-        if own_perm is True:
-            page = int(request_dict.get('page', None))
-            line = int(request_dict.get('line', None))
-            if page is not None and line is not None:
-                queryset = App_Info.objects.all()
-                if queryset.exists():
-                    count = queryset.count()
-                    res = queryset[(page - 1) * line:page * line]
-                    send_json = CommonService.qs_to_dict(res)
-                    send_json['count'] = count
-                    return response.json(0, send_json)
-                return response.json(0)
-            else:
-                return response.json(444,'page,line')
-        else:
+        if own_perm is not True:
             return response.json(404)
+        page = int(request_dict.get('page', None))
+        line = int(request_dict.get('line', None))
+        if not page or not line:
+            return response.json(444, 'page,line')
+        queryset = App_Info.objects.all()
+        if queryset.exists():
+            count = queryset.count()
+            res = queryset[(page - 1) * line:page * line]
+            send_json = CommonService.qs_to_dict(res)
+            send_json['count'] = count
+            return response.json(0, send_json)
+        return response.json(0)
 
     def update(self, request_dict, userID, response):
         own_perm = ModelService.check_permission(userID=userID, permID=30)
-        if own_perm is True:
-            id = request_dict.get('id', None)
-            appBundleId = request_dict.get('appBundleId', None)
-            appName = request_dict.get('appName', None)
-            systemLanguage = request_dict.get('systemLanguage', None)
-            newAppversion = request_dict.get('newAppversion', None)
-            content = request_dict.get('content', None)
-            app_type = request_dict.get('app_type', None)
-            bundleVersion = request_dict.get('bundleVersion', None)
-            downloadLink = request_dict.get('downloadLink', None)
-            param_flag = CommonService.get_param_flag(
-                data=[appBundleId, appName, systemLanguage, newAppversion, content, app_type, bundleVersion,downloadLink])
-            if param_flag is True:
-                try:
-                    app_info = App_Info.objects.get(id=id)
-                except Exception:
-                    errorInfo = traceback.format_exc()
-                    print(errorInfo)
-                    return response.json(424, {'details': errorInfo})
-                else:
-                    if app_info.id:
-                        app_info.appBundleId = appBundleId
-                        app_info.appName = appName
-                        app_info.systemLanguage = systemLanguage
-                        app_info.newAppversion = newAppversion
-                        app_info.content = content
-                        app_info.app_type = app_type
-                        app_info.bundleVersion = bundleVersion
-                        app_info.downloadLink = downloadLink
-                        app_info.save()
-                        return response.json(0, {'update_id': app_info.id, 'update_time': str(app_info.update_time)})
-            else:
-                return response.json(444)
-        else:
+        if own_perm is not True:
             return response.json(404)
+        id = request_dict.get('id', None)
+        appBundleId = request_dict.get('appBundleId', None)
+        appName = request_dict.get('appName', None)
+        systemLanguage = request_dict.get('systemLanguage', None)
+        newAppversion = request_dict.get('newAppversion', None)
+        content = request_dict.get('content', None)
+        app_type = request_dict.get('app_type', None)
+        bundleVersion = request_dict.get('bundleVersion', None)
+        downloadLink = request_dict.get('downloadLink', None)
+        param_flag = CommonService.get_param_flag(
+            data=[appBundleId, appName, systemLanguage, newAppversion, content, app_type, bundleVersion,
+                  downloadLink])
+        if param_flag is not True:
+            return response.json(444)
+        app_info = App_Info.objects.get(id=id)
+        if app_info.id:
+            app_info.appBundleId = appBundleId
+            app_info.appName = appName
+            app_info.systemLanguage = systemLanguage
+            app_info.newAppversion = newAppversion
+            app_info.content = content
+            app_info.app_type = app_type
+            app_info.bundleVersion = bundleVersion
+            app_info.downloadLink = downloadLink
+            app_info.save()
+            return response.json(0, {'update_id': app_info.id, 'update_time': str(app_info.update_time)})
 
-    def delete(self, request_dict, userID,response):
+    def delete(self, request_dict, userID, response):
         own_perm = ModelService.check_permission(userID=userID, permID=10)
-        if own_perm is True:
-            id_list = request_dict.getlist('id', None)
-            if id_list :
-                try:
-                    for id in id_list:
-                        App_Info.objects.filter(id=id).delete()
-                except Exception as e:
-                    errorInfo = traceback.format_exc()
-                    print(errorInfo)
-                    return response.json(424, {'details': repr(e)})
-                else:
-                    return response.json(0)
-            else:
-                return response.json(444,'id must list')
-        else:
+        if own_perm is not True:
             return response.json(404)
+        id_list = request_dict.getlist('id', None)
+        if not id_list:
+            return response.json(444, 'id must list')
+        try:
+            for id in id_list:
+                App_Info.objects.filter(id=id).delete()
+        except Exception as e:
+            errorInfo = traceback.format_exc()
+            print(errorInfo)
+            return response.json(424, {'details': repr(e)})
+        else:
+            return response.json(0)

+ 10 - 10
Controller/CheckUserData.py

@@ -46,21 +46,21 @@ class ModifyPwdView(TemplateView):
 
     def post(self, request, *args, **kwargs):
         request.encoding = 'utf-8'
-        userEmail = request.POST.get('userEmail', None)
-        oldPwd = request.POST.get('oldPwd', None)
-        newPwd = request.POST.get('newPwd', None)
+        request_dict = request.POST
 
-        return self.ValidationError(userEmail, oldPwd, newPwd)
+        return self.ValidationError(request_dict)
 
     def get(self, request, *args, **kwargs):
-        request.encoding = 'gb2312'
-        userEmail = request.GET.get('userEmail', None)
-        oldPwd = request.GET.get('oldPwd', None)
-        newPwd = request.GET.get('newPwd', None)
+        request.encoding = 'utf-8'
+        request_dict = request.GET
+
+        return self.ValidationError(request_dict)
 
-        return self.ValidationError(userEmail, oldPwd, newPwd)
+    def ValidationError(self, request_dict):
+        userEmail = request_dict.get('userEmail', None)
+        oldPwd = request_dict.get('oldPwd', None)
+        newPwd = request_dict.get('newPwd', None)
 
-    def ValidationError(self, userEmail, oldPwd, newPwd):
         response = ResponseObject()
         dataValid = DataValid()
         if dataValid.password_validate(newPwd):

+ 0 - 1
Controller/CloudVod.py

@@ -97,7 +97,6 @@ class CloudVodView(View):
             token = request_dict.get('token', None)
             # 设备主键uid
             tko = TokenObject(token)
-            tko.valid()
             response.lang = tko.lang
             if tko.code != 0:
                 return response.json(tko.code)

+ 0 - 1
Controller/DeviceLog.py

@@ -63,7 +63,6 @@ def DeviceLog(request, uid):
         endtime = request.GET.get('endtime', None)
         if token is not None:
             tko = TokenObject(token)
-            tko.valid()
             response.lang = tko.lang
             if tko.code == 0:
                 userID = tko.userID

+ 0 - 2
Controller/DeviceManage.py

@@ -50,7 +50,6 @@ class DeviceManage(View):
             token = request_dict.get('token', None)
             if token is not None:
                 tko = TokenObject(token)
-                tko.valid()
                 response.lang = tko.lang
                 if tko.code == 0:
                     userID = tko.userID
@@ -157,7 +156,6 @@ def Devices(request, UID):
         response = ResponseObject()
         if token is not None:
             tko = TokenObject(token)
-            tko.valid()
             response.lang = tko.lang
             if tko.code == 0:
                 userID = tko.userID

+ 0 - 1
Controller/DeviceMeal.py

@@ -53,7 +53,6 @@ class DeviceMeal(View):
         operation = request_dict.get('operation', None)
         token = request_dict.get('token', None)
         tko = TokenObject(token)
-        tko.valid()
         response.lang = tko.lang
         if tko.code != 0:
             return response.json(tko.code)

+ 0 - 2
Controller/EquipmentInfo.py

@@ -39,7 +39,6 @@ class EquipmentInfo(View):
         token = request_dict.get('token', None)
         response = ResponseObject()
         tko = TokenObject(token)
-        tko.valid()
         if tko.code != 0:
             return response.json(tko.code)
         userID = tko.userID
@@ -299,7 +298,6 @@ class DetectStatusView(View):
         if token is None:
             return response.json(309)
         tko = TokenObject(token)
-        tko.valid()
         response.lang = tko.lang
         if tko.code != 0:
             return response.json(tko.code)

+ 32 - 38
Controller/EquipmentManager.py

@@ -67,7 +67,7 @@ def addNewUserEquipment(userID, deviceContent, response):
             sqlDict = CommonService.qs_to_dict([userDevice])
             return response.json(0, sqlDict)
     else:
-        return response.json(113)
+        return response.json(104)
 
 
 def delUserEquipment(userID, id, response):
@@ -92,7 +92,7 @@ def delUserEquipment(userID, id, response):
             if UserValid.exists():
                 return response.json(172)
             else:
-                return response.json(113)
+                return response.json(104)
 
 
 def showAllUserEquipment(userID, response):
@@ -104,11 +104,11 @@ def showAllUserEquipment(userID, response):
         return response.json(500, repr(e))
     else:
         if not userValid.exists():
-            return response.json(113)
+            return response.json(104)
         own_perm = ModelService.check_permission(userID=userID, permID=30)
         # if userValid[0].is_superuser != 100 and userValid[0].is_superuser != 1:
         if own_perm is not True:
-            return response.json(612)
+            return response.json(404)
         qs = Device_Info.objects.all()
         res = CommonService.qs_to_dict(qs)
         return response.json(0, res)
@@ -124,10 +124,10 @@ def showAllUserEquipmentPC(userID, fieldDict, response):
         return response.json(500, repr(e))
     else:
         if not user_valid:
-            return response.json(113)
+            return response.json(104)
         own_permission = ModelService.check_permission(userID=userID, permID=30)
         if not own_permission:
-            return response.json(612)
+            return response.json(404)
         page = int(fieldDict['page'])
         line = int(fieldDict['line'])
         device_info_query_set = Device_Info.objects.all()
@@ -174,40 +174,39 @@ def queryUserEquipmentInterface(request, *callback_args,
     response = ResponseObject()
     if request.method == 'POST':
         request.encoding = 'utf-8'
-        token = request.POST.get('token', None)
+        request_dict = request.POST
     elif request.method == 'GET':
-        request.encoding = 'gb2312'
-        token = request.GET.get('token', None)
+        request.encoding = 'utf-8'
+        request_dict = request.GET
     else:
         return response.json(801)
+    token = request_dict.get('token', None)
     tko = TokenObject(token)
-    tko.valid()
     response.lang = tko.lang
     if tko.code != 0:
         return response.json(tko.code)
     userID = tko.userID
-    if userID is not None:
-        deviceValid = Device_Info.objects.filter(userID_id=userID)
-        res = CommonService.qs_to_dict(deviceValid)
-        datas = res['datas']
-        uid_list = []
-        for q in datas:
-            uid_list.append(q['fields']['UID'])
-        ubqs = UID_Bucket.objects.filter(uid__in=uid_list). \
-            values('bucket__content', 'status', 'channel', 'endTime', 'uid')
-        ubql = CommonService.qs_to_list(ubqs)
-        # print(uid_list)
-        res = []
-        for p in datas:
-            p['fields']['vod'] = []
-            for dm in ubql:
-                if p['fields']['UID'] == dm['uid']:
-                    p['fields']['vod'].append(dm)
-            res.append(p)
-        # print(res)
-        return response.json(0, {'datas': res})
-    else:
-        return response.json(309)
+    if not userID:
+        return response.json(104)
+    deviceValid = Device_Info.objects.filter(userID_id=userID)
+    res = CommonService.qs_to_dict(deviceValid)
+    datas = res['datas']
+    uid_list = []
+    for q in datas:
+        uid_list.append(q['fields']['UID'])
+    ubqs = UID_Bucket.objects.filter(uid__in=uid_list). \
+        values('bucket__content', 'status', 'channel', 'endTime', 'uid')
+    ubql = CommonService.qs_to_list(ubqs)
+    # print(uid_list)
+    res = []
+    for p in datas:
+        p['fields']['vod'] = []
+        for dm in ubql:
+            if p['fields']['UID'] == dm['uid']:
+                p['fields']['vod'].append(dm)
+        res.append(p)
+    # print(res)
+    return response.json(0, {'datas': res})
 
 
 @csrf_exempt
@@ -226,7 +225,6 @@ def addNewUserEquipmentInterface(request, *callback_args,
     deviceContent = request_dict.get('content', None)
     if token is not None and deviceContent is not None:
         tko = TokenObject(token)
-        tko.valid()
         response.lang = tko.lang
         if tko.code == 0:
             userID = tko.userID
@@ -263,7 +261,6 @@ def delUserEquipmentInterface(request, *callback_args,
     id = request_dict.get('id', None)
     if token is not None and id is not None:
         tko = TokenObject(token)
-        tko.valid()
         response.lang = tko.lang
         if tko.code == 0:
             userID = tko.userID
@@ -300,7 +297,6 @@ def modifyUserEquipmentInterface(request, *callback_args,
     if not deviceContent or not id:
         return response.json(444, 'content,id')
     tko = TokenObject(token)
-    tko.valid()
     response.lang = tko.lang
     if tko.code != 0:
         return response.json(tko.code)
@@ -327,7 +323,7 @@ def modifyUserEquipmentInterface(request, *callback_args,
             if UserValid.exists():
                 return response.json(172)
             else:
-                return response.json(113)
+                return response.json(104)
 
 
 @csrf_exempt
@@ -343,7 +339,6 @@ def showAllUserEquipmentInterface(request, *callback_args, **callback_kwargs):
     response = ResponseObject()
     if token != None:
         tko = TokenObject(token)
-        tko.valid()
         response.lang = tko.lang
         if tko.code == 0:
             userID = tko.userID
@@ -374,7 +369,6 @@ def findEquipmentInfoInterface(request, *callback_args, **callback_kwargs):
 
     if token != None:
         tko = TokenObject(token)
-        tko.valid()
         response.lang = tko.lang
         if tko.code == 0:
             if deviceContent:

+ 0 - 1
Controller/EquipmentOTA.py

@@ -39,7 +39,6 @@ class EquipmentOTA(View):
         if token is None:
             return response.json(309)
         tko = TokenObject(token)
-        tko.valid()
         response.lang = tko.lang
         if tko.code != 0:
             return response.json(tko.code)

+ 1 - 2
Controller/EquipmentSensor.py

@@ -67,7 +67,6 @@ class EquipmentSensor(View):
         token = request_dict.get('token', None)
         if token is not None:
             tko = TokenObject(token)
-            tko.valid()
             response.lang = tko.lang
             if tko.code == 0:
                 userID = tko.userID
@@ -211,7 +210,7 @@ class EquipmentSensor(View):
                     return response.json(0, send_json)
                 else:
                     return response.json(0, {})
-            return response.json(612)
+            return response.json(404)
         else:
             return response.json(444)
 

+ 23 - 31
Controller/EquipmentStatus.py

@@ -37,18 +37,12 @@ def EquipmentOnline(request):
     if request.method == 'POST':
         request.encoding = 'utf-8'
         UID = request.POST.get('UID', None)
-    device_info = Device_Info.objects.filter(UID=UID)
-    if device_info.exists():
-        try:
-            now_time = timezone.localtime(timezone.now())
-            device_info.update(Online=True, update_time=now_time)
-        except Exception as e:
-            print(repr(e))
-        return response.json(0)
-    else:
+    qs = Device_Info.objects.filter(UID=UID)
+    if not qs.exists():
         return response.json(13)
 
 
+
 @csrf_exempt
 def EquipmentOffline(request):
     response = ResponseObject()
@@ -58,15 +52,14 @@ def EquipmentOffline(request):
     if request.method == 'POST':
         request.encoding = 'utf-8'
         UID = request.POST.get('UID', None)
-    device_info = Device_Info.objects.filter(UID=UID)
-    if device_info.exists():
-        try:
-            device_info.update(Online=False)
-        except Exception as e:
-            print(repr(e))
-        return response.json(0)
-    else:
+    qs = Device_Info.objects.filter(UID=UID)
+    if not qs.exists():
         return response.json(13)
+    try:
+        qs.update(Online=False)
+    except Exception as e:
+        print(repr(e))
+    return response.json(0)
 
 
 @csrf_exempt
@@ -74,21 +67,20 @@ def updateIP(request):
     response = ResponseObject()
     if request.method == 'GET':
         request.encoding = 'utf-8'
-        UID = request.GET.get('UID', None)
-        ip = request.GET.get('ip', None)
+        request_dict = request.GET
     if request.method == 'POST':
         request.encoding = 'utf-8'
-        UID = request.POST.get('UID', None)
-        ip = request.POST.get('ip', None)
-    device_info = Device_Info.objects.filter(UID=UID)
-    if device_info.exists():
-        area = ''
-        try:
-            area = CommonService.getAddr(ip=ip)
-            device_info.update(ip=ip, area=area)
-        except Exception as e:
-            print(repr(e))
-        return response.json(0,{'area': area})
-    else:
+        request_dict = request.POST
+    UID = request_dict.get('UID', None)
+    ip = request_dict.get('ip', None)
+    qs = Device_Info.objects.filter(UID=UID)
+    if not qs.exists():
         return response.json(13)
+    area = ''
+    try:
+        area = CommonService.getAddr(ip=ip)
+        qs.update(ip=ip, area=area)
+    except Exception as e:
+        print(repr(e))
+    return response.json(0, {'area': area})
 

+ 0 - 1
Controller/FeedBackInfo.py

@@ -39,7 +39,6 @@ class FeedBackInfo(View):
         token = request_dict.get('token', None)
         if token is not None:
             tko = TokenObject(token)
-            tko.valid()
             response.lang = tko.lang
             if tko.code == 0:
                 userID = tko.userID

+ 0 - 3
Controller/HlsManage.py

@@ -117,7 +117,6 @@ class HlsManage(View):
         token = request_dict.get('token', None)
         if token is not None:
             tko = TokenObject(token)
-            tko.valid()
             response.lang = tko.lang
             if tko.code == 0:
                 userID = tko.userID
@@ -156,7 +155,6 @@ class HlsManage(View):
         token = request_dict.get('token', None)
         if token is not None:
             tko = TokenObject(token)
-            tko.valid()
             response.lang = tko.lang
             if tko.code == 0:
                 userID = tko.userID
@@ -205,7 +203,6 @@ class HlsManage(View):
         token = request_dict.get('token', None)
         if token is not None:
             tko = TokenObject(token)
-            tko.valid()
             response.lang = tko.lang
             if tko.code == 0:
                 userID = tko.userID

+ 0 - 1
Controller/LogAccess.py

@@ -33,7 +33,6 @@ def LogAccess(request):
         response = ResponseObject()
         if token is not None:
             tko = TokenObject(token)
-            tko.valid()
             response.lang = tko.lang
             if tko.code == 0:
                 userID = tko.userID

+ 0 - 2
Controller/LogManager.py

@@ -137,7 +137,6 @@ class HelpView(TemplateView):
         response = ResponseObject()
         if reInfoType is not None and token is not None:
             tko = TokenObject(token)
-            tko.valid()
             response.lang = tko.lang
             if tko.code == 0:
                 userID = tko.userID
@@ -195,7 +194,6 @@ def upload_help_chm(request):
     response = ResponseObject()
     if token is not None:
         tko = TokenObject(token)
-        tko.valid()
         response.lang = tko.lang
         if tko.code == 0:
             userID = tko.userID

+ 0 - 2
Controller/MealManage.py

@@ -50,7 +50,6 @@ class MealManage(View):
         if token is None:
             return response.json(309)
         tko = TokenObject(token)
-        tko.valid()
         response.lang = tko.lang
         if tko.code != 0:
             return response.json(tko.code)
@@ -226,7 +225,6 @@ class MealView(View):
         token = request_dict.get('token', None)
         # 设备主键uid
         tko = TokenObject(token)
-        tko.valid()
         response.lang = tko.lang
         if tko.code != 0:
             return response.json(tko.code)

+ 4 - 8
Controller/OTAEquipment.py

@@ -24,7 +24,6 @@ def addNewEquipmentVersion(deviceContent, token, response):
     """
     if token is not None:
         tko = TokenObject(token)
-        tko.valid()
         # 设置语言
         response.lang = tko.lang
         if tko.code == 0:
@@ -350,7 +349,6 @@ class getUploadFiletoDirView(TemplateView):
         fileVersion = request_dict.get('fileVersion', None)
         if fileName != None and fileType != None and token != None:
             tko = TokenObject(token)
-            tko.valid()
             response.lang = tko.lang
             if tko.code == 0:
                 userID = tko.userID
@@ -386,10 +384,10 @@ class getUploadFiletoDirView(TemplateView):
             return response.json(500, {'details': repr(e)})
         else:
             if not User:
-                return response.json(113)
+                return response.json(104)
             own_perm = ModelService.check_permission(userID, permID=210)
             if own_perm is not True:
-                return response.json(605)
+                return response.json(404)
             updataFile = fileName.name
             updataFile = updataFile.replace(' ', '+')
             versionIndex = updataFile.find('.', updataFile.find('.', updataFile.find('.') + 1) + 1)
@@ -491,9 +489,9 @@ def showAllEquipmentVersion(userID, response):
                 sqlDict = dict(zip(["datas"], [sqlList]))
                 return response.json(0, sqlDict)
             else:
-                return response.json(612)
+                return response.json(404)
         else:
-            return response.json(113)
+            return response.json(104)
 
 
 # 检测ota更新包
@@ -515,7 +513,6 @@ def getNewVerInterface(request):
         return response.json(801)
     if code is not None and token is not None:
         tko = TokenObject(token)
-        tko.valid()
         response.lang = tko.lang
         if tko.code == 0:
             try:
@@ -586,7 +583,6 @@ class uploadOTAInterfaceView(TemplateView):
         print(fileName)
         if fileName is not None and token is not None and fileType is not None:
             tko = TokenObject(token)
-            tko.valid()
             response.lang = tko.lang
             if tko.code == 0:
                 userID = tko.userID

+ 0 - 1
Controller/OrderContrller.py

@@ -49,7 +49,6 @@ class OrderView(View):
         token = request_dict.get('token', None)
         # 设备主键uid
         tko = TokenObject(token)
-        tko.valid()
         response.lang = tko.lang
         if tko.code != 0:
             return response.json(tko.code)

+ 286 - 369
Controller/PermissionManager.py

@@ -2,7 +2,7 @@
 # -*- coding: utf-8 -*-
 from itertools import chain
 from django.views.generic.base import View
-import django.dispatch, traceback,simplejson as json
+import django.dispatch, traceback, simplejson as json
 from django.views.decorators.csrf import csrf_exempt
 from django.utils.decorators import method_decorator
 from Model.models import Permissions, Role, Device_User
@@ -11,7 +11,6 @@ from Service.ModelService import ModelService
 from Object.TokenObject import TokenObject
 from Object.ResponseObject import ResponseObject
 
-
 # 创建信号
 roles_done = django.dispatch.Signal(providing_args=[])
 perms_done = django.dispatch.Signal(providing_args=[])
@@ -31,6 +30,7 @@ class Roles(object):
             rid.append(role.rid)
     except Exception as e:
         pass
+
     def __init__(self):
         '''
         信号监听, 注册信号
@@ -81,8 +81,8 @@ class Roles(object):
             listSets.append(data)
         return listSets
 
-    def queryAllRoles(self, rolenames=None, exclude=None,response=ResponseObject()):
-        roles =[]
+    def queryAllRoles(self, rolenames=None, exclude=None, response=ResponseObject()):
+        roles = []
         for role in chain(Roles.roles):
             if rolenames and role.roleName not in rolenames:
                 continue
@@ -90,23 +90,23 @@ class Roles(object):
                 continue
             roles.append(role)
         if len(roles) > 0:
-            resultDict=CommonService.qs_to_dict(roles)
+            resultDict = CommonService.qs_to_dict(roles)
             for k, v in enumerate(resultDict["datas"]):
                 if len(v['fields']['permission']) > 0:
-                    resultDict["datas"][k]['fields']['permissionJson']={}
+                    resultDict["datas"][k]['fields']['permissionJson'] = {}
                     for pid in v['fields']['permission']:
-                        permission_query_set= Permissions.objects.get(id=pid)
-                        resultDict["datas"][k]['fields']['permissionJson'][pid]=permission_query_set.permName
-            return response.json(0,resultDict)
-        
+                        permission_query_set = Permissions.objects.get(id=pid)
+                        resultDict["datas"][k]['fields']['permissionJson'][pid] = permission_query_set.permName
+            return response.json(0, resultDict)
+
         else:
             return response.json(0, {})
 
-    def addRoles(self, content=None,response=ResponseObject()):
+    def addRoles(self, content=None, response=ResponseObject()):
         try:
             roleContent = json.loads(content)
         except Exception as e:
-            return response.json(803,repr(e))
+            return response.json(803, repr(e))
         else:
             rid = roleContent.get('rid', None)
             if rid == None:
@@ -122,18 +122,18 @@ class Roles(object):
                 if len(permission_list) > 0:
                     role.permission.add(*permission_list)
             except Exception as e:
-                return response.json(808,repr(e))
+                return response.json(808, repr(e))
             else:
                 self.startSignal()
                 return response.json(0)
 
-    def delRoles(self, rid=None, rolename=None,response=ResponseObject()):
+    def delRoles(self, rid=None, rolename=None, response=ResponseObject()):
         if rid != None:
             if rid not in Roles.rid:
                 return response.json(190)
 
             try:
-                roletuple = Role.objects.filter(rid = rid).delete()
+                roletuple = Role.objects.filter(rid=rid).delete()
             except Exception as e:
                 return response.json(192, repr(e))
             else:
@@ -141,12 +141,12 @@ class Roles(object):
                     self.startSignal()
                     return self.queryAllRoles(response=response)
                 else:
-                    return response.json(193,{'error_msg':roletuple})
+                    return response.json(193, {'error_msg': roletuple})
         elif rolename != None:
             if rid not in Roles.rolename:
                 return response.json(191)
             try:
-                roletuple = Role.objects.filter(roleName = rolename).delete()
+                roletuple = Role.objects.filter(roleName=rolename).delete()
             except Exception as e:
                 return response.json(192)
             else:
@@ -156,7 +156,7 @@ class Roles(object):
                 else:
                     return response.json(193)
 
-    def modifyRoles(self, rid=None, content=None,response=ResponseObject()):
+    def modifyRoles(self, rid=None, content=None, response=ResponseObject()):
         if rid not in Roles.rid:
             return response.json(190)
         try:
@@ -169,7 +169,7 @@ class Roles(object):
             try:
                 permission_list = roleContent['permission']
                 roleContent.pop('permission')
-                roleCount = Role.objects.filter(rid = rid).update(**roleContent)
+                roleCount = Role.objects.filter(rid=rid).update(**roleContent)
                 if roleCount:
                     if len(permission_list) > 0:
                         Role.objects.get(rid=rid).permission.set(permission_list)
@@ -185,6 +185,7 @@ class Roles(object):
                 else:
                     return response.json(195)
 
+
 class Permission(object):
     try:
         id = []
@@ -195,6 +196,7 @@ class Permission(object):
             permname.append(perm.permName)
     except Exception as e:
         pass
+
     def __init__(self):
         perms_done.connect(self.callback)
 
@@ -212,56 +214,52 @@ class Permission(object):
     def startSignal(self):
         perms_done.send(sender=self.__class__)
 
-    def queryAllPerms(self, perms=None, exclude=None,response=ResponseObject()):
-        opts =[]
+    def queryAllPerms(self, perms=None, exclude=None, response=ResponseObject()):
+        opts = []
         for perm in chain(Permission.permname):
             if perms and perm not in perms:
                 continue
             if exclude and perm in exclude:
                 continue
             opts.append(perm)
-        return response.json(0,{'perms':opts})
+        return response.json(0, {'perms': opts})
 
-    def delPerms(self, id=None, permName=None,response=ResponseObject()):
+    def delPerms(self, id=None, permName=None, response=ResponseObject()):
+        if id != None:
+            perm = Permissions.objects.filter(id=id)
+        elif permName != None:
+            perm = Permissions.objects.filter(permName=permName)
+        else:
+            return response.json(444, 'id,perm')
+        if not perm:
+            return response.json(817)
         try:
-            if id != None:
-                perm = Permissions.objects.filter(id = id)
-            elif permName != None:
-                perm = Permissions.objects.filter(permName = permName)
-            else:
-                return response.json(800)
+            perm.delete()
         except Exception as e:
-            return response.json(500, repr(e))
+            return response.json(818, repr(e))
         else:
-            if not perm:
-                return response.json(817)
-            try:
-                perm.delete()
-            except Exception as e:
-                return response.json(818, repr(e))
-            else:
-                self.startSignal()
-                qs =Permissions.objects.all()
-                res = CommonService.qs_to_dict(qs)
-                return response.json(0,res)
+            self.startSignal()
+            qs = Permissions.objects.all()
+            res = CommonService.qs_to_dict(qs)
+            return response.json(0, res)
 
     @staticmethod
     def getAllPermission(response=ResponseObject()):
-        send_dict=CommonService.qs_to_dict(Permissions.objects.all())
+        send_dict = CommonService.qs_to_dict(Permissions.objects.all())
         return response.json(0, send_dict)
 
 
 class permManager(object):
 
     def queryMoreRole(self, rid=None):
-        role = Role.objects.filter(rid = rid)
+        role = Role.objects.filter(rid=rid)
         if not role:
             roleDict = {'rid': role[0].rid, 'error_msg': u'The rid does not exist!'}
             return roleDict
-        roleDict = {'rid' : role[0].rid, 'perms': role[0].get_all_permission()}
+        roleDict = {'rid': role[0].rid, 'perms': role[0].get_all_permission()}
         return roleDict
 
-    def queryAllRole(self,response=ResponseObject()):
+    def queryAllRole(self, response=ResponseObject()):
         qs = Role.objects.all()
         res = CommonService.qs_to_dict(qs)
         return response.json(0, res)
@@ -285,34 +283,29 @@ class queryRoleView(View):
 
     def ValidationError(self, token):
         response = ResponseObject()
-        if token is not None:
-            tko = TokenObject(token)
-            tko.valid()
-            response.lang = tko.lang
-            if tko.code == 0:
-                userID = tko.userID
-                if userID:
-                    return self.queryUserRole(userID,response)
-                else:
-                    return response.json(309)
-            else:
-                return response.json(tko.code)
+        tko = TokenObject(token)
+        response.lang = tko.lang
+        if tko.code != 0:
+            return response.json(tko.code)
+        userID = tko.userID
+        if userID:
+            return self.queryUserRole(userID, response)
         else:
-            return response.json(800)
+            return response.json(309)
 
-    def queryUserRole(self, userID,response):
-        eUser = Device_User.objects.filter(userID = userID)
+    def queryUserRole(self, userID, response):
+        eUser = Device_User.objects.filter(userID=userID)
         if not eUser:
             return response.json(102)
         if 100 in eUser[0].get_role_id():
             role = Roles()
             return role.queryAllRoles(response=response)
         own_permission = ModelService.check_permission(userID=userID, permID=30)
-        if own_permission is True:
-            role = Roles()
-            return role.queryAllRoles(response=response)
-        else:
+        if own_permission is not True:
             return response.json(404)
+        role = Roles()
+        return role.queryAllRoles(response=response)
+
 
 class addNewRoleView(View):
     @method_decorator(csrf_exempt)
@@ -321,58 +314,45 @@ class addNewRoleView(View):
 
     def get(self, request, *args, **kwargs):
         request.encoding = 'gb2312'
-        token = request.GET.get('token', None)
-        content = request.GET.get('content', None)
-
-        return self.ValidationError(token, content)
+        request_dict = request.GET
+        return self.ValidationError(request_dict)
 
     def post(self, request, *args, **kwargs):
         request.encoding = 'utf-8'
-        token = request.POST.get('token', None)
-        content = request.POST.get('content', None)
-
-        return self.ValidationError(token, content)
+        request_dict = request.POST
+        return self.ValidationError(request_dict)
 
-    def ValidationError(self, token, content):
+    def ValidationError(self, request_dict):
+        token = request_dict.get('token', None)
+        content = request_dict.get('content', None)
         response = ResponseObject()
-        if token != None and content != None:
-            tko = TokenObject(token)
-            tko.valid()
-            response.lang = tko.lang
-            if tko.code == 0:
-                userID = tko.userID
-                if userID:
-
-                    return self.AddNewUserRole(userID, content,response)
-                else:
-                    return response.json(309)
-            else:
-                return response.json(tko.code)
-
-        else:
-            return response.json(800)
-
-    def AddNewUserRole(self, userID, content,response):
-        try:
-            User = Device_User.objects.filter(userID = userID)
-        except Exception as e:
-            return response.json(500,repr(e))
-        else:
-            rids = User[0].get_role_id()
-            if rids == None:
-                return response.json(606)
-            Aperms = False
-            for rid in rids:
-                if rid < 10:
-                    continue
-                else:
-                    Aperms = True
-
-            if Aperms:
-                role = Roles()
-                return role.addRoles(content=content,response=response)
+        if not content:
+            return response.json(444, 'content')
+        tko = TokenObject(token)
+        response.lang = tko.lang
+        if tko.code != 0:
+            return response.json(tko.code)
+        userID = tko.userID
+        if not userID:
+            return response.json(309)
+        return self.AddNewUserRole(userID, content, response)
+
+    def AddNewUserRole(self, userID, content, response):
+        User = Device_User.objects.filter(userID=userID)
+
+        rids = User[0].get_role_id()
+        if rids == None:
+            return response.json(606)
+        Aperms = False
+        for rid in rids:
+            if rid < 10:
+                continue
             else:
-                return response.json(611)
+                Aperms = True
+        if not Aperms:
+            return response.json(404)
+        role = Roles()
+        return role.addRoles(content=content, response=response)
 
 
 class delRoleView(View):
@@ -382,42 +362,35 @@ class delRoleView(View):
 
     def get(self, request, *args, **kwargs):
         request.encoding = 'gb2312'
-        token = request.GET.get('token', None)
-        rid = request.GET.get('rid', None)
-
-        return self.ValidationError(token, rid)
+        request_dict = request.GET
+        return self.ValidationError(request_dict)
 
     def post(self, request, *args, **kwargs):
         request.encoding = 'utf-8'
-        token = request.POST.get('token', None)
-        rid = request.POST.get('rid', None)
-
-        return self.ValidationError(token, rid)
+        request_dict = request.POST
+        return self.ValidationError(request_dict)
 
-    def ValidationError(self, token, rid):
+    def ValidationError(self, request_dict):
+        token = request_dict.get('token', None)
+        rid = request_dict.get('rid', None)
         response = ResponseObject()
-        if token != None and rid != None:
-            tko = TokenObject(token)
-            tko.valid()
-            response.lang = tko.lang
-            if tko.code == 0:
-                userID = tko.userID
-                if userID:
-                    return self.delRole(userID, int(rid),response)
-                else:
-                    return response.json(309)
-            else:
-                return response.json(tko.code)
-        else:
-            return response.json(444,'token,rid')
-
-    def delRole(self, userID, rid,response):
+        if not rid:
+            return response.json(444, 'rid')
+        tko = TokenObject(token)
+        response.lang = tko.lang
+        if tko.code != 0:
+            return response.json(tko.code)
+        userID = tko.userID
+        if not userID:
+            return response.json(104)
+        return self.delRole(userID, int(rid), response)
+
+    def delRole(self, userID, rid, response):
         own_permission = ModelService.check_permission(userID=userID, permID=10)
-        if own_permission is True:
-            role = Roles()
-            return role.delRoles(rid=rid,response=response)
-        else:
+        if own_permission is not True:
             return response.json(404)
+        role = Roles()
+        return role.delRoles(rid=rid, response=response)
 
 
 class modifyRoleView(View):
@@ -426,56 +399,46 @@ class modifyRoleView(View):
         return super(modifyRoleView, self).dispatch(*args, **kwargs)
 
     def get(self, request, *args, **kwargs):
-        request.encoding = 'gb2312'
-        token = request.GET.get('token', None)
-        rid =  request.GET.get('rid', None)
-        content = request.GET.get('content', None)
-        return self.ValidationError(token, rid, content)
+        request.encoding = 'utf-8'
+        request_dict = request.GET
+        return self.ValidationError(request_dict)
 
     def post(self, request, *args, **kwargs):
         request.encoding = 'utf-8'
-        token = request.POST.get('token', None)
-        rid = request.POST.get('rid', None)
-        content = request.POST.get('content', None)
-        return self.ValidationError(token, rid, content)
+        request_dict = request.POST
+        return self.ValidationError(request_dict)
 
-    def ValidationError(self, token, rid, content):
+    def ValidationError(self, request_dict):
+        token = request_dict.get('token', None)
+        rid = request_dict.get('rid', None)
+        content = request_dict.get('content', None)
         response = ResponseObject()
-        if token != None and content != None and rid != None:
-            tko = TokenObject(token)
-            tko.valid()
-            response.lang = tko.lang
-            if tko.code == 0:
-                userID = tko.userID
-                if userID:
-                    return self.modifyRole(userID, int(rid), content,response)
-                else:
-                    return response.json(309)
-            else:
-                return response.json(tko.code)
-        else:
-            return response.json(444,'token,content,rid')
-
-    def modifyRole(self, userID, rid, content,response):
-        try:
-            User = Device_User.objects.filter(userID = userID)
-        except Exception as e:
-            return response.json(500, repr(e))
-        else:
-            rids = User[0].get_role_id()
-            if rids == None:
-                return response.json(606)
-            Aperms = False
-            for rrid in rids:
-                if rrid < 10:
-                    continue
-                else:
-                    Aperms = True
-            if Aperms:
-                role = Roles()
-                return role.modifyRoles(rid=rid, content=content,response=response)
+        if not content or not rid:
+            return response.json(444, 'rid,content')
+        tko = TokenObject(token)
+        response.lang = tko.lang
+        if tko.code != 0:
+            return response.json(tko.code)
+        userID = tko.userID
+        if not userID:
+            return response.json(104)
+        return self.modifyRole(userID, int(rid), content, response)
+
+    def modifyRole(self, userID, rid, content, response):
+        User = Device_User.objects.filter(userID=userID)
+        rids = User[0].get_role_id()
+        if rids == None:
+            return response.json(606)
+        Aperms = False
+        for rrid in rids:
+            if rrid < 10:
+                continue
             else:
-                return response.json(611)
+                Aperms = True
+        if not Aperms:
+            return response.json(404)
+        role = Roles()
+        return role.modifyRoles(rid=rid, content=content, response=response)
 
 
 # 权限View
@@ -497,41 +460,32 @@ class addNewPermsView(View):
     def ValidationError(self, request_dict):
         response = ResponseObject()
         token = request_dict.get('token', None)
-        type = request_dict.get('type', None)
-        if token != None:
-            tko = TokenObject(token)
-            tko.valid()
-            response.lang = tko.lang
-            if tko.code == 0:
-                userID = tko.userID
-                if userID:
-                    if type == 'PC':
-                        return self.addNewPermission(userID=userID, request_dict=request_dict,response=response)
-                else:
-                    return response.json(309)
-            else:
-                return response.json(tko.code)
+        tko = TokenObject(token)
+        response.lang = tko.lang
+        if tko.code != 0:
+            return response.json(tko.code)
+        userID = tko.userID
+        if not userID:
+            return response.json(104)
+        return self.addNewPermission(userID, request_dict, response)
+
+    def addNewPermission(self, userID, request_dict, response):
+        own_perm = ModelService.check_permission(userID, 40)
+        if own_perm is not True:
+            return response.json(404)
         else:
-            return response.json(800)
-
-    def addNewPermission(self, userID, request_dict,response):
-        user_valid = Device_User.objects.filter(userID=userID).order_by('-data_joined')
-        if user_valid:# 判断是否为超级管理员
-            own_perm = ModelService.check_permission(userID,40)
-            # if user_valid[0].is_superuser == 100 and user_valid[0].is_superuser != 1 and user_valid[0].is_superuser != 10:
-            if own_perm is not True:
-                return response.json(612)
+            add_dict = {
+                'id': int(request_dict['id']),
+                'permName': request_dict['permName'],
+                'description': request_dict['description']}
+            try:
+                perm = Permissions(**add_dict)
+                perm.save()
+            except Exception as e:
+                return response.json(816, repr(e))
             else:
-                add_dict = {'id':int(request_dict['id']),'permName':request_dict['permName'],'description':request_dict['description']}
-                try:
-                    perm = Permissions(**add_dict)
-                    perm.save()
-                except Exception as e:
-                    return response.json(816,repr(e))
-                else:
-                    return Permission.getAllPermission(response=response)
-        else:
-            return response.json(113)
+                return Permission.getAllPermission(response=response)
+
 
 class delPermsView(View):
     @method_decorator(csrf_exempt)
@@ -552,42 +506,33 @@ class delPermsView(View):
         token = request_dict.get('token', None)
         id = request_dict.get('id', None)
         response = ResponseObject()
-        if token != None and id != None:
-            tko = TokenObject(token)
-            tko.valid()
-            response.lang = tko.lang
-            if tko.code == 0:
-                userID = tko.userID
-                if userID:
-                    return self.delPerms(userID, id,response)
-                else:
-                    return response.json(309)
+        if not id:
+            return response.json(444, 'id')
+        tko = TokenObject(token)
+        response.lang = tko.lang
+        if tko.code != 0:
+            return response.json(tko.code)
+        userID = tko.userID
+        if not userID:
+            return response.json(104)
+        return self.delPerms(userID, id, response)
+
+    def delPerms(self, userID, id, response):
+        User = Device_User.objects.filter(userID=userID)
+        rids = User[0].get_role_id()
+        if len(rids) == 0:
+            return response.json(606)
+        Aperms = False
+        for rid in rids:
+            if rid < 10:
+                continue
             else:
-                return response.json(tko.code)
-        else:
-            return response.json(800)
-
-    def delPerms(self, userID, id,response):
-        try:
-            User = Device_User.objects.filter(userID = userID)
-        except Exception as e:
-            return response.json(500, repr(e))
+                Aperms = True
+        if not Aperms:
+            return response.json(404)
+        perms = Permission()
+        return perms.delPerms(id=id, response=response)
 
-        else:
-            rids = User[0].get_role_id()
-            if len(rids) == 0:
-                return response.json(606)
-            Aperms = False
-            for rid in rids:
-                if rid < 10:
-                    continue
-                else:
-                    Aperms = True
-            if Aperms:
-                perms = Permission()
-                return perms.delPerms(id=id,response=response)
-            else:
-                return response.json(611)
 
 class queryPermsView(View):
     @method_decorator(csrf_exempt)
@@ -595,69 +540,56 @@ class queryPermsView(View):
         return super(queryPermsView, self).dispatch(*args, **kwargs)
 
     def get(self, request, *args, **kwargs):
-        request.encoding = 'gb2312'
-        token = request.GET.get('token', None)
-        request_data = request.GET
-        return self.ValidationError(token,request_data)
+        request.encoding = 'utf-8'
+        request_dict = request.GET
+        return self.ValidationError(request_dict)
 
     def post(self, request, *args, **kwargs):
         request.encoding = 'utf-8'
-        token = request.POST.get('token', None)
-        request_data = request.POST
-        return self.ValidationError(token,request_data)
+        request_dict = request.POST
+        return self.ValidationError(request_dict)
+
+    def ValidationError(self, request_dict):
+        token = request_dict.get('token', None)
+        type = request_dict.get('type', None)
 
-    def ValidationError(self, token, request_data):
         response = ResponseObject()
-        if token != None:
-            tko = TokenObject(token)
-            tko.valid()
-            response.lang = tko.lang
-            if tko.code == 0:
-                userID = tko.userID
-                if userID:
-                    type = request_data.get('type',None)
-                    if type == 'PC':
-                        return self.querAllPermission(userID,response)
-                    else:
-                        return self.delPerms(userID,response)
-                else:
-                    return response.json(309)
-            else:
-                return response.json(tko.code)
+        tko = TokenObject(token)
+        response.lang = tko.lang
+        if tko.code != 0:
+            return response.json(tko.code)
+        userID = tko.userID
+        if not userID:
+            return response.json(104)
+        if type == 'PC':
+            return self.querAllPermission(userID, response)
         else:
-            return response.json(800)
+            return self.delPerms(userID, response)
 
-    def querAllPermission(self, userID,response):
-        own_perm = ModelService.check_permission(userID,30)
-        if own_perm is True:
-            qs = Permissions.objects.all()
-            res = CommonService.qs_to_dict(qs)
-            return response.json(0, res)
-        else:
+    def querAllPermission(self, userID, response):
+        own_perm = ModelService.check_permission(userID, 30)
+        if own_perm is not True:
             return response.json(404)
+        qs = Permissions.objects.all()
+        res = CommonService.qs_to_dict(qs)
+        return response.json(0, res)
 
-    def delPerms(self, userID,response):
-        try:
-            User = Device_User.objects.filter(userID = userID)
-        except Exception as e:
-            return response.json(500, repr(e))
-        else:
-            rids = User[0].get_role_id()
-            if len(rids) == 0:
-                return response.json(606)
-
-            Aperms = False
-            for rid in rids:
-                if rid < 10:
-                    continue
-                else:
-                    Aperms = True
-
-            if Aperms:
-                perms = Permission()
-                return perms.queryAllPerms(response=response)
+    def delPerms(self, userID, response):
+        User = Device_User.objects.filter(userID=userID)
+        rids = User[0].get_role_id()
+        if len(rids) == 0:
+            return response.json(606)
+        Aperms = False
+        for rid in rids:
+            if rid < 10:
+                continue
             else:
-                return response.json(611)
+                Aperms = True
+        if not Aperms:
+            return response.json(404)
+        perms = Permission()
+        return perms.queryAllPerms(response=response)
+
 
 class modifyPermsView(View):
     @method_decorator(csrf_exempt)
@@ -665,38 +597,33 @@ class modifyPermsView(View):
         return super(modifyPermsView, self).dispatch(*args, **kwargs)
 
     def get(self, request, *args, **kwargs):
-        request.encoding = 'gb2312'
+        request.encoding = 'utf-8'
         request_dict = request.GET
         return self.ValidationError(request_dict)
 
     def post(self, request, *args, **kwargs):
         request.encoding = 'utf-8'
-        # token = request.POST.get('token', None)
         request_dict = request.POST
         return self.ValidationError(request_dict)
 
     def ValidationError(self, request_dict):
         token = request_dict.get('token', None)
         response = ResponseObject()
-        if token != None:
-            tko = TokenObject(token)
-            tko.valid()
-            response.lang = tko.lang
-            if tko.code == 0:
-                userID = tko.userID
-                if userID:
-                    update_dict = {'permName':request_dict['permName'],'description':request_dict['description']}
-                    return self.modifyPerms(userID=userID,id=request_dict['id'], update_dict=update_dict,response=response)
-                else:
-                    return response.json(309)
-            else:
-                return response.json(tko.code)
+        tko = TokenObject(token)
+        response.lang = tko.lang
+        if tko.code != 0:
+            return response.json(tko.code)
+        userID = tko.userID
+        if userID:
+            update_dict = {'permName': request_dict['permName'], 'description': request_dict['description']}
+            return self.modifyPerms(userID=userID, id=request_dict['id'], update_dict=update_dict,
+                                    response=response)
         else:
-            return response.json(800)
+            return response.json(309)
 
-    def modifyPerms(self, userID, id, update_dict,response):
+    def modifyPerms(self, userID, id, update_dict, response):
         try:
-            User = Device_User.objects.filter(userID = userID)
+            User = Device_User.objects.filter(userID=userID)
         except Exception as e:
             return response.json(500, repr(e))
         else:
@@ -709,16 +636,15 @@ class modifyPermsView(View):
                     continue
                 else:
                     Aperms = True
-
-            if Aperms:
-                try:
-                    Permissions.objects.filter(id = int(id)).update(**update_dict)
-                except Exception as e:
-                    return response.json(500,repr(e))
-                else:
-                    return Permission.getAllPermission(response=response)
+            if not Aperms:
+                return response.json(404)
+            try:
+                Permissions.objects.filter(id=int(id)).update(**update_dict)
+            except Exception as e:
+                return response.json(500, repr(e))
             else:
-                return response.json(611)
+                return Permission.getAllPermission(response=response)
+
 
 class queryRolePermsView(View):
     @method_decorator(csrf_exempt)
@@ -743,46 +669,37 @@ class queryRolePermsView(View):
 
     def ValidationError(self, token, allUser):
         response = ResponseObject()
-        if token != None:
-            tko = TokenObject(token)
-            tko.valid()
-            response.lang = tko.lang
-            if tko.code == 0:
-                userID = tko.userID
-                if userID:
-                    return self.queryRolePerms(userID, allUser,response)
-                else:
-                    return response.json(309)
-            else:
-                return response.json(tko.code)
+        tko = TokenObject(token)
+        response.lang = tko.lang
+        if tko.code != 0:
+            return response.json(tko.code)
+        userID = tko.userID
+        if userID:
+            return self.queryRolePerms(userID, allUser, response)
+        else:
+            return response.json(309)
+
+    def queryRolePerms(self, userID, allUser, response):
+        dUser = Device_User.objects.filter(userID=userID).order_by('-data_joined')
+        if not dUser:
+            return response.json(104)
+        if allUser == '0' or allUser == 'False' or allUser == 'false':
+            allUser = False
+        elif allUser == '1' or allUser == 'True' or allUser == 'true':
+            allUser = True
         else:
-            return response.json(800)
+            allUser = False
+        pM = permManager()
+        if not allUser:
+            ridslist = []
+            rids = dUser[0].get_role_id()
 
-    def queryRolePerms(self, userID, allUser,response):
-        try:
-            dUser = Device_User.objects.filter(userID=userID).order_by('-data_joined')
-        except Exception as e:
-            return response.json(500, repr(e))
+            for rid in rids:
+                ridslist.append(pM.queryMoreRole(rid=rid))
+            sqlDict = dict(zip(["datas"], [ridslist]))
+            return response.json(0, sqlDict)
         else:
-            if not dUser:
-                return response.json(113)
-            if allUser == '0' or allUser == 'False' or allUser == 'false':
-                allUser = False
-            elif allUser == '1' or allUser == 'True' or allUser == 'true':
-                allUser = True
+            if 100 in dUser[0].get_role_id():
+                return pM.queryAllRole(response=response)
             else:
-                allUser = False
-            pM = permManager()
-            if not allUser:
-                ridslist =[]
-                rids = dUser[0].get_role_id()
-
-                for rid in rids:
-                    ridslist.append(pM.queryMoreRole(rid=rid))
-                sqlDict = dict(zip(["datas"], [ridslist]))
-                return response.json(0,sqlDict)
-            else:
-                if 100 in dUser[0].get_role_id():
-                    return pM.queryAllRole(response=response)
-                else:
-                    return response.json(612)
+                return response.json(404)

+ 0 - 2
Controller/StreamMedia.py

@@ -71,7 +71,6 @@ class StreamMedia(View):
         token = request_dict.get('token', None)
         if token is not None:
             tko = TokenObject(token)
-            tko.valid()
             response.lang = tko.lang
             if tko.code == 0:
                 userID = tko.userID
@@ -488,7 +487,6 @@ def Auth_Live(request, *callback_args,
     token = request_dict.get('token', None)
     if token is not None:
         tko = TokenObject(token)
-        tko.valid()
         response.lang = tko.lang
         if tko.code == 0:
             userID = tko.userID

+ 17 - 22
Controller/SysManage.py

@@ -31,26 +31,21 @@ def updateLog(request):
     token = request_dict.get('token',None)
     content = request_dict.get('content',None)
     response = ResponseObject()
-    param_flag = CommonService.get_param_flag(data=[token,content])
-    if param_flag is True:
-        tko = TokenObject(token)
-        tko.valid()
-        response.lang = tko.lang
-        if tko.code == 0:
-            userID = tko.userID
-            own_permission = ModelService.check_permission(userID=userID,permID=50)
-            if own_permission is True:
-                file_path = os.path.join(BASE_DIR,'static/Help/version.txt')
-                try:
-                    with open(file_path, "w", encoding="utf-8") as f:
-                        f.write(content)
-                except Exception as e:
-                    pass
-                return response.json(0)
-            else:
-                return response.json(404)
-        else:
-            return response.json(tko.code)
-    else:
-        return response.json(444)
+    if not content:
+        return response.json(444,'content')
+    tko = TokenObject(token)
+    response.lang = tko.lang
+    if tko.code != 0:
+        return response.json(tko.code)
+    userID = tko.userID
+    own_permission = ModelService.check_permission(userID=userID, permID=50)
+    if own_permission is not True:
+        return response.json(404)
+    file_path = os.path.join(BASE_DIR, 'static/Help/version.txt')
+    try:
+        with open(file_path, "w", encoding="utf-8") as f:
+            f.write(content)
+    except Exception as e:
+        pass
+    return response.json(0)
 

+ 1 - 4
Controller/UserController.py

@@ -292,7 +292,6 @@ class LogoutView(TemplateView):
     def Logout(self, request, token):
         response = ResponseObject()
         tko = TokenObject(token)
-        tko.valid()
         if tko.code != 0:
             return response.json(tko.code)
         MiscellService.add_access_log(request=request, status_code=200)
@@ -324,7 +323,6 @@ class ChangePwdView(TemplateView):
         if oldPwd is None and newPwd is None:
             return response.json(800)
         tko = TokenObject(token)
-        tko.valid()
         response.lang = tko.lang
         if tko.code != 0:
             return response.json(tko.code)
@@ -333,7 +331,7 @@ class ChangePwdView(TemplateView):
     def updatePwd(self, userID, oldPwd, newPwd, response):
         user_qs = Device_User.objects.filter(userID=userID)
         if not user_qs.exists():
-            return response.json(113)
+            return response.json(104)
         c_p = check_password(oldPwd, user_qs[0].password)
         # 密码是否正确
         if not c_p:
@@ -450,7 +448,6 @@ class EmailResetPwdView(TemplateView):
         token = request_dict.get('token', None)
         if token is not None:
             tko = TokenObject(token)
-            tko.valid()
             if tko.code == 0:
                 redisObj = RedisObject()
                 userID = tko.userID

+ 157 - 255
Controller/UserManger.py

@@ -42,25 +42,19 @@ class showUserMoreView(TemplateView):
 
     def ValidationError(self, token):
         response = ResponseObject()
-        if token is not None:
-            tko = TokenObject(token)
-            tko.valid()
-            response.lang = tko.lang
-            if tko.code == 0:
-                userID = tko.userID
-                if userID:
-                    return self.showUserMore(userID, response)
-                else:
-                    return response.json(309)
-            else:
-                return response.json(tko.code)
-        else:
-            return response.json(800)
+        tko = TokenObject(token)
+        response.lang = tko.lang
+        if tko.code != 0:
+            return response.json(tko.code)
+        userID = tko.userID
+        if not userID:
+            return response.json(104)
+        return self.showUserMore(userID, response)
 
     def showUserMore(self, userID, response):
         User = Device_User.objects.filter(userID=userID)
         if not User.exists():
-            return response.json(113)
+            return response.json(104)
         sqlDict = CommonService.qs_to_dict(User)
         for k, v in enumerate(sqlDict["datas"]):
             sqlDict['datas'][k]['fields'].pop('password')
@@ -99,45 +93,36 @@ class perfectUserInfoView(TemplateView):
 
     def ValidationError(self, token, userContent, userIcon):
         response = ResponseObject()
-        if token is not None:
-            tko = TokenObject(token)
-            tko.valid()
-            response.lang = tko.lang
-            if tko.code == 0:
-                userID = tko.userID
-                if userID:
-                    if userIcon != None:
-                        # location = 'static/User/Images/' + userID[-11:] + '/'
-                        location = 'static/User/Images/' + userID + '/'
-                        fss = FileSystemStorage(location=location)
-                        if fss.exists(userIcon.name):
-                            fss.delete(userIcon.name)
-                        filename = fss.save(userIcon.name, userIcon)
-                        userIconUrl = fss.url(filename)
-                        userIconPath = fss.path(filename).replace('\\', '/')
-                    else:
-                        userIconPath = None
-
-                    if userContent != None:
-                        dataValid = json.loads(userContent)
-                        print('userID' and 'password' and 'is_superuser' in dataValid.keys())
-                        if 'userID' and 'password' and 'is_superuser' in dataValid.keys():
-                            return response.json(802)
-                    if userIconPath == None and userContent == None:
-                        return response.json(800)
-                    elif userIconPath == None and userContent != None:
-                        return self.perfectUserInfoUpdate(userID, response, userContent=userContent)
-                    elif userIconPath != None and userContent == None:
-                        return self.perfectUserInfoUpdate(userID, response, userIconPath=userIconPath)
-                    else:
-                        return self.perfectUserInfoUpdate(userID, response, userIconPath=userIconPath,
-                                                          userContent=userContent)
-                else:
-                    return response.json(309)
-            else:
-                return response.json(tko.code)
+        tko = TokenObject(token)
+        response.lang = tko.lang
+        if tko.code != 0:
+            return response.json(tko.code)
+        userID = tko.userID
+        if not userID:
+            return response.json(309)
+        if userIcon != None:
+            location = 'static/User/Images/' + userID + '/'
+            fss = FileSystemStorage(location=location)
+            if fss.exists(userIcon.name):
+                fss.delete(userIcon.name)
+            filename = fss.save(userIcon.name, userIcon)
+            # userIconUrl = fss.url(filename)
+            userIconPath = fss.path(filename).replace('\\', '/')
         else:
+            userIconPath = None
+        if userContent != None:
+            dataValid = json.loads(userContent)
+            if 'userID' and 'password' and 'is_superuser' in dataValid.keys():
+                return response.json(802)
+        if userIconPath == None and userContent == None:
             return response.json(800)
+        elif userIconPath == None and userContent != None:
+            return self.perfectUserInfoUpdate(userID, response, userContent=userContent)
+        elif userIconPath != None and userContent == None:
+            return self.perfectUserInfoUpdate(userID, response, userIconPath=userIconPath)
+        else:
+            return self.perfectUserInfoUpdate(userID, response, userIconPath=userIconPath,
+                                              userContent=userContent)
 
     def perfectUserInfoUpdate(slef, userID, response, *args,
                               **kwargs):
@@ -148,43 +133,33 @@ class perfectUserInfoView(TemplateView):
         :param kwargs:
         :return:
         """
+        User = Device_User.objects.filter(userID=userID)
+        if not User.exists():
+            return response.json(104)
+        userIconPath = kwargs.get('userIconPath', None)
+        userContent = kwargs.get('userContent', None)
+        if userIconPath is not None:
+            userIconPath = userIconPath[userIconPath.find('static/'):]
+            userIconUrl = SERVER_DOMAIN + 'account/getAvatar/' + userIconPath[7:]
+        if userContent != None:
+            try:
+                UserData = json.loads(userContent)
+            except Exception as e:
+                return response.json(803, repr(e))
         try:
-            User = Device_User.objects.filter(userID=userID)
+            if userIconPath is not None and userContent is not None:
+                User.update(userIconPath=userIconPath, userIconUrl=userIconUrl, **UserData)
+            elif userIconPath is None and userContent is not None:
+                User.update(**UserData)
+            elif userIconPath is not None and userContent is None:
+                User.update(userIconPath=userIconPath, userIconUrl=userIconUrl)
         except Exception as e:
             errorInfo = traceback.format_exc()
-            print('查询数据库失败: %s ' % errorInfo)
-            return response.json(500, repr(e))
+            print('修改设备信息错误: %s ' % errorInfo)
+            return response.json(116, repr(e))
         else:
-            if User:
-                userIconPath = kwargs.get('userIconPath', None)
-                userContent = kwargs.get('userContent', None)
-                if userIconPath is not None:
-                    userIconPath = userIconPath[userIconPath.find('static/'):]
-                    userIconUrl = SERVER_DOMAIN + 'account/getAvatar/' + userIconPath[7:]
-                if userContent != None:
-                    try:
-                        UserData = json.loads(userContent)
-                    except Exception as e:
-                        return response.json(803, repr(e))
-                try:
-                    if userIconPath is not None and userContent is not None:
-                        User.update(userIconPath=userIconPath, userIconUrl=userIconUrl, **UserData)
-                    elif userIconPath is None and userContent is not None:
-                        User.update(**UserData)
-                    elif userIconPath is not None and userContent is None:
-                        User.update(userIconPath=userIconPath, userIconUrl=userIconUrl)
-                except Exception as e:
-                    errorInfo = traceback.format_exc()
-                    print('修改设备信息错误: %s ' % errorInfo)
-                    return response.json(116, repr(e))
-                else:
-                    sqlJSON = serializers.serialize('json', User)
-                    sqlList = json.loads(sqlJSON)
-                    print(sqlList, sqlJSON)
-                    sqlDict = dict(zip(["datas"], [sqlList]))
-                    return response.json(0, sqlDict)
-            else:
-                return response.json(113)
+            res = CommonService.qs_to_dict(User)
+            return response.json(0, res)
 
 
 class getAvatarView(TemplateView):
@@ -222,144 +197,84 @@ class getAvatarView(TemplateView):
 @csrf_exempt
 def delUserInterface(request):
     if request.method == 'POST':
-        delUserID = request.POST.get('delUserID', None)
-        token = request.POST.get('token', None)
+        request_dict = request.POST
     elif request.method == 'GET':
-        delUserID = request.GET.get('delUserID', None)
-        token = request.GET.get('token', None)
+        request_dict = request.GET
+    token = request_dict.get('token', None)
+    delUserID = request_dict.get('delUserID', None)
     response = ResponseObject()
-    if token is not None and delUserID is not None:
-        tko = TokenObject(token)
-        tko.valid()
-        response.lang = tko.lang
-        if tko.code == 0:
-            userID = tko.userID
-            if userID:
-                try:
-                    userValid = Device_User.objects.filter(userID=userID)
-                except Exception as e:
-                    errorInfo = traceback.format_exc()
-                    print('Query Database Error: %s' % errorInfo)
-                    return response.json(500, repr(e))
-                else:
-                    if userValid:
-                        own_perm = ModelService.check_permission(userID=userID, permID=10)
-                        if userValid[0].is_superuser == 100 or own_perm is True:
-                            try:
-                                delUser = Device_User.objects.filter(userID=delUserID)
-                            except Exception as e:
-                                errorInfo = traceback.format_exc()
-                                print('Query database error: %s' % errorInfo)
-                                return response.json(500, repr(e))
-                            else:
-                                if delUser:
-                                    try:
-                                        delUser.delete()
-                                    except Exception as e:
-                                        errorInfo = traceback.format_exc()
-                                        print('Query database error: %s' % errorInfo)
-                                        return response.json(114, repr(e))
-                                    else:
-                                        return response.json(0)
-                                else:
-                                    return response.json(115)
-                        else:
-                            return response.json(601)
-                    else:
-                        return response.json(113)
-            else:
-                return response.json(309)
-        else:
-            return response.json(tko.code)
-    else:
-        return response.json(800)
-
-
-def showAllUserPC(userID, line, page, response):
-    try:
-        userValid = Device_User.objects.filter(userID=userID).order_by('-data_joined')
-    except Exception as e:
-        errorInfo = traceback.format_exc()
-        print('Query Database Error:%s' % errorInfo)
-        return response.json(500, repr(e))
-    else:
-        if userValid:
-            # 管理员查询
-            own_permission = ModelService.check_permission(userID=userID, permID=30)
-            if own_permission is True:
-                device_user_queryset = Device_User.objects.all()
-                device_user_count = device_user_queryset.count()
-                device_user_res = device_user_queryset.order_by('-data_joined')[(page - 1) * line:page * line]
-                sqlDict = CommonService.qs_to_dict(device_user_res)
-                for k, v in enumerate(sqlDict["datas"]):
-                    if len(v['fields']['role']) > 0:
-                        role_query_set = Role.objects.get(rid=v['fields']['role'][0])
-                        sqlDict["datas"][k]['fields']['role'].append(role_query_set.roleName)
-                    for val in device_user_res:
-                        if v['pk'] == val.userID:
-                            if sqlDict["datas"][k]['fields']['online'] is True:
-                                dl_time = val.last_login + datetime.timedelta(minutes=5)
-                                now_time = timezone.localtime(timezone.now())
-                                if now_time > dl_time:
-                                    sqlDict["datas"][k]['fields']['online'] = False
-                sqlDict['count'] = device_user_count
-                return response.json(0, sqlDict)
-            else:
-                return response.json(612)
-        else:
-            return response.json(113)
-
-
-def showAllUser(userID, response):
-    try:
-        userValid = Device_User.objects.filter(userID=userID).order_by('-data_joined')
-    except Exception as e:
-        errorInfo = traceback.format_exc()
-        print('Query Database Error:%s' % errorInfo)
-        return response.json(500, repr(e))
-    else:
-        if userValid:
-            own_permission = ModelService.check_permission(userID=userID, permID=30)
-            if own_permission is True:
-                sqlJSON = serializers.serialize('json', Device_User.objects.all().order_by('-data_joined'))
-                sqlList = json.loads(sqlJSON)
-                print(sqlList, sqlJSON)
-                sqlDict = dict(zip(["datas"], [sqlList]))
-                return response.json(0, sqlDict)
-            else:
-                return response.json(612)
-        else:
-            return response.json(113)
+    if not token or not delUserID:
+        return response.json(444, 'token,delUserID')
+    tko = TokenObject(token)
+    response.lang = tko.lang
+    if tko.code != 0:
+        return response.json(tko.code)
+    userID = tko.userID
+    if not userID:
+        return response.json(309)
+    userValid = Device_User.objects.filter(userID=userID)
+    if not userValid.exists():
+        return response.json(104)
+    own_perm = ModelService.check_permission(userID=userID, permID=10)
+    if own_perm is not True:
+        return response.json(404)
+    delUser = Device_User.objects.filter(userID=delUserID)
+    if not delUser.exists():
+        return response.json(104)
+    delUser.delete()
+    return response.json(0)
 
 
 @csrf_exempt
 def showAllUserInterface(request):
     if request.method == 'POST':
-        token = request.POST.get('token', None)
-        type = request.POST.get('type', None)
+        request_dict = request.POST
     elif request.method == 'GET':
-        token = request.GET.get('token', None)
-        type = request.GET.get('type', None)
+        request_dict = request.GET
+    token = request_dict.get('token', None)
+    type = request_dict.get('type', None)
     response = ResponseObject()
-    if token is not None:
-        tko = TokenObject(token)
-        tko.valid()
-        response.lang = tko.lang
-        if tko.code == 0:
-            userID = tko.userID
-            if userID:
-                if type == 'PC':
-                    line = int(request.POST.get('line', None))
-                    page = int(request.POST.get('page', None))
-                    return showAllUserPC(userID, line, page, response)
-                else:
-                    return showAllUser(userID, response)
-            else:
-                return response.json(309)
-        else:
-            return response.json(tko.code)
+    tko = TokenObject(token)
+    response.lang = tko.lang
+    if tko.code != 0:
+        return response.json(tko.code)
+    userID = tko.userID
+    if not userID:
+        return response.json(104)
+    if type == 'PC':
+        line = int(request.POST.get('line', None))
+        page = int(request.POST.get('page', None))
+        userValid = Device_User.objects.filter(userID=userID).order_by('-data_joined')
+        if not userValid:
+            return response.json(104)
+        # 管理员查询
+        own_permission = ModelService.check_permission(userID=userID, permID=30)
+        if own_permission is not True:
+            return response.json(404)
+        device_user_queryset = Device_User.objects.all()
+        device_user_count = device_user_queryset.count()
+        device_user_res = device_user_queryset.order_by('-data_joined')[(page - 1) * line:page * line]
+        sqlDict = CommonService.qs_to_dict(device_user_res)
+        for k, v in enumerate(sqlDict["datas"]):
+            if len(v['fields']['role']) > 0:
+                role_query_set = Role.objects.get(rid=v['fields']['role'][0])
+                sqlDict["datas"][k]['fields']['role'].append(role_query_set.roleName)
+            for val in device_user_res:
+                if v['pk'] == val.userID:
+                    if sqlDict["datas"][k]['fields']['online'] is True:
+                        dl_time = val.last_login + datetime.timedelta(minutes=5)
+                        now_time = timezone.localtime(timezone.now())
+                        if now_time > dl_time:
+                            sqlDict["datas"][k]['fields']['online'] = False
+        sqlDict['count'] = device_user_count
+        return response.json(0, sqlDict)
     else:
-        return response.json(800)
+        own_permission = ModelService.check_permission(userID=userID, permID=30)
+        if own_permission is not True:
+            return response.json(404)
+        qs = Device_User.objects.all().order_by('-data_joined')
+        res = CommonService.qs_to_dict(qs)
+        return response.json(0, res)
 
 
 class setUserValidView(View):
@@ -369,51 +284,39 @@ class setUserValidView(View):
 
     def post(self, request, *args, **kwargs):
         request.encoding = 'utf-8'
-
-        token = request.POST.get('token', None)
-        eUserID = request.POST.get('userID', None)
-        isValid = request.POST.get('isValid', None)
-        rid = request.POST.get('rid', None)
-        return self.setUserValid(token, eUserID, isValid, rid)
+        request_dict = request.POST
+        return self.setUserValid(request_dict)
 
     def get(self, request, *args, **kwargs):
-        request.encoding = 'gb2312'
-
-        token = request.GET.get('token', None)
-        eUserID = request.GET.get('userID', None)
-        isValid = request.GET.get('isValid', None)
-        rid = request.GET.get('rid', None)
-
-        return self.setUserValid(token, eUserID, isValid, rid)
-
-    def setUserValid(self, token, eUserID, isValid, rid, *args, **kwargs):
+        request.encoding = 'utf-8'
+        request_dict = request.GET
+        return self.setUserValid(request_dict)
+
+    def setUserValid(self, request_dict):
+        token = request_dict.get('token', None)
+        eUserID = request_dict.get('userID', None)
+        isValid = request_dict.get('isValid', None)
+        rid = request_dict.get('rid', None)
         response = ResponseObject()
-        if token is not None:
-            tko = TokenObject(token)
-            tko.valid()
-            response.lang = tko.lang
-            if tko.code == 0:
-                superID = tko.userID
-                own_perm = ModelService.check_permission(userID=superID,permID=50)
-                if own_perm is True or superID != None and superID != eUserID:
-                    if rid == None:
-                        return self.UserValidUpdate(superID, eUserID, isValid, response)
-                    else:
-                        return self.UserValidUpdatePC(superID, eUserID, isValid, rid, response)
-                else:
-                    return response.json(150)
+        tko = TokenObject(token)
+        response.lang = tko.lang
+        if tko.code != 0:
+            return response.json(tko.code)
+        superID = tko.userID
+        own_perm = ModelService.check_permission(userID=superID, permID=50)
+        if own_perm is True or superID != None and superID != eUserID:
+            if rid == None:
+                return self.UserValidUpdate(superID, eUserID, isValid, response)
             else:
-                return response.json(tko.code)
+                return self.UserValidUpdatePC(superID, eUserID, isValid, rid, response)
         else:
-            return response.json(800)
+            return response.json(150)
 
     def UserValidUpdatePC(self, superID, eUserID, isValid, rid, response):
         super = Device_User.objects.filter(userID=superID)
         eUser = Device_User.objects.filter(userID=eUserID)
-        if not super.exists():
-            return response.json(615)
-        if not eUser.exists():
-            return response.json(616)
+        if not super.exists() or not eUser.exists():
+            return response.json(104)
         own_permission = ModelService.check_permission(userID=superID, permID=50)
         if own_permission is True:
             try:
@@ -431,20 +334,19 @@ class setUserValidView(View):
             else:
                 return response.json(0)
         else:
-            return response.json(602)
-
+            return response.json(404)
 
     def UserValidUpdate(self, superID, eUserID, isValid, response):
         super = Device_User.objects.filter(userID=superID)
         eUser = Device_User.objects.filter(userID=eUserID)
         if not super.exists():
-            return response.json(113)
+            return response.json(104)
         if not eUser.exists():
-            return response.json(113)
+            return response.json(104)
         if super[0].is_superuser != 100 or super[0].is_superuser == eUser[0].is_superuser:
-            return response.json(602)
+            return response.json(404)
         try:
-            updateCount = eUser.update(user_isValid=isValid)
+            eUser.update(user_isValid=isValid)
         except Exception as e:
             errorInfo = traceback.format_exc()
             print('更新数据库错误: %s' % errorInfo)

+ 0 - 2
Controller/VodBucket.py

@@ -48,7 +48,6 @@ class VodBucketView(View):
         token = request_dict.get('token', None)
         # 设备主键uid
         tko = TokenObject(token)
-        tko.valid()
         response.lang = tko.lang
         if tko.code != 0:
             return response.json(tko.code)
@@ -126,7 +125,6 @@ class UidBucketView(View):
         token = request_dict.get('token', None)
         # 设备主键uid
         tko = TokenObject(token)
-        tko.valid()
         response.lang = tko.lang
         if tko.code != 0:
             return response.json(tko.code)

+ 88 - 127
Controller/shareUserPermission.py

@@ -3,7 +3,6 @@
 from django.core import serializers
 import traceback, simplejson as json
 from django.views.generic.base import View
-from django.core.exceptions import FieldError
 from django.views.decorators.csrf import csrf_exempt
 from django.utils.decorators import method_decorator
 from Model.models import Device_User, Device_Info, Role
@@ -12,6 +11,7 @@ from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
 from django.db.models import Q
 
+
 class searchUserView(View):
     @method_decorator(csrf_exempt)
     def dispatch(self, *args, **kwargs):
@@ -88,8 +88,6 @@ class searchUserView(View):
                 device_user_queryset = Device_User.objects.filter(**searchCondition).order_by('-data_joined')
             else:
                 device_user_queryset = Device_User.objects.all().order_by('-data_joined')
-        except FieldError:
-            return response.json(502)
         except Exception as e:
             errorInfo = traceback.format_exc()
             print('查询数据库错误: %s' % errorInfo)
@@ -115,24 +113,19 @@ class searchUserView(View):
                 return response.json(0, {"datas": ""})
 
     def searchUser(self, fieldDict, *args, **kwargs):
-        response = ResponseObject()
         token = fieldDict.get('token', None)
-        if token != None:
-            tko = TokenObject(token)
-            tko.valid()
-            response.lang = tko.lang
-            if tko.code == 0:
-                fieldDict = fieldDict.dict()
-                fieldDict.pop('token')
-                type = fieldDict.get('type', None)
-                if type == 'PC':
-                    return self.searchUserPCSQL(fieldDict, response)
-                else:
-                    return self.searchUserSQL(fieldDict, response, args, kwargs)
-            else:
-                return response.json(tko.code)
+        response = ResponseObject()
+        tko = TokenObject(token)
+        response.lang = tko.lang
+        if tko.code != 0:
+            return response.json(tko.code)
+        fieldDict = fieldDict.dict()
+        fieldDict.pop('token')
+        type = fieldDict.get('type', None)
+        if type == 'PC':
+            return self.searchUserPCSQL(fieldDict, response)
         else:
-            return response.json(444)
+            return self.searchUserSQL(fieldDict, response, args, kwargs)
 
 
 class shareUserEquipmentView(View):
@@ -166,119 +159,88 @@ class shareUserEquipmentView(View):
             else:
                 sharedAll = 0
         response = ResponseObject()
-        if token != None and GuestID != None:
-            tko = TokenObject(token)
-            tko.valid()
-            response.lang = tko.lang
-            if tko.code == 0:
-                MasterID = tko.userID
-                if sharedAll and MasterID != None:
-                    return self.shareUserSQL(MasterID, GuestID, True, response, args, kwargs)
-                if content != None and MasterID != None:
-                    return self.shareUserSQL(MasterID, GuestID, False, response, args, content=content)
-                else:
-                    return response.json(804)
-            else:
-                return response.json(tko.code)
+        if not GuestID:
+            return response.json(444, 'GuestID')
+        tko = TokenObject(token)
+        response.lang = tko.lang
+        if tko.code != 0:
+            return response.json(tko.code)
+        MasterID = tko.userID
+        if sharedAll and MasterID != None:
+            return self.shareUserSQL(MasterID, GuestID, True, response, args, kwargs)
+        if content != None and MasterID != None:
+            return self.shareUserSQL(MasterID, GuestID, False, response, args, content=content)
         else:
-            return response.json(800)
+            return response.json(444, 'sharedAll or content')
 
     def shareUserSQL(self, MasterID, GuestID, sharedAll, response, *args, **kwargs):
-        try:
-            Guest = Device_User.objects.filter(userID=GuestID).order_by('-data_joined')
-            Master = Device_Info.objects.filter(userID_id=MasterID).order_by('-data_joined')
-        except Exception as e:
-            errorInfo = traceback.format_exc()
-            print('查询数据库错误: %s' % errorInfo)
-            return response.json(500, {"details": repr(e)})
+        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 = []
+        dictLen = 0
+        if sharedAll:
+            for equipment in Master:
+                eqDict = equipment.model_to_dict(exclude=['id', 'data_joined', 'primaryUserID'])
+
+                shareEquipment = Device_Info.objects.filter(userID_id=GuestID, primaryUserID= \
+                    MasterID, UID=eqDict.get('UID', None)).order_by('-data_joined')
+
+                if shareEquipment:
+                    dictLen += 1
+                    continue
+                else:
+                    eqDict['primaryUserID'] = eqDict.pop('userID')
+                    eqDict['isShare'] = True
+                    eqDict['userID_id'] = GuestID
+                    eqDict['id'] = CommonService.getUserID(getUser=False)
+                    querysetList.append(Device_Info(**eqDict))
         else:
-            if Master:
-                if Guest:
-                    querysetList = []
-                    dictLen = 0
-
-                    if sharedAll:
-                        for equipment in Master:
-                            eqDict = equipment.model_to_dict(exclude=['id', 'data_joined', 'primaryUserID'])
-
-                            shareEquipment = Device_Info.objects.filter(userID_id=GuestID, primaryUserID= \
-                                MasterID, UID=eqDict.get('UID', None)).order_by('-data_joined')
-
-                            if shareEquipment:
-                                dictLen += 1
-                                continue
-                            else:
-                                eqDict['primaryUserID'] = eqDict.pop('userID')
-                                eqDict['isShare'] = True
-                                eqDict['userID_id'] = GuestID
-                                eqDict['id'] = CommonService.getUserID(getUser=False)
-                                querysetList.append(Device_Info(**eqDict))
-                    else:
-                        content = kwargs.get('content', None)
-                        if content != None:
-                            contentDict = json.loads(content)
-                            uidlist = UID = contentDict.get('UID', None)
-                            print(uidlist)
-                            for equipment in Master:
-                                eqDict = equipment.model_to_dict(exclude=['id', 'data_joined', 'primaryUserID'])
-
-                                if eqDict['UID'] in uidlist:
-                                    UID.remove(eqDict['UID'])
-                                    shareEquipment = Device_Info.objects.filter(userID_id=GuestID, primaryUserID= \
-                                        MasterID, UID=eqDict.get('UID', None)).order_by('-data_joined')
-                                    if shareEquipment:
-                                        dictLen += 1
-                                    else:
-                                        eqDict['primaryUserID'] = eqDict.pop('userID')
-                                        eqDict['isShare'] = True
-                                        eqDict['userID_id'] = GuestID
-                                        eqDict['id'] = CommonService.getUserID(getUser=False)
-                                        querysetList.append(Device_Info(**eqDict))
-                                else:
-                                    continue
-
-                    if len(querysetList) == 0:
-                        if sharedAll:
-                            return response.json(160)
+            content = kwargs.get('content', None)
+            if content != None:
+                contentDict = json.loads(content)
+                uidlist = UID = contentDict.get('UID', None)
+                print(uidlist)
+                for equipment in Master:
+                    eqDict = equipment.model_to_dict(exclude=['id', 'data_joined', 'primaryUserID'])
+
+                    if eqDict['UID'] in uidlist:
+                        UID.remove(eqDict['UID'])
+                        shareEquipment = Device_Info.objects.filter(userID_id=GuestID, primaryUserID= \
+                            MasterID, UID=eqDict.get('UID', None)).order_by('-data_joined')
+                        if shareEquipment:
+                            dictLen += 1
                         else:
-                            if len(UID) > 0:
-                                return response.json(160, {'error_UID': UID})
-                            else:
-                                return response.json(160)
+                            eqDict['primaryUserID'] = eqDict.pop('userID')
+                            eqDict['isShare'] = True
+                            eqDict['userID_id'] = GuestID
+                            eqDict['id'] = CommonService.getUserID(getUser=False)
+                            querysetList.append(Device_Info(**eqDict))
                     else:
-                        try:
-                            equipmentCount = Device_Info.objects.bulk_create(querysetList)
-                        except Exception as e:
-                            errorInfo = traceback.format_exc()
-                            print('添加数据库记录错误: %s' % errorInfo)
-                            return response.json(500, {"details": repr(e)})
-                        else:
-                            if dictLen > 0:
-                                return response.json(0, {
-                                    'Shared': dictLen,
-                                    'Sharing': len(querysetList),
-                                    'errormsg': u'A part of the equipment has been shared!',
-                                })
-                            else:
-                                if sharedAll:
-                                    return response.json(0, {
-                                        'Sharing': len(querysetList)
-                                    })
-                                else:
-                                    if len(UID) > 0:
-                                        return response.json(0, {
-                                            'error_UID': UID,
-                                            'Sharing': len(querysetList),
-                                        })
-                                    else:
-                                        return response.json(0, {
-                                            'Sharing': len(querysetList),
-                                        })
-                else:
-                    return response.json(113)
+                        continue
 
+        if len(querysetList) == 0:
+            return response.json(160, {'error_UID': UID})
+        else:
+            try:
+                Device_Info.objects.bulk_create(querysetList)
+            except Exception as e:
+                errorInfo = traceback.format_exc()
+                print('添加数据库记录错误: %s' % errorInfo)
+                return response.json(500, {"details": repr(e)})
             else:
-                return response.json(172)
+                if dictLen > 0:
+                    res = {'Shared': dictLen,'Sharing': len(querysetList),'errormsg': 'some had share'}
+                else:
+                    if sharedAll:
+                        res = {'Sharing': len(querysetList)}
+                    else:
+                        if len(UID) > 0:
+                            res = {'error_UID': UID,'Sharing': len(querysetList)}
+                        else:
+                            res = {'Sharing': len(querysetList)}
+                return response.json(0, res)
 
 
 class unsharedUserEquipmentView(View):
@@ -315,7 +277,6 @@ class unsharedUserEquipmentView(View):
 
         if token != None and GuestID != None and len(GuestID) > 0:
             tko = TokenObject(token)
-            tko.valid()
             response.lang = tko.lang
             if tko.code == 0:
                 MasterID = tko.userID
@@ -361,9 +322,9 @@ class unsharedUserEquipmentView(View):
                     else:
                         removeCount += equipmentCount[0]
                 if len(errorRemove) > 0:
-                    return response.json(171, {'removeCount': removeCount,'error_UID': errorRemove})
+                    return response.json(171, {'removeCount': removeCount, 'error_UID': errorRemove})
                 else:
                     if len(errorUID) > 0:
-                        return response.json(173, {'removeCount': removeCount,'error_UID': errorUID})
+                        return response.json(173, {'removeCount': removeCount, 'error_UID': errorUID})
                     else:
                         return response.json(0, {'removeCount': removeCount})

+ 3 - 24
Object/ResponseObject.py

@@ -38,9 +38,7 @@ class ResponseObject(object):
             110: 'user is not activated',
             111: 'Error password',
             112: 'update password error!',
-            113: 'This userID does not exist!',
             114: 'Delete user failure error',
-            115: 'The userID of the user to delete does not exist!',
             118: 'You do not enter the password two times!',
             120: 'The code has expired',
             121: 'The verification code is wrong!',
@@ -66,25 +64,17 @@ class ResponseObject(object):
             309: 'Please ReLogin! errmsg token',
             403: 'API ERROR!',
             404: 'You don not have permission to access this!',
-            414: 'Client error ! Please confirm the request path!',
+            414: 'Please confirm the request path!',
             424: 'Database Error !',
             444: 'Wrong parameters!',
+            474: 'System Maintaining!',
             500: 'Query Database Error:',
             501: 'Update database error!',
-            502: 'The fields do not exist!',
-            601: 'Delete permission denied!',
-            602: 'Modify permission denied!',
-            605: 'Upload permission denied!',
             606: 'User has not assigned role!',
-            611: 'Add permission denied!',
-            612: 'Query permission denied!',
-            615: 'SuperAdmin does not exist!',
-            616: 'User does not exist!',
             800: 'Request KEY is None!',
             801: 'Wrong request KEY!',
             802: 'Parameter error!',
             803: 'Wrong parameter',
-            804: 'Share Error! content or sharedAll must be provided!',
             805: 'Un share Error! content or unsharedAll must be provided!',
             806: 'The content parameter is incomplete!',
             807: 'The role has already existed!',
@@ -100,7 +90,6 @@ class ResponseObject(object):
             903: 'Error filename',
             906: 'Cause of file operation error',
             907: 'The download file does not exist!',
-            910: 'Much downloads. Please wait a moment...',
         }
         data_cn = {
             0: '成功',
@@ -129,9 +118,7 @@ class ResponseObject(object):
             110: '用户未激活!',
             111: '您输入的密码不正确!',
             112: '未知错误不能更新密码!',
-            113: '此用户标识不存在!',
             114: '删除用户失败错误',
-            115: '删除用户的用户名不存在!',
             118: '你不输入密码两次!',
             120: '验证码过期',
             121: '验证码错了!',
@@ -160,22 +147,15 @@ class ResponseObject(object):
             414: '客户端错误!请确认请求路径!',
             424: '数据库错误!',
             444: '请确认参数的正确性!',
+            474: '系统维护中!',
             500: '查询数据库错误!',
             501: '更新数据库错误!',
-            502: '在数据库中,参数字段不存在!',
-            601: '没有权限删除!',
-            602: '没有权限修改!',
-            605: '没有权限上传!',
             606: '用户没有分配角色!',
-            611: '没有权限添加!',
-            612: '没有权限查询!',
-            615: '超级管理员帐户不存在!',
             616: '用户帐户不存在!',
             800: '请求参数不存在!',
             801: '错误的请求参数!',
             802: 'content参数错误!',
             803: 'content参数格式错误',
-            804: 'content或sharedAll参数没有传递',
             805: 'content或unsharedAll参数没有传递',
             806: 'content参数不完整!',
             807: '角色已经存在!',
@@ -191,7 +171,6 @@ class ResponseObject(object):
             903: '文件名不符合!',
             906: '文件操作错误',
             907: '文件不存在!',
-            910: '下载太多,请稍等…',
         }
         if self.lang == 'cn':
             msg = data_cn

+ 8 - 4
Object/TokenObject.py

@@ -25,14 +25,15 @@ class TokenObject:
         if token == 'test':
             token = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VySUQiOiIxNTE1NjQyNjIzMzc5Mzk1MTM4MDAxMzgwMDEiLCJsYW5nIjoiZW4iLCJleHAiOjE1NDcwMTMzMjV9.4Q-hqqihFClYKCIoUd16ZZe2FRvpElmio6P25Qpg26Q'
         self.token = token
-        self.code = 0
         self.lang = None
         self.userID = None
+        self.valid()
+        if token is None:
+            self.code = 309
+        else:
+            self.code = 0
 
     def valid(self):
-        if self.token is None:
-            self.code = 309
-            return
         try:
             res = jwt.decode(self.token, OAUTH_ACCESS_TOKEN_SECRET, algorithms='HS256')
             self.userID = res.get('userID', None)
@@ -48,6 +49,7 @@ class TokenObject:
         except Exception as e:
             self.code = 309
         else:
+            self.code = 0
             return res
 
     def generate(self, data={}):
@@ -76,6 +78,7 @@ class TokenObject:
             self.code = 309
             print(repr(e))
         else:
+            self.code = 0
             return res
 
     def refresh(self):
@@ -89,6 +92,7 @@ class TokenObject:
             self.code = 309
             print(repr(e))
         else:
+            self.code = 0
             userID = res['userID']
             lang = res['lang']
             refreshRes = self.generate(data={'userID': userID, 'lang': lang})

+ 0 - 1
Service/MiscellService.py

@@ -28,7 +28,6 @@ class MiscellService():
             user = None
             if token is not None:
                 tko = TokenObject(token)
-                tko.valid()
                 if tko.code == 0:
                     user = ModelService.get_user_name(tko.userID)
             return user