Переглянути джерело

Merge branch 'dev' of http://192.168.136.45:3000/SERVER/AnsjerServer into dev

WuYiPei 5 роки тому
батько
коміт
d0e81702fe

+ 2 - 1
Ansjer/config.py

@@ -123,5 +123,6 @@ FCM_CONFIG = {
     'com.ansjer.customizeda_a': 'AAAAb9YP3rk:APA91bF0HzizVWDc6dKzobY9fsaKDK4veqkOZehDXshVXs8pEEvNWjR_YWbhP60wsRYCHCal8fWN5cECVOWNMMzDsfU88Ty2AUl8S5FtZsmeDTkoGntQOswBr8Ln7Fm_LAp1VqTf9CpM',
     'com.ansjer.customizedd_a': 'AAAAb9YP3rk:APA91bHkxOozJWBrlv3eNT0PgwosYENI9aM4Zuzd418cX-iKkpa1zFNC5MkNDKApx1KH4fhmAfaJ6IMRZ0nj5GIxCpstDYCaZWwgC7-etqfSxG5JAq8LOwJx0o_1tUZqwjIic8ztsg0o',
     'com.ansjer.adcloud_a': 'AAAAb9YP3rk:APA91bFm06w8b9OKQ0gz0iaWFuRqRIkvgAz6z7Gp3dBU_X-LNGJQd1hc1QR2W7QzBglF8SHtERA45a2lbdLRa5qv7hxfd6W_sJLBK7dA8jklsOQBvy505oUzTwMKWy4TwH-exps9KrhO',
-    'com.ansjer.accloud_a': 'AAAAb9YP3rk:APA91bFm06w8b9OKQ0gz0iaWFuRqRIkvgAz6z7Gp3dBU_X-LNGJQd1hc1QR2W7QzBglF8SHtERA45a2lbdLRa5qv7hxfd6W_sJLBK7dA8jklsOQBvy505oUzTwMKWy4TwH-exps9KrhO'
+    'com.ansjer.accloud_a': 'AAAAb9YP3rk:APA91bFm06w8b9OKQ0gz0iaWFuRqRIkvgAz6z7Gp3dBU_X-LNGJQd1hc1QR2W7QzBglF8SHtERA45a2lbdLRa5qv7hxfd6W_sJLBK7dA8jklsOQBvy505oUzTwMKWy4TwH-exps9KrhO',
+    'com.ansjer.zccloud_ab': 'AAAAb9YP3rk:APA91bHu8u-CTpcd0g6lKPo0WNVqCi8jZub1cPPbSAY9AucT1HxlF65ZDUko9iG8q2ch17bwu9YWHpK1xI1gHSRXCslLvZlXEmHZC0AG3JKg15XuUvlFKACIajUFV-pOeGRT8tM6-31I',
 }

+ 0 - 1
Ansjer/config_formal.py

@@ -12,7 +12,6 @@
 @Contact: chanjunkai@163.com
 """
 NGINX_RTMP_STAT = 'http://www.dvema.com/stat'
-SERVER_DOMAIN = 'http://www.dvema.com/'
 SERVER_DOMAIN_SSL = 'https://www.dvema.com/'
 DOMAIN_HOST = 'www.dvema.com'
 SERVER_HOST = 'localhost'

+ 5 - 11
Ansjer/test/kbt.py

@@ -1,11 +1,5 @@
-import requests
-
-data= {
-    'token':'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJtX2NvZGUiOiIxMjM0MTMyNDMyMTQiLCJ1c2VyIjoiMTM4MDAxMzgwMDEiLCJleHAiOjE1ODE4MjA2MjcsInVzZXJJRCI6IjE1MTU2NDI2MjMzNzkzOTUxMzgwMDEzODAwMSIsImxhbmciOiJlbiJ9.SuDHinc0xJ5ETclE1SY-9lSEoebBTBje6OZ0r4Plqjw',
-    'm_code':"AN02000080B10000001cd3.zccloud_ab",
-    'os_type':'jiguang',
-    'appid':'com.ansjer.zccloud_ab',
-    'udid':"AN02000080b10000001cd3"
-}
-res = requests.post(url='http://test.dvema.com/v2/account/logout',data=data)
-print(res.text)
+trtrt = '0'
+if trtrt:
+    print(1)
+else:
+    print(2)

+ 84 - 3
Controller/CloudStorage.py

@@ -36,6 +36,8 @@ from Service.CommonService import CommonService
 from Service.ModelService import ModelService
 from Object.ETkObject import ETkObject
 
+SERVER_DOMAIN = 'http://cloudstroage.dvema.com/'
+
 
 # 设备信息添加
 class CloudStorageView(View):
@@ -71,10 +73,12 @@ class CloudStorageView(View):
             if tko.code != 0:
                 return response.json(tko.code)
             userID = tko.userID
-            if operation == 'createPayOrder':
+            if operation == 'createpayorder':
                 return self.do_create_pay_order(request_dict, userID, response)
             elif operation == 'changevodstatus':
                 return self.do_change_vod_status(request_dict, userID, response)
+            elif operation == 'queryvodlist':
+                return self.do_query_vod_list(request_dict, userID, response)
             else:
                 return response.json(414)
 
@@ -218,15 +222,92 @@ class CloudStorageView(View):
                 if sts_qs.exists():
                     sts_qs.update(data=json.dumps(res), addTime=now_time)
                 else:
-                    StsCrdModel.objects.create(uid=uid, channel=channel, data=json.dumps(res), addTime=now_time)
+                    StsCrdModel.objects.create(uid=uid, channel=channel, data=json.dumps(res), addTime=now_time, type=1)
                 return JsonResponse(status=200, data=res)
             else:
                 res = {'code': 404, 'msg': 'data not exists!'}
                 return HttpResponse(json.dumps(res, ensure_ascii=False),
                                     content_type="application/json,charset=utf-8")
 
+    def do_query_vod_list(self, request_dict, userID, response):
+        startTime = int(request_dict.get('startTime',None))
+        endTime = int(request_dict.get('endTime',None))
+        uid =request_dict.get('uid',None)
+        channel = request_dict.get('channel',None)
+        dv_qs = Device_Info.objects.filter(UID=uid,userID_id=userID,isShare=False)
+        if not dv_qs.exists():
+            return response.json(12)
+        now_time = int(time.time())
+        vh_qs = VodHlsModel.objects.filter(uid=uid,channel=channel,time__range=(startTime,endTime))
+
     def do_store_playlist(self, request_dict, response):
-        return
+        uidToken = request_dict.get('uidToken', None)
+        storeTime = request_dict.get('time', None)
+        sec = request_dict.get('sec', None)
+        fg = request_dict.get('fg', None)
+        utko = UidTokenObject(uidToken)
+        if utko.flag is False:
+            return response.json(444, 'uidToken')
+        if not uidToken or not storeTime or not sec:
+            return response.json(0)
+        pass
+        UID = utko.UID
+        channel = utko.channel
+        print('UID:')
+        print(UID)
+        print('channel:')
+        print(channel)
+        now_time = int(time.time())
+        ubqs = UID_Bucket.objects.filter(uid=UID, channel=channel, endTime__gte=now_time). \
+            values("bucket__mold", "bucket__bucket", "bucket__endpoint", "bucket__region", "status", "bucket__storeDay")
+        if ubqs.exists():
+            ub_qs_data = ubqs[0]
+            store_day = ub_qs_data['bucket__storeDay']
+            bucket_id = ub_qs_data['bucket_id']
+            end_time = int(storeTime) + store_day * 86400
+            if ub_qs_data['status'] == 1:
+                if ub_qs_data["bucket__mold"] == 0:
+                    oss_crd_qs = OssCrdModel.objects.filter(uid=UID, channel=channel)
+                    if oss_crd_qs.exists():
+                        VodHlsModel.objects.create(
+                            uid=UID,
+                            channel=channel,
+                            time=storeTime,
+                            endTime=end_time,
+                            bucket_id=bucket_id
+                        )
+                        res = {'code': 0, 'msg': '存储成功'}
+                        return HttpResponse(json.dumps(res, ensure_ascii=False),
+                                            content_type="application/json,charset=utf-8")
+                    else:
+                        res = {'code': 404, 'msg': '设备未购买'}
+                        return HttpResponse(json.dumps(res, ensure_ascii=False),
+                                            content_type="application/json,charset=utf-8")
+                elif ub_qs_data['bucket__mold'] == 1:
+                    sts_qs = StsCrdModel.objects.filter(uid=UID, channel=channel, type=1). \
+                        values("addTime", "data")
+                    if sts_qs.exists():
+                        VodHlsModel.objects.create(
+                            uid=UID,
+                            channel=channel,
+                            time=storeTime,
+                            endTime=end_time,
+                            bucket_id=bucket_id,
+                            fg=fg,
+                        )
+                        res = {'code': 0, 'msg': '存储成功'}
+                        return HttpResponse(json.dumps(res, ensure_ascii=False),
+                                            content_type="application/json,charset=utf-8")
+                    else:
+                        res = {'code': 404, 'msg': '设备未购买'}
+                        return HttpResponse(json.dumps(res, ensure_ascii=False),
+                                            content_type="application/json,charset=utf-8")
+            else:
+                res = {'code': 404, 'msg': '设备未开启'}
+                return HttpResponse(json.dumps(res, ensure_ascii=False), content_type="application/json,charset=utf-8")
+        else:
+            res = {'code': 404, 'msg': '设备未购买'}
+            return HttpResponse(json.dumps(res, ensure_ascii=False), content_type="application/json,charset=utf-8")
 
     def do_change_vod_status(self, request_dict, userID, response):
         uid = request_dict.get('uid', None)

+ 3 - 237
Controller/DetectController.py

@@ -158,242 +158,6 @@ class DetectControllerView(View):
             res.append(p)
         return response.json(0, {'datas': res, 'count': count})
 
-    def do_change_status1(self, userID, request_dict, response):
-
-        uid = request_dict.get('uid', None)
-        token_val = request_dict.get('token_val', None)
-        appBundleId = request_dict.get('appBundleId', None)
-        app_type = request_dict.get('app_type', None)
-        push_type = request_dict.get('push_type', None)
-        status = request_dict.get('status', None)
-        m_code = request_dict.get('m_code', None)
-        # 设备语言
-        lang = request_dict.get('lang', 'en')
-        tz = request_dict.get('tz', '0')
-        # interval = request_dict.get('interval', None)
-        if not status:
-            return response.json(444, 'status')
-        # 关闭推送
-        if not all([appBundleId, app_type, token_val, uid, m_code]):
-            return response.json(444, 'appBundleId,app_type,token_val,uid,m_code')
-        # 判断推送类型对应key是否存在
-        if push_type == '0':
-            if appBundleId not in APNS_CONFIG.keys():
-                return response.json(904)
-        elif push_type == '1':
-            if appBundleId not in FCM_CONFIG.keys():
-                return response.json(904)
-        elif push_type == '2':
-            if appBundleId not in JPUSH_CONFIG.keys():
-                return response.json(904)
-        else:
-            return response.json(173)
-        dvqs = Device_Info.objects.filter(userID_id=userID, UID=uid)
-        status = int(status)
-        if dvqs.exists():
-            # 获取用户区域
-            # ip = self.ip
-            # ipInfo = CommonService.getIpIpInfo(ip=ip, lang='EN')
-            # area = ipInfo['country_name']
-            # if area == 'China':
-            #     DETECT_PUSH_DOMAIN = 'cn.push.dvema.com'
-            # else:
-            #     DETECT_PUSH_DOMAIN = 'en.push.dvema.com'
-            nowTime = int(time.time())
-            uid_set_qs = UidSetModel.objects. \
-                filter(uid=uid, uidpushmodel__userID_id=userID, uidpushmodel__m_code=m_code)
-            # 判断是否有曾经开启过
-            if uid_set_qs.exists():
-                uid_push_update_dict = {
-                    'appBundleId': appBundleId,
-                    'app_type': app_type,
-                    'push_type': push_type,
-                    'token_val': token_val,
-                    'updTime': nowTime,
-                    'lang': lang,
-                    'tz': tz
-                }
-                uid_set_qs.update(detect_status=status, updTime=nowTime)
-                UidPushModel.objects.filter(userID_id=userID, m_code=m_code, uid_set__uid=uid). \
-                    update(**uid_push_update_dict)
-                if status == 0:
-                    # 关闭成功
-                    return response.json(0)
-                utko = UidTokenObject()
-                # right
-                utko.generate(data={'uid': uid})
-                detectUrl = "{DETECT_PUSH_DOMAIN}notify/push?uidToken={uidToken}". \
-                    format(uidToken=utko.token, DETECT_PUSH_DOMAIN=DETECT_PUSH_DOMAIN)
-                return response.json(0, {'detectUrl': detectUrl})
-            else:
-                uid_set_qs = UidSetModel.objects.filter(uid=uid)
-                # 判断uid push是否绑定
-                if not uid_set_qs.exists():
-                    uid_set_create_dict = {
-                        'uid': uid,
-                        'addTime': nowTime,
-                        'updTime': nowTime,
-                        'detect_status': status,
-                    }
-                    # 添加设备配置
-                    uid_set_qs = UidSetModel.objects.create(**uid_set_create_dict)
-                    uid_set_id = uid_set_qs.id
-                else:
-                    update_dict = {
-                        'updTime': nowTime,
-                        'detect_status': status,
-                    }
-                    uid_set_qs.update(**update_dict)
-                    uid_set_id = uid_set_qs[0].id
-                uid_push_create_dict = {
-                    'uid_set_id': uid_set_id,
-                    'userID_id': userID,
-                    'appBundleId': appBundleId,
-                    'app_type': app_type,
-                    'push_type': push_type,
-                    'token_val': token_val,
-                    'm_code': m_code,
-                    'addTime': nowTime,
-                    'updTime': nowTime,
-                    'lang': lang,
-                    'tz': tz
-                }
-                # 绑定设备推送
-                UidPushModel.objects.create(**uid_push_create_dict)
-                if status == 0:
-                    return response.json(0)
-                utko = UidTokenObject()
-                utko.generate(data={'uid': uid})
-                detectUrl = "{DETECT_PUSH_DOMAIN}notify/push?uidToken={uidToken}". \
-                    format(uidToken=utko.token, DETECT_PUSH_DOMAIN=DETECT_PUSH_DOMAIN)
-                return response.json(0, {'detectUrl': detectUrl})
-        else:
-            return response.json(14)
-
-    def do_change_status11(self, userID, request_dict, response):
-        token_val = request_dict.get('token_val', None)
-        appBundleId = request_dict.get('appBundleId', None)
-        app_type = request_dict.get('app_type', None)
-        push_type = request_dict.get('push_type', None)
-        status = request_dict.get('status', None)
-        m_code = request_dict.get('m_code', None)
-        uid = request_dict.get('uid', None)
-        detect_group = request_dict.get('eventType', None)
-        # 设备语言
-        lang = request_dict.get('lang', 'en')
-        tz = request_dict.get('tz', '0')
-        start_status = request_dict.get('start_status', None)
-        # interval = request_dict.get('interval', None)
-        if not status:
-            return response.json(444, 'status')
-        print("111")
-        # 关闭推送
-        if not all([appBundleId, app_type, token_val, uid, m_code]):
-            return response.json(444, 'appBundleId,app_type,token_val,uid,m_code')
-        # 判断推送类型对应key是否存在
-        print('push_type:', push_type)
-        if push_type == '0':
-            if appBundleId not in APNS_CONFIG.keys():
-                return response.json(904)
-        elif push_type == '1':
-            if appBundleId not in FCM_CONFIG.keys():
-                return response.json(904)
-        elif push_type == '2':
-            if appBundleId not in JPUSH_CONFIG.keys():
-                return response.json(904)
-        else:
-            return response.json(173)
-
-        dvqs = Device_Info.objects.filter(userID_id=userID, UID=uid)
-        # 新增a
-        if start_status == "1":
-            interval = request_dict.get('interval', None)
-            # 设备表,用于判断这台设备是否存在
-            dvqs = Device_Info.objects.filter(userID_id=userID, UID=uid)
-            if dvqs.exists():
-                uid_set_qs = UidSetModel.objects. \
-                    filter(uid=uid, uidpushmodel__userID_id=userID)
-                if uid_set_qs.exists():
-                    uid_set_qs.update(detect_interval=int(interval))
-                else:
-                    return response.json(173)
-            # 移动侦测  evenType为字符串0,将detect_group设置进数据库
-            UidSetModel.objects.filter(uid=uid, uidpushmodel__userID_id=userID).update(detect_group=detect_group)
-            # /新增a
-        status = int(status)
-        # 获取用户区域
-        # ip = self.ip
-        # ipInfo = CommonService.getIpIpInfo(ip=ip, lang='EN')
-        # area = ipInfo['country_name']
-        # if area == 'China':
-        #     DETECT_PUSH_DOMAIN = 'cn.push.dvema.com'
-        # else:
-        #     DETECT_PUSH_DOMAIN = 'en.push.dvema.com'
-        nowTime = int(time.time())
-        if dvqs.exists():
-            uid_set_qs = UidSetModel.objects.filter(uid=uid)
-            # uid配置信息是否存在
-            if uid_set_qs.exists():
-                uid_set_id = uid_set_qs[0].id
-            else:
-                uid_set_create_dict = {
-                    'uid': uid,
-                    'addTime': nowTime,
-                    'updTime': nowTime,
-                    'detect_status': status,
-                }
-                # 添加设备配置
-                uid_set_qs = UidSetModel.objects.create(**uid_set_create_dict)
-                uid_set_id = uid_set_qs.id
-            uid_set_qs.update(detect_status=status, updTime=nowTime)
-            if status == 0:
-                UidPushModel.objects.filter(uid_set__uid=uid).delete()
-                # 状态为0的时候删除redis缓存数据
-                ykey = '{uid}_redis_qs'.format(uid=uid)
-                redisObj = RedisObject(db=6, SERVER_HOST='push.dvema.com')
-                redisObj.del_data(key=ykey)
-                return response.json(0)
-            elif status == 1:
-                uid_push_qs = UidPushModel.objects.filter(userID_id=userID, m_code=m_code, uid_set__uid=uid)
-                if uid_push_qs.exists():
-                    uid_push_update_dict = {
-                        'appBundleId': appBundleId,
-                        'app_type': app_type,
-                        'push_type': push_type,
-                        'token_val': token_val,
-                        'updTime': nowTime,
-                        'lang': lang,
-                        'tz': tz
-                    }
-                    uid_push_qs.update(**uid_push_update_dict)
-                else:
-                    # uid_set_id = uid_set_qs[0].id
-                    uid_push_create_dict = {
-                        'uid_set_id': uid_set_id,
-                        'userID_id': userID,
-                        'appBundleId': appBundleId,
-                        'app_type': app_type,
-                        'push_type': push_type,
-                        'token_val': token_val,
-                        'm_code': m_code,
-                        'addTime': nowTime,
-                        'updTime': nowTime,
-                        'lang': lang,
-                        'tz': tz
-                    }
-                    # 绑定设备推送
-                    UidPushModel.objects.create(**uid_push_create_dict)
-                # utko = UidTokenObject()
-                # # right
-                # utko.generate(data={'uid': uid})
-                etkObj = ETkObject(etk='')
-                etk = etkObj.encrypt(uid)
-                detectUrl = "{DETECT_PUSH_DOMAIN}notify/push?etk={etk}". \
-                    format(etk=etk, DETECT_PUSH_DOMAIN=DETECT_PUSH_DOMAIN)
-                return response.json(0, {'detectUrl': detectUrl})
-        else:
-            return response.json(14)
-
     def do_change_status(self, userID, request_dict, response):
         token_val = request_dict.get('token_val', None)
         appBundleId = request_dict.get('appBundleId', None)
@@ -410,7 +174,6 @@ class DetectControllerView(View):
         interval = request_dict.get('interval', None)
         if not status:
             return response.json(444, 'status')
-        print("111")
         # 关闭推送
         if not all([appBundleId, app_type, token_val, uid, m_code]):
             return response.json(444, 'appBundleId,app_type,token_val,uid,m_code')
@@ -483,6 +246,9 @@ class DetectControllerView(View):
                 return response.json(0)
             elif status == 1:
                 uid_push_qs = UidPushModel.objects.filter(userID_id=userID, m_code=m_code, uid_set__uid=uid)
+                ykey = '{uid}_redis_qs'.format(uid=uid)
+                redisObj = RedisObject(db=6, SERVER_HOST='push.dvema.com')
+                redisObj.del_data(key=ykey)
                 if uid_push_qs.exists():
                     uid_push_update_dict = {
                         'appBundleId': appBundleId,

+ 10 - 4
Controller/EquipmentManager.py

@@ -16,6 +16,7 @@ import oss2
 from django.http import JsonResponse
 from Object.RedisObject import RedisObject
 
+
 #     查询用户设备
 def queryUserEquipmentInterface(request):
     request.encoding = 'utf-8'
@@ -715,10 +716,13 @@ def queryInterface(request):
         nowTime = int(time.time())
         data = []
         # 设备拓展信息表
-        us_qs = UidSetModel.objects.filter(uid__in=uid_list).values('uid', 'version', 'nickname')
+        us_qs = UidSetModel.objects.filter(uid__in=uid_list).\
+            values('uid', 'version', 'nickname', 'detect_interval')
         uv_dict = {}
         for us in us_qs:
-            uv_dict[us['uid']] = {'version': us['version'], 'nickname': us['nickname']}
+            uv_dict[us['uid']] = {'version': us['version'],
+                                  'nickname': us['nickname'],
+                                  'detect_interval': us['detect_interval']}
         for p in dvls:
             p['vod'] = []
             for dm in ubqs:
@@ -728,13 +732,15 @@ def queryInterface(request):
             p['preview'] = []
             for up in upqs:
                 if p['UID'] == up['uid']:
-                    obj = 'uid_preview/{uid}/channel_{channel}.png'.format(uid=up['uid'], channel=up['channel'])
+                    obj = 'uid_preview/{uid}/channel_{channel}.png'.\
+                        format(uid=up['uid'], channel=up['channel'])
                     img_sign = bucket.sign_url('GET', obj, 300)
                     p['preview'].append(img_sign)
             p_uid = p['UID']
             if p_uid in uv_dict:
                 # 设备版本号
                 p['uid_version'] = uv_dict[p_uid]['version']
+                p['detect_interval'] = uv_dict[p_uid]['detect_interval']
                 # 设备昵称 调用影子信息昵称,先阶段不可
                 if uv_dict[p_uid]['nickname']:
                     p['NickName'] = uv_dict[p_uid]['nickname']
@@ -766,7 +772,7 @@ def uid_status(request):
     # 判断用户是否绑定设备
     qs = UidSetModel.objects.filter(uid=uid).values('uid', 'detect_status', 'detect_interval', 'version', 'ucode',
                                                     'p2p_region', 'tz', 'video_code', 'channel', 'cloud_vod', 'id',
-                                                    'detect_group','is_alexa','region_alexa')
+                                                    'detect_group', 'is_alexa', 'region_alexa')
     # 判断uid配置表信息是否存在
     if qs.exists():
         # 获取uid推送是否添加过

+ 5 - 3
Controller/EquipmentManagerV2.py

@@ -158,10 +158,10 @@ class EquipmentManagerV2(View):
             nowTime = int(time.time())
             data = []
             # 设备拓展信息表
-            us_qs = UidSetModel.objects.filter(uid__in=uid_list).values('uid', 'version', 'nickname','ucode')
+            us_qs = UidSetModel.objects.filter(uid__in=uid_list).values('uid', 'version', 'nickname', 'ucode','detect_interval')
             uv_dict = {}
             for us in us_qs:
-                uv_dict[us['uid']] = {'version': us['version'], 'nickname': us['nickname'],'ucode':us['ucode']}
+                uv_dict[us['uid']] = {'version': us['version'], 'nickname': us['nickname'], 'ucode': us['ucode'],'detect_interval':us['detect_interval']}
             for p in dvls:
                 p['vod'] = []
                 for dm in ubqs:
@@ -179,6 +179,7 @@ class EquipmentManagerV2(View):
                     # 设备版本号
                     p['uid_version'] = uv_dict[p_uid]['version']
                     p['ucode'] = uv_dict[p_uid]['ucode']
+                    p['detect_interval'] = uv_dict[p_uid]['detect_interval']
                     # 设备昵称 调用影子信息昵称,先阶段不可
                     if uv_dict[p_uid]['nickname']:
                         p['NickName'] = uv_dict[p_uid]['nickname']
@@ -186,6 +187,7 @@ class EquipmentManagerV2(View):
                     # 设备版本号
                     p['uid_version'] = ''
                     p['ucode'] = ''
+                    p['detect_interval'] = ''
                 data.append(p)
             return response.json(0, data)
         else:
@@ -195,7 +197,7 @@ class EquipmentManagerV2(View):
 
     def do_query_reset(self, userID, request_dict, response):
         dvqs = Device_Info.objects.filter(userID_id=userID, isExist=2)
-        dvql = dvqs.values\
+        dvql = dvqs.values \
             ('id', 'NickName', 'UID', 'ChannelIndex', 'Type', 'isShare')
         res = CommonService.qs_to_list(dvql)
         return response.json(0, res)

+ 3 - 2
Controller/UidUser.py

@@ -128,10 +128,11 @@ def queryInterface(request):
     response.lang = tko.lang
     if page <= 0:
         return response.json(0)
-    redisObj = RedisObject(db=8)
-    redisObj.del_data(key='uid_qs_' + userID)
+
     if tko.code == 0:
         userID = tko.userID
+        redisObj = RedisObject(db=8)
+        redisObj.del_data(key='uid_qs_' + userID)
         uid_user_qs = UidUserModel.objects.filter(userID_id=userID)
         if is_ap:
             is_ap = int(is_ap)

+ 31 - 30
Controller/UserController.py

@@ -1291,37 +1291,38 @@ class v3LoginView(TemplateView):
         password = password.strip()
         print("准备解密")
         # 解密
-        for i in range(1, 4):
-            if i == 1:
-                # 第一次先解密
-                password = base64.b64decode(password)
-                password = password.decode('utf-8')
-                # 截去第一位,最后一位
-                password = password[1:-1]
-            if i==2:
-                # 第2次先解密
-                password = base64.b64decode(password)
-                password = password.decode('utf-8')
-                # 去前2位,后2位
-                password = password[2:-2]
-            if i==3:
-                # 第3次先解密
-                password = base64.b64decode(password)
-                password = password.decode('utf-8')
-                # 去前3位,后3位
-                password = password[3:-3]
-
-        # print("------------%s"%password)
-        # return response.json(111)
-        data_valid = DataValid()
-        if data_valid.email_validate(username):
-            return self.do_email_login(username, password, response)
-        elif data_valid.mobile_validate(username):
-            return self.do_phone_login(username, password, response)
-        elif data_valid.name_validate(username):
-            return self.do_name_login(username, password, response)
+        try:
+            for i in range(1, 4):
+                if i == 1:
+                    # 第一次先解密
+                    password = base64.b64decode(password)
+                    password = password.decode('utf-8')
+                    # 截去第一位,最后一位
+                    password = password[1:-1]
+                if i==2:
+                    # 第2次先解密
+                    password = base64.b64decode(password)
+                    password = password.decode('utf-8')
+                    # 去前2位,后2位
+                    password = password[2:-2]
+                if i==3:
+                    # 第3次先解密
+                    password = base64.b64decode(password)
+                    password = password.decode('utf-8')
+                    # 去前3位,后3位
+                    password = password[3:-3]
+        except Exception as e:
+            return response.json(111)
         else:
-            return response.json(107)
+            data_valid = DataValid()
+            if data_valid.email_validate(username):
+                return self.do_email_login(username, password, response)
+            elif data_valid.mobile_validate(username):
+                return self.do_phone_login(username, password, response)
+            elif data_valid.name_validate(username):
+                return self.do_name_login(username, password, response)
+            else:
+                return response.json(107)
 
     def do_email_login(self, email, password, response):
         user_qs = Device_User.objects.filter(Q(username=email) | Q(userEmail=email))

+ 4 - 1
Model/models.py

@@ -426,7 +426,7 @@ class Store_Meal(models.Model):
     bucket = models.ForeignKey(VodBucketModel, blank=True, to_field='id', on_delete=models.CASCADE,
                                default=1, verbose_name='存储空间')
     commodity_type = models.SmallIntegerField(default=0, verbose_name='云存储套餐类型')  # 0:事件型 1:连续型
-    commodity_code = models.CharField(default='', max_length=16, verbose_name='套餐规格码', unique=True)
+    commodity_code = models.CharField(default='', max_length=16, verbose_name='套餐规格码')
 
     def __str__(self):
         return self.id
@@ -555,6 +555,8 @@ class VodHlsModel(models.Model):
     sec = models.IntegerField(verbose_name='秒数', default=0)
     bucket = models.ForeignKey(VodBucketModel, blank=True, to_field='id', on_delete=models.CASCADE, default=1,
                                verbose_name='存储空间')
+    fg = models.SmallIntegerField(default=0,verbose_name='时间片段数') # 0为阿里云存储方案 >0为亚马逊方案
+
 
     def __str__(self):
         return self.id
@@ -593,6 +595,7 @@ class StsCrdModel(models.Model):
     addTime = models.IntegerField(verbose_name='添加时间', default=0)
     bucket = models.ForeignKey(VodBucketModel, blank=True, to_field='id', on_delete=models.CASCADE, default=1,
                                verbose_name='存储空间')
+    type = models.SmallIntegerField(default=0,verbose_name='sts类型') # 0:阿里云,1:s3
 
     def __str__(self):
         return self.id