Răsfoiți Sursa

消息推送,云存功能暂时完毕

chenjunkai 6 ani în urmă
părinte
comite
5e5aec3b6b
3 a modificat fișierele cu 22 adăugiri și 32 ștergeri
  1. 2 2
      Ansjer/local_settings.py
  2. 18 28
      Controller/UserController.py
  3. 2 2
      Object/TokenObject.py

+ 2 - 2
Ansjer/local_settings.py

@@ -204,8 +204,8 @@ LOGGING = {
         'django': {
             'handlers': ['default', 'console'],
             # 'handlers': ['mail_admins','default','console'],
-            'level': 'ERROR',
-            # 'level': 'DEBUG',
+            # 'level': 'ERROR',
+            'level': 'DEBUG',
             'propagate': True
         },
         # 'django.db.backends': {

+ 18 - 28
Controller/UserController.py

@@ -397,7 +397,7 @@ class ForgetPwdView(TemplateView):
                 reset_pwd = redisObj.get_data(key=userID + '_email_reset_pwd')
                 if reset_pwd is False:
                     tko = TokenObject()
-                    rest = tko.generate(data={'userID': userID,'user':userName})
+                    rest = tko.generate(data={'userID': userID, 'user': userName})
                     token = rest['access_token']
                     reset_pwd = CommonService.RandomStr(6)
                     send_data = TemplateService.email_message(type='forget', language='en')
@@ -579,7 +579,7 @@ class v2authCodeView(TemplateView):
         if send_res is not True:
             return response.json(44)
         if reds.set_data(key=email + '_identifyingCode', val=identifyingCode, expire=600) is not True:
-            return response.json(10,'error')
+            return response.json(10, 'error')
         return response.json(0)
         # return response.json(0, {'identifyingCode': identifyingCode})
 
@@ -996,56 +996,46 @@ class v2LoginView(TemplateView):
 
     def do_email_login(self, email, password, response):
         user_qs = Device_User.objects.filter(Q(username=email) | Q(userEmail=email))
-        if not user_qs.exists():
-            return response.json(104)
-        if not user_qs[0].user_isValid or not user_qs[0].is_active:
-            return response.json(110)
         return self.valid_login(user_qs, password, response)
 
     def do_phone_login(self, phone, password, response):
         user_qs = Device_User.objects.filter(Q(phone=phone) | Q(username=phone))
-        if not user_qs.exists():
-            return response.json(104)
-        if not user_qs[0].user_isValid or not user_qs[0].is_active:
-            return response.json(110)
         return self.valid_login(user_qs, password, response)
 
     def do_name_login(self, username, password, response):
         user_qs = Device_User.objects.filter(Q(username=username) | Q(phone=username) | Q(userEmail=username))
-        if not user_qs.exists():
-            return response.json(104)
-        if not user_qs[0].user_isValid or not user_qs[0].is_active:
-            return response.json(110)
         return self.valid_login(user_qs, password, response)
 
     def valid_login(self, user_qs, password, response):
-        if not check_password(password, user_qs[0].password):
+        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 not check_password(password, users['password']):
             return response.json(111)
-        # userID = user_qs[0].userID
-        role_qs = user_qs.values('role__permission', 'role__rid', 'role__roleName', 'userID')
-        userID = role_qs[0]['userID']
+        if not users['user_isValid'] or not users['is_active']:
+            return response.json(110)
+        userID = users['userID']
         tko = TokenObject()
-        user_list = user_qs.values("NickName", "userIconUrl", "userIconPath", "username", "userEmail", "phone")
-        res = tko.generate(data={'userID': userID, 'lang': response.lang, 'user': user_list[0]["username"]})
+        res = tko.generate(data={'userID': userID, 'lang': response.lang, 'user': users['username']})
         if tko.code == 0:
             now_time = datetime.datetime.utcnow().replace(tzinfo=utc).astimezone(utc)
             user_qs.update(last_login=now_time, online=True, language=response.lang)
-            res['rid'] = role_qs[0]['role__rid']
-            res['roleName'] = role_qs[0]['role__roleName']
+            res['rid'] = users['role__rid']
+            res['roleName'] = users['role__roleName']
             res['permList'] = ModelService.own_permission(userID)
             res['userID'] = userID
             # 昵称,邮箱,电话,刷新,头像
-            userIconPath = str(user_list[0]["userIconPath"])
+            userIconPath = str(users['userIconPath'])
             if userIconPath and userIconPath.find('static/') != -1:
                 userIconPath = userIconPath.replace('static/', '').replace('\\', '/')
                 res['userIconUrl'] = SERVER_DOMAIN + 'account/getAvatar/' + userIconPath
             else:
                 res['userIconUrl'] = ''
-            res['NickName'] = user_list[0]["NickName"] if user_list[0]["NickName"] is not None else ''
-            res['username'] = user_list[0]["username"] if user_list[0]["username"] is not None else ''
-            res['userEmail'] = user_list[0]["userEmail"] if user_list[0]["userEmail"] is not None else ''
-            res['phone'] = user_list[0]["phone"] if user_list[0]["phone"] is not None else ''
-            # print(res)
+            res['NickName'] = users['NickName'] if users['NickName'] is not None else ''
+            res['username'] = users['username'] if users['username'] is not None else ''
+            res['userEmail'] = users['userEmail'] if users['userEmail'] is not None else ''
+            res['phone'] = users['phone'] if users['phone'] is not None else ''
             return response.json(0, res)
         else:
             return response.json(tko.code)

+ 2 - 2
Object/TokenObject.py

@@ -23,7 +23,7 @@ class TokenObject:
         if token == 'local':
             token = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VySUQiOiIxNTQzOTA5MDUwNDEzMTM4MDAxMzgwMDAiLCJsYW5nIjoiZW4iLCJ1c2VyIjoiMTM4MDAxMzgwMDEiLCJleHAiOjE1NDc2MjA2ODR9.mwqBOK0v0C4ww4hSiXIVmJGpxQLeIW92J1cxYquFxUg'
         if token == 'test':
-            token = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VySUQiOiIxNTE1NjQyNjIzMzc5Mzk1MTM4MDAxMzgwMDEiLCJsYW5nIjoiZW4iLCJleHAiOjE1NDcwMTMzMjV9.4Q-hqqihFClYKCIoUd16ZZe2FRvpElmio6P25Qpg26Q'
+            token = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySUQiOiIxNTE1NjQyNjIzMzc5Mzk1MTM4MDAxMzgwMDEiLCJleHAiOjE1NDc2MjA5NTYsImxhbmciOiJlbiIsInVzZXIiOiIxMzgwMDEzODAwMSJ9.RTNlCl5Xn9fRvqLLsNbJPS0vTRUiZHCzlHKizFgm6yc'
         self.token = token
         self.lang = None
         self.userID = None
@@ -37,7 +37,7 @@ class TokenObject:
     def valid(self):
         try:
             res = jwt.decode(self.token, OAUTH_ACCESS_TOKEN_SECRET, algorithms='HS256')
-            print(res)
+            # print(res)
             self.userID = res.get('userID', None)
             self.lang = res.get('lang', None)
             self.user = res.get('user', '')