Commit c6091a8a authored by Nicolas Joyard's avatar Nicolas Joyard

Corrections script batch cada

parent 1422a514
...@@ -93,7 +93,7 @@ def avance_procedure(etape): ...@@ -93,7 +93,7 @@ def avance_procedure(etape):
correspondantes. correspondantes.
""" """
app.config.update(SQLALCHEMY_ECHO=False) app.config.update(SQLALCHEMY_ECHO=False)
avance_procedure_(app, etape) avance_procedure_(app, int(etape))
@manager.command @manager.command
......
...@@ -185,7 +185,7 @@ ETAPES = [ ...@@ -185,7 +185,7 @@ ETAPES = [
avons transmis la demande d'accès aux relevés de compte à la avons transmis la demande d'accès aux relevés de compte à la
Commission d'Accès aux Documents Administratifs. Commission d'Accès aux Documents Administratifs.
""", """,
'couleur': '#bbbb66', 'couleur': '#eebb44',
'icone': 'balance-scale', 'icone': 'balance-scale',
'hidden': False, 'hidden': False,
'alerte': True 'alerte': True
......
...@@ -31,12 +31,15 @@ def mailing_lists(): ...@@ -31,12 +31,15 @@ def mailing_lists():
} }
def envoyer_alerte(app, etape, parl, commentaire): def envoyer_alerte(app, etape, parl, commentaire=None):
mail = Mail(app) mail = Mail(app)
sender = ('Regards Citoyens', app.config['ADMIN_EMAIL']) sender = ('Regards Citoyens', app.config['ADMIN_EMAIL'])
subject = 'Transparence IRFM - Alerte pour %s' % parl.nom_complet subject = 'Transparence IRFM - Alerte pour %s' % parl.nom_complet
if not commentaire:
commentaire = etape['description']
messages = [] messages = []
for user in parl.abonnes: for user in parl.abonnes:
anon_id = user.nick[8:] if user.nick.startswith('anonyme!') else None anon_id = user.nick[8:] if user.nick.startswith('anonyme!') else None
......
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
from datetime import datetime, time from datetime import datetime, time
from time import sleep
from ..models import Action, Parlementaire, User, db from ..models import Action, Parlementaire, User, db
from ..models.constants import (DEBUT_ACTION, ETAPE_COURRIEL, ETAPES_BY_ORDRE, from ..models.constants import (DEBUT_ACTION, ETAPE_A_CONFIRMER,
ETAPE_DEMANDE_CADA, ETAPE_REPONSE_POSITIVE, ETAPE_COURRIEL, ETAPES_BY_ORDRE,
ETAPE_NA) ETAPE_DEMANDE_CADA, ETAPE_DOC_PUBLIE,
ETAPE_REPONSE_POSITIVE, ETAPE_NA)
from .mails import envoyer_alerte from .mails import envoyer_alerte
...@@ -64,23 +66,44 @@ def avance_procedure(app, ordre_etape): ...@@ -64,23 +66,44 @@ def avance_procedure(app, ordre_etape):
for parl in parls: for parl in parls:
print(parl.nom_complet) print(parl.nom_complet)
# Création de l'action # Cas particulier demande CADA
act = Action( if ordre_etape == ETAPE_DEMANDE_CADA:
parlementaire=parl, if parl.etape == ETAPE_A_CONFIRMER:
etape=ordre_etape, # Suppression de l'étape prise en charge si c'est l'étape
date=datetime.now(), # actuelle du député
user=admin, pec = Action.query \
) .filter(Action.parlementaire == parl) \
db.session.add(act) .filter(Action.etape == ETAPE_A_CONFIRMER) \
.first()
if pec:
db.session.delete(pec)
# Transformation de l'action 'Document' en action "Demande CADA"
act = Action.query \
.filter(Action.parlementaire == parl) \
.filter(Action.etape == ETAPE_DOC_PUBLIE) \
.filter(Action.attachment.like('document-cada-%')) \
.first()
if act:
act.etape = ETAPE_DEMANDE_CADA
# Création de l'action si inexistante
if not act:
act = Action(
parlementaire=parl,
etape=ordre_etape,
date=datetime.now(),
user=admin,
)
db.session.add(act)
parl.etape = ordre_etape parl.etape = ordre_etape
# Commit immédiat pour pouvoir arrêter en plein milieu et reprendre # Commit immédiat pour pouvoir arrêter en plein milieu et reprendre
db.session.commit() db.session.commit()
if etape['alerte']: if etape['alerte']:
cnt = envoyer_alerte(app, etape, parl, '') cnt = envoyer_alerte(app, etape, parl)
if cnt: if cnt:
print('%s e-mails d\'alerte envoyés' % cnt) print('%s e-mails d\'alerte envoyés' % cnt)
sleep(1)
# Throttling mails
time.sleep(1)
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment