|
@@ -100,6 +100,7 @@ class CustomizedPushObject:
|
|
|
if gateway_push_qs.exists():
|
|
|
sys_msg_list = []
|
|
|
saved_user_id_list = []
|
|
|
+ gateway_push_list = []
|
|
|
for gateway_push in gateway_push_qs:
|
|
|
# user_id保存列表,避免重复写入数据
|
|
|
user_id = gateway_push['user_id']
|
|
@@ -107,20 +108,36 @@ class CustomizedPushObject:
|
|
|
saved_user_id_list.append(user_id)
|
|
|
sys_msg_list.append(SysMsgModel(
|
|
|
userID_id=user_id, title=title, msg=msg, jumpLink=link, addTime=n_time, updTime=n_time))
|
|
|
-
|
|
|
- # 异步推送消息
|
|
|
- push_kwargs['gateway_push'] = gateway_push
|
|
|
- push_thread = threading.Thread(
|
|
|
- target=cls.start_push,
|
|
|
- kwargs=push_kwargs)
|
|
|
- push_thread.start()
|
|
|
-
|
|
|
+ gateway_push_list.append(gateway_push)
|
|
|
+ # 保存系统消息和异步推送消息
|
|
|
SysMsgModel.objects.bulk_create(sys_msg_list)
|
|
|
+ pre_push_kwargs = {
|
|
|
+ 'push_kwargs': push_kwargs,
|
|
|
+ 'gateway_push_list': gateway_push_list
|
|
|
+ }
|
|
|
+ pre_push_thread = threading.Thread(
|
|
|
+ target=cls.pre_push,
|
|
|
+ kwargs=pre_push_kwargs)
|
|
|
+ pre_push_thread.start()
|
|
|
CUSTOMIZED_PUSH_LOGGER.info('customized_push_id:{}推送完成'.format(kwargs['id']))
|
|
|
except Exception as e:
|
|
|
CUSTOMIZED_PUSH_LOGGER.info('定制化推送或保存数据异常,'
|
|
|
'error_line:{},error_msg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
|
|
|
|
|
|
+ @classmethod
|
|
|
+ def pre_push(cls, **kwargs):
|
|
|
+ CUSTOMIZED_PUSH_LOGGER.info('预推送线程开始')
|
|
|
+ push_kwargs = kwargs['push_kwargs']
|
|
|
+ gateway_push_list = kwargs['gateway_push_list']
|
|
|
+ for gateway_push in gateway_push_list:
|
|
|
+ # 异步推送消息
|
|
|
+ push_kwargs['gateway_push'] = gateway_push
|
|
|
+ push_thread = threading.Thread(
|
|
|
+ target=cls.start_push,
|
|
|
+ kwargs=push_kwargs)
|
|
|
+ push_thread.start()
|
|
|
+ CUSTOMIZED_PUSH_LOGGER.info('预推送线程完成')
|
|
|
+
|
|
|
@classmethod
|
|
|
def start_push(cls, **kwargs):
|
|
|
gateway_push = kwargs['gateway_push']
|