Kaynağa Gözat

单点登录忽略servers@ansjer.com账号

locky 3 hafta önce
ebeveyn
işleme
7f5da40d29

+ 7 - 0
Controller/TransparentTransmissionPushController.py

@@ -10,6 +10,7 @@ from django.views import View
 
 from Model.models import UidPushModel, GatewayPush
 from Object.ResponseObject import ResponseObject
+from Service.CommonService import CommonService
 from Service.HuaweiPushService.HuaweiPushService import HuaweiPushObject
 from Service.PushService import PushObject
 from AnsjerPush.config import XM_PUSH_CHANNEL_ID, HONORPUSH_CONFIG, LOGGER, APP_MAPPING
@@ -57,6 +58,12 @@ class TransparentTransmissionPushView(View):
                 return response.json(173)
             uid_push_list = list(uid_push_qs)
             LOGGER.info('{}推送列表:{}'.format(user_id, uid_push_list))
+
+            # 忽略servers@ansjer.com账号
+            username = CommonService.get_username(user_id)
+            if username == 'servers@ansjer.com':
+                return response.json(0)
+
             push_thread = threading.Thread(target=TransparentTransmissionPushView.thread_push,
                                            args=(uid_push_list, user_id, '强制登出', '强制登出', 705))
             push_thread.start()

+ 19 - 1
Service/CommonService.py

@@ -18,7 +18,7 @@ from base64 import encodebytes
 
 from AnsjerPush.config import BASE_DIR, ACCESS_KEY_ID, SECRET_ACCESS_KEY, REGION_NAME, PUSH_BUCKET, SYS_EVENT_TYPE_LIST, \
     DATA_PUSH_EVENT_TYPE_LIST
-from Model.models import iotdeviceInfoModel
+from Model.models import iotdeviceInfoModel, Device_User
 from Object.enums.EventTypeEnum import EventTypeEnumObj
 
 
@@ -437,3 +437,21 @@ GCqvlyw5dfxNA+EtxNE2wCW/LW7ENJlACgcfgPlBZtpLheWoZB/maw4=
         elif event_type in DATA_PUSH_EVENT_TYPE_LIST:
             jump_type = 3
         return jump_type
+
+    @staticmethod
+    def get_username(user_id):
+        """
+        根据用户id获取用户名/邮箱/电话
+        @param user_id: 用户id
+        @return:
+        """
+        if user_id:
+            device_user_qs = Device_User.objects.filter(userID=user_id).values('username', 'userEmail', 'phone')
+            if device_user_qs.exists():
+                if device_user_qs[0]['username']:
+                    return device_user_qs[0]['username']
+                elif device_user_qs[0]['userEmail']:
+                    return device_user_qs[0]['userEmail']
+                elif device_user_qs[0]['phone']:
+                    return device_user_qs[0]['phone']
+        return ''