Przeglądaj źródła

Alexa搜索设备增加多通道设备_2

locky 4 lat temu
rodzic
commit
f250b938f8
2 zmienionych plików z 40 dodań i 38 usunięć
  1. 1 1
      Controller/UidSetController.py
  2. 39 37
      Controller/UserController.py

+ 1 - 1
Controller/UidSetController.py

@@ -380,7 +380,7 @@ class UidSetView(View):
         token = request_dict.get('token', None)
         print(channelContent)
         if not channelContent or not uid or not channel:
-            return response.json(444, 'content,uid, chan')
+            return response.json(444, 'content,uid, channel')
         tko = TokenObject(token)
         response.lang = tko.lang
         if tko.code != 0:

+ 39 - 37
Controller/UserController.py

@@ -2739,44 +2739,46 @@ class alexaUidView(TemplateView):
         if not uid_qs.exists():
             return response.json(107)
 
-        uid_dict = {}
-        uid_list = []
-        for uid_q in uid_qs:
-            # 追加
-            uid_list.append(uid_q['UID'])
-            # 给uid_q['UID']赋值
-            uid_dict[uid_q['UID']] = {'nick': uid_q['NickName'], 'password': uid_q['View_Password']}
-
-        us_qs = UidSetModel.objects.filter(uid__in=uid_list, is_alexa=1).values('uid', 'region_alexa', 'channel')
-        if not us_qs.exists():
-            return response.json(173)
-        # uid,password,region的列表
-        uid_arr = []
-        for us in us_qs:
-            uid = us['uid']
-            channel = us['channel']
-            # 设备alexa区域
-            region_alexa = us['region_alexa']
-            if region_alexa == '':
-                region_alexa = 'EN'
-
-            # 多通道设备获取通道名
-            if channel > 1:
-                uid_channel_set_qs = UidChannelSetModel.objects.filter(uid=us).values('channel', 'channel_name')
-                if uid_channel_set_qs.exists():
-                    # DVR设备名为 UidChannelSetModel 的 channel_name
-                    for uid_channel_set in uid_channel_set_qs:
-                        uid_arr.append({'uid': uid, 'nick': uid_channel_set.channel_name, 'region': region_alexa,
-                                        'password': uid_dict[uid]['password'], 'multi_channel': 1,
-                                        'channel': uid_channel_set.channel})
-            else:
-                uid_arr.append({'uid': uid, 'nick': uid_dict[uid]['nick'], 'region': region_alexa,
-                                'password': uid_dict[uid]['password'], 'multi_channel': 0})
-        res = {
-            'uid_arr': uid_arr
-        }
-        return response.json(0, res)
+        try:
+            uid_dict = {}
+            uid_list = []
+            for uid_q in uid_qs:
+                # 追加
+                uid_list.append(uid_q['UID'])
+                # 给uid_q['UID']赋值
+                uid_dict[uid_q['UID']] = {'nick': uid_q['NickName'], 'password': uid_q['View_Password']}
 
+            us_qs = UidSetModel.objects.filter(uid__in=uid_list, is_alexa=1).values('uid', 'region_alexa', 'channel')
+            if not us_qs.exists():
+                return response.json(173)
+            # uid,password,region的列表
+            uid_arr = []
+            for us in us_qs:
+                uid = us['uid']
+                channel = us['channel']
+                # 设备alexa区域
+                region_alexa = us['region_alexa']
+                if region_alexa == '':
+                    region_alexa = 'EN'
+
+                # 多通道设备获取通道名
+                if channel > 1:
+                    uid_channel_set_qs = UidChannelSetModel.objects.filter(uid=us).values('channel', 'channel_name')
+                    if uid_channel_set_qs.exists():
+                        # DVR设备名为 UidChannelSetModel 的 channel_name
+                        for uid_channel_set in uid_channel_set_qs:
+                            uid_arr.append({'uid': uid, 'nick': uid_channel_set['channel_name'], 'region': region_alexa,
+                                            'password': uid_dict[uid]['password'], 'multi_channel': 1,
+                                            'channel': uid_channel_set['channel']})
+                else:
+                    uid_arr.append({'uid': uid, 'nick': uid_dict[uid]['nick'], 'region': region_alexa,
+                                    'password': uid_dict[uid]['password'], 'multi_channel': 0})
+            res = {
+                'uid_arr': uid_arr
+            }
+            return response.json(0, res)
+        except Exception as e:
+            return response.json(500, repr(e))
 
 # 登出
 class V2LogoutView(TemplateView):