Browse Source

云存主用户空值报错问题

zhangdongming 2 years ago
parent
commit
ada225bb7b
1 changed files with 26 additions and 25 deletions
  1. 26 25
      Controller/EquipmentManagerV3.py

+ 26 - 25
Controller/EquipmentManagerV3.py

@@ -1,5 +1,6 @@
 import base64
 import json
+import logging
 import re
 import threading
 import time
@@ -15,7 +16,7 @@ from Controller.CheckUserData import RandomStr
 from Controller.DeviceConfirmRegion import Device_Region
 from Controller.SensorGateway.EquipmentFamilyController import EquipmentFamilyView
 from Model.models import Device_Info, UID_Bucket, UID_Preview, UidSetModel, UidChannelSetModel, \
-    Device_User, iotdeviceInfoModel, UIDCompanySerialModel, UIDModel, UnicomDeviceInfo, CountryModel, \
+    Device_User, iotdeviceInfoModel, UIDCompanySerialModel, UnicomDeviceInfo, CountryModel, \
     DeviceCloudPhotoInfo
 from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
@@ -24,6 +25,8 @@ from Service.EquipmentInfoService import EquipmentInfoService
 from Service.ModelService import ModelService
 from Service.UserDeviceService import UserDeviceService
 
+LOGGER = logging.getLogger('info')
+
 
 class EquipmentManagerV3(View):
 
@@ -888,35 +891,33 @@ class EquipmentManagerV3(View):
                 password = password[3:-3]
         return password
 
-    def do_mainUserDevice(self, request_dict, response):
-        UID = request_dict.get('UID')
-        dvq = Device_Info.objects.filter(UID=UID)
-        dvq = dvq.filter(~Q(vodPrimaryUserID='')).values('vodPrimaryUserID')
-        qs = {}
-        if dvq.exists():
-            qs = Device_User.objects.filter(userID=dvq[0]['vodPrimaryUserID']).values('userID', 'NickName', 'username',
-                                                                                      'userEmail', 'phone')
-            NickName = qs[0]['username']
-            userEmail = qs[0]['userEmail']
+    @staticmethod
+    def do_mainUserDevice(request_dict, response):
+        """
+        根据UID获取云存主用户信息
+        """
+        try:
+            UID = request_dict.get('UID')
+            dvq = Device_Info.objects.filter(UID=UID)
+            dvq = dvq.filter(~Q(vodPrimaryUserID='')).values('vodPrimaryUserID')
+            if not dvq.exists():
+                return response.json(0, {})
+            qs = Device_User.objects.filter(userID=dvq[0]['vodPrimaryUserID']) \
+                .values('userID', 'NickName', 'username', 'userEmail', 'phone')
+            if not qs.exists():
+                return response.json(0, {})
+            nickname = qs[0]['username']
             phone = qs[0]['phone']
             username = qs[0]['username']
             qs = CommonService.qs_to_list(qs)
-            if NickName == '':
+            if nickname == '':
                 qs[0]['NickName'] = username
-
-            # if userEmail =='':
-            #     qs[0]['userEmail'] = NickName
-
             if phone == '':
-                qs[0]['phone'] = NickName
-
-        # if not qs:
-        #     uidq = UIDMainUser.objects.filter(UID=UID).values('user_id')
-        #     if uidq.exists():
-        #         qs = Device_User.objects.filter(userID=uidq[0]['user_id']).values('userID', 'NickName', 'username', 'userEmail', 'phone')
-        #         qs = CommonService.qs_to_list(qs)
-
-        return response.json(0, qs)
+                qs[0]['phone'] = nickname
+            return response.json(0, qs)
+        except Exception as e:
+            LOGGER.info('异常详情,errLine:{}, errMsg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
+            return response.json(500)
 
     def not_login_do_mainUserDevice(self, request_dict, response):
         UID = request_dict.get('UID')