mirror of https://github.com/interlegis/sapl.git
Browse Source
* implementando celery para tramitacao de email e indexacao do solr corrigindo conflitos do cherry pick celery email_queue implementando solr com fila de menagem * adicionando django-celery-results==1.0.4 * corrigindo quantidade de argumentos * adicionando Whoosh * dockerizando celery * Startando celery no docker-composer junto ao saplpull/2811/head
Ricardo Lima Canela
6 years ago
committed by
Edward
10 changed files with 92 additions and 12 deletions
@ -0,0 +1,3 @@ |
|||||
|
from .celery import app as celery_app |
||||
|
|
||||
|
__all__ = ('celery_app',) |
@ -0,0 +1,27 @@ |
|||||
|
from sapl.celery import app |
||||
|
from sapl.base.email_utils import do_envia_email_tramitacao |
||||
|
from sapl.materia.models import StatusTramitacao, UnidadeTramitacao, MateriaLegislativa |
||||
|
from sapl.protocoloadm.models import StatusTramitacaoAdministrativo, DocumentoAdministrativo |
||||
|
|
||||
|
|
||||
|
@app.task(queue='email_queue') |
||||
|
def task_envia_email_tramitacao(kwargs): |
||||
|
|
||||
|
tipo = kwargs.get("tipo") |
||||
|
doc_mat_id = kwargs.get("doc_mat_id") |
||||
|
tramitacao_status_id = kwargs.get("tramitacao_status_id") |
||||
|
tramitacao_unidade_tramitacao_destino_id = kwargs.get("tramitacao_unidade_tramitacao_destino_id") |
||||
|
base_url = kwargs.get("base_url") |
||||
|
|
||||
|
if tipo == 'documento': |
||||
|
doc_mat = DocumentoAdministrativo.objects.get(id=doc_mat_id) |
||||
|
status = StatusTramitacaoAdministrativo.objects.get(id=tramitacao_status_id) |
||||
|
|
||||
|
elif tipo == 'materia': |
||||
|
doc_mat = MateriaLegislativa.objects.get(id=doc_mat_id) |
||||
|
status = StatusTramitacao.objects.get(id=tramitacao_status_id) |
||||
|
|
||||
|
unidade_destino = UnidadeTramitacao.objects.get(id=tramitacao_unidade_tramitacao_destino_id) |
||||
|
|
||||
|
do_envia_email_tramitacao(base_url, tipo, doc_mat, status, unidade_destino) |
||||
|
|
@ -0,0 +1,10 @@ |
|||||
|
import os |
||||
|
from celery import Celery |
||||
|
from django.conf import settings |
||||
|
|
||||
|
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'sapl.settings') |
||||
|
app = Celery('sapl') |
||||
|
app.config_from_object('django.conf:settings', namespace='CELERY') |
||||
|
|
||||
|
|
||||
|
app.autodiscover_tasks(lambda: settings.INSTALLED_APPS) |
Loading…
Reference in new issue