refactor(wf): route ticket notifications through celery
This commit is contained in:
parent
2bca239af3
commit
843ed2807a
|
|
@ -1,5 +1,4 @@
|
|||
import importlib
|
||||
from threading import Thread
|
||||
from django.core.cache import cache
|
||||
from apps.utils.sms import send_sms
|
||||
from apps.wf.serializers import TicketSimpleSerializer
|
||||
|
|
@ -10,7 +9,7 @@ from django.utils import timezone
|
|||
from datetime import timedelta, datetime
|
||||
import random
|
||||
from apps.utils.queryset import get_parent_queryset
|
||||
from apps.wf.tasks import run_task
|
||||
from apps.wf.tasks import run_task, send_ticket_notice as send_ticket_notice_task
|
||||
from rest_framework.exceptions import ParseError
|
||||
import time
|
||||
|
||||
|
|
@ -525,7 +524,7 @@ class WfService(object):
|
|||
@classmethod
|
||||
def send_ticket_notice(cls, ticketflow:TicketFlow):
|
||||
# 根据ticketflow发送通知
|
||||
Thread(target=send_ticket_notice_t, args=(ticketflow.id,), daemon=True).start()
|
||||
send_ticket_notice_task.delay(ticketflow.ticket_id)
|
||||
|
||||
|
||||
@classmethod
|
||||
|
|
|
|||
|
|
@ -39,13 +39,14 @@ def send_ticket_notice(ticket_id):
|
|||
# ws推送
|
||||
# 发送短信通知
|
||||
pt = User.objects.filter(id=ticket.participant).first()
|
||||
ticket_push.delay(ticket.id, pt.id)
|
||||
if pt:
|
||||
ticket_push(ticket.id, pt.id)
|
||||
if pt and pt.phone:
|
||||
send_sms(pt.phone, 1002, params)
|
||||
elif ticket.participant_type == 2:
|
||||
pts = User.objects.filter(id__in=ticket.participant)
|
||||
for i in pts:
|
||||
ticket_push.delay(ticket.id, i.id)
|
||||
ticket_push(ticket.id, i.id)
|
||||
if i.phone:
|
||||
send_sms(i.phone, 1002, params)
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue