瀏覽代碼

修复登录选择地区存在问题

locky 2 年之前
父節點
當前提交
fcbb7f16fb
共有 2 個文件被更改,包括 8 次插入9 次删除
  1. 2 2
      Controller/RegionController.py
  2. 6 7
      Controller/UserController.py

+ 2 - 2
Controller/RegionController.py

@@ -314,14 +314,14 @@ class RegionView(View):
             # 根据app名返回相应域名
             app_name = app_inf_qs[0]['appName']
             country_qs = CountryLanguageModel.objects.filter(language_id=lang.id).annotate(
-                country_number=F('country__number'), push_api=F('country__region__push_api'))
+                country_id=F('country__id'), push_api=F('country__region__push_api'))
             if 'Zosi' in app_name:
                 country_qs = country_qs.annotate(api=F('country__region__zosi_api'))
             elif 'Loocam' in app_name:
                 country_qs = country_qs.annotate(api=F('country__region__loocam_api'))
             else:
                 country_qs = country_qs.annotate(api=F('country__region__api'))
-            country_qs = country_qs.values('country_name', 'country_number', 'api', 'push_api')
+            country_qs = country_qs.values('country_name', 'country_id', 'api', 'push_api')
             return response.json(0, list(country_qs))
         except Exception as e:
             return response.json(500, repr(e))

+ 6 - 7
Controller/UserController.py

@@ -2009,9 +2009,8 @@ class noPasslogin(TemplateView):
 
 # 密码加密新登录
 class v3LoginView(TemplateView):
-    @method_decorator(csrf_exempt)  # @csrf_exempt
+    @method_decorator(csrf_exempt)
     def dispatch(self, *args, **kwargs):
-        # chong
         return super(v3LoginView, self).dispatch(*args, **kwargs)
 
     @ratelimit(key='ip', rate='5/m')
@@ -2025,7 +2024,6 @@ class v3LoginView(TemplateView):
             return response.json(5)
         return self.validates(request_dict, response)
 
-    # @ratelimit(key='ip', rate='5/m')
     def get(self, request, *args, **kwargs):
         request.encoding = 'utf-8'
         request_dict = request.GET
@@ -2096,8 +2094,6 @@ class v3LoginView(TemplateView):
     def valid_login(self, user_qs, password, response, subscribe, number, request_dict):
         if not user_qs.exists():
             return response.json(104)
-        # users = user_qs.values('role__rid', 'role__roleName', 'userID', 'role', 'NickName', 'username', 'userEmail',
-        #                        'phone', 'password', 'userIconPath', 'user_isValid', 'is_active')[0]
         if subscribe:
             user_qs.update(subscribe_email=subscribe)
 
@@ -2138,14 +2134,17 @@ class v3LoginView(TemplateView):
         now_time = datetime.datetime.utcnow().replace(tzinfo=utc).astimezone(utc)
         region_country = users['region_country']
         lang_id = LanguageModel.objects.filter(lang=lang).values('id')
+
+        # 更新最后登录时间
         if not number or number == '0':
             user_qs.update(last_login=now_time, language=response.lang)
         else:
+            # 判断所选地区和用户注册地区是否一致
             number = int(number)
-            if number != region_country and region_country != 0:
+            if number != region_country and region_country != 0:    # 不一致
                 res['status'] = 1
                 user_qs.update(last_login=now_time, language=response.lang)
-            else:
+            else:   # 一致
                 res['status'] = 0
                 user_qs.update(last_login=now_time, language=response.lang, region_country=number)
         region_qs = CountryLanguageModel.objects.filter(country_id=region_country, language_id=lang_id[0]['id']).values(