禁用除新订单服务号广播外的所有 Celery/Beat 任务,仅保留 dingdan_guangbo
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
13
utils/celery_guard.py
Normal file
13
utils/celery_guard.py
Normal file
@@ -0,0 +1,13 @@
|
||||
"""
|
||||
Celery 任务安全闸:生产环境仅允许「新订单服务号广播」任务执行。
|
||||
"""
|
||||
from django.conf import settings
|
||||
|
||||
_DISABLED_MSG = 'CELERY_ONLY_ORDER_BROADCAST:非新订单广播任务已禁止执行'
|
||||
|
||||
|
||||
def celery_non_broadcast_blocked():
|
||||
"""若当前禁止非广播任务,返回说明字符串;否则返回 None。"""
|
||||
if getattr(settings, 'CELERY_ONLY_ORDER_BROADCAST', True):
|
||||
return _DISABLED_MSG
|
||||
return None
|
||||
@@ -850,6 +850,8 @@ STATUS_NOTIFY_TEXT = {
|
||||
|
||||
def schedule_order_status_chat_push(dingdan_id):
|
||||
"""订单状态变更后,事务提交后异步推送群聊状态更新"""
|
||||
if getattr(settings, 'CELERY_ONLY_ORDER_BROADCAST', True):
|
||||
return
|
||||
if not dingdan_id:
|
||||
return
|
||||
|
||||
|
||||
Reference in New Issue
Block a user