|
@@ -3218,7 +3218,8 @@ class alexaUidView(TemplateView):
|
|
|
'userID__region_country')
|
|
|
if not uid_qs.exists():
|
|
|
return response.json(107)
|
|
|
- country_qs = CountryModel.objects.filter(id=uid_qs[0]['userID__region_country']).values('region__continent_code')
|
|
|
+ country_qs = CountryModel.objects.filter(id=uid_qs[0]['userID__region_country']).values(
|
|
|
+ 'region__continent_code')
|
|
|
|
|
|
try:
|
|
|
uid_dict = {}
|
|
@@ -3262,6 +3263,50 @@ class alexaUidView(TemplateView):
|
|
|
return response.json(500, repr(e))
|
|
|
|
|
|
|
|
|
+class alexaSwitchView(TemplateView):
|
|
|
+ def post(self, request, *args, **kwargs):
|
|
|
+ request.encoding = 'utf-8'
|
|
|
+ # request_dict = json.loads(request.body.decode('utf-8'))
|
|
|
+ request_dict = request.POST
|
|
|
+ response = ResponseObject()
|
|
|
+ return self.validates(request_dict, response)
|
|
|
+
|
|
|
+ def get(self, request, *args, **kwargs):
|
|
|
+ request.encoding = 'utf-8'
|
|
|
+ request_dict = request.GET
|
|
|
+ response = ResponseObject()
|
|
|
+ return self.validates(request_dict, response)
|
|
|
+
|
|
|
+ def validates(self, request_dict, response):
|
|
|
+ sid = request_dict.get('sid')
|
|
|
+ sst = request_dict.get('sst')
|
|
|
+ userID = request_dict.get('alexa_user_id')
|
|
|
+
|
|
|
+ if sid != 'admin' or sst != 'admin':
|
|
|
+ return response.json(107)
|
|
|
+ switch_qs = Device_Info.objects.filter(userID_id=userID, Type=201).values('UID', 'NickName',
|
|
|
+ 'userID__region_country')
|
|
|
+ if not switch_qs.exists():
|
|
|
+ return response.json(107)
|
|
|
+ # 设备alexa区域
|
|
|
+ country_qs = CountryModel.objects.filter(id=switch_qs[0]['userID__region_country']).values(
|
|
|
+ 'region__continent_code')
|
|
|
+ region_alexa = country_qs[0]['region__continent_code'] if country_qs.exists() else 'EN'
|
|
|
+
|
|
|
+ try:
|
|
|
+ switch_list = []
|
|
|
+ for switch in switch_qs:
|
|
|
+ uid = switch['UID']
|
|
|
+ nick_name = switch['NickName']
|
|
|
+ switch_list.append({'uid': uid, 'nick': nick_name, 'region': region_alexa})
|
|
|
+ res = {
|
|
|
+ 'switch_list': switch_list
|
|
|
+ }
|
|
|
+ return response.json(0, res)
|
|
|
+ except Exception as e:
|
|
|
+ return response.json(500, repr(e))
|
|
|
+
|
|
|
+
|
|
|
# 登出
|
|
|
class V2LogoutView(TemplateView):
|
|
|
@method_decorator(csrf_exempt)
|