migrer rappels de rdv vers gestion

This commit is contained in:
2021-01-24 16:10:29 +01:00
parent af2315bad2
commit 793a62cc2d
11 changed files with 181 additions and 252 deletions

71
mondumas/models/utils.py Normal file
View File

@@ -0,0 +1,71 @@
# -*- coding: utf8 -*-
from sqlalchemy import text
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import (
scoped_session,
sessionmaker,
)
from zope.sqlalchemy import (
ZopeTransactionExtension,
mark_changed
)
from datetime import *
import dateutil.relativedelta
import transaction
def execute_query(request, query, params):
"""Execute query and mark session as changed"""
request.dbsession.execute(query, params)
mark_changed(request.dbsession)
transaction.commit()
def insert_log(request, proc, msg):
query = "INSERT t_log_nuit (proc,msg) VALUES (:proc,:msg);"
execute_query(request, query, {'proc': proc, 'msg' :msg})
def truncate_log(request):
query = "TRUNCATE t_log_nuit;"
execute_query(request, query, {})
def get_log(request):
# lire les rappels non envoyés
query = "SELECT * FROM t_log_nuit;"
results = request.dbsession.execute(query, {}).fetchall()
return results
def get_email_rappels(request):
# lire les rappels non envoyés
query = """ SELECT r.*, e.c_qualite, e.c_nom, e.c_adr, e.c_adr2, e.c_ville, e.c_email, s.tel, s.nom as nom_societe
FROM email_rappels r
INNER JOIN dem_devis e ON r.societe = e.societe AND r.nochantier = e.no_id
INNER JOIN p_societe s ON r.societe = s.societe
WHERE ISNULL(envoye_le) ORDER BY no_id;"""
results = request.dbsession.execute(query, {}).fetchall()
return results
def delete_rdv(request, nodossier, nolig):
societe = nodossier[0:2]
no_id = nodossier[3:]
query = "DELETE FROM dem_lig where societe = '%s' and no_id=%s and nolig=%s;" % (societe, no_id, nolig)
execute_query(request, query, {})
def update_rappels(request):
query = "CALL spUPD_RAPPELS();"
execute_query(request, query, {})
def update_email_rappels(request, no_id):
query = "UPDATE email_rappels SET envoye_le = NOW() WHERE no_id = :no_id;"
execute_query(request, query, {'no_id': no_id})
def get_societes(request, societe):
if societe == '0':
query = "SELECT * FROM p_societe;"
results = request.dbsession.execute(query, {'societe': societe, 'no_id': no_id}).fetchall()
else:
query = "SELECT * FROM p_societe WHERE societe = :societe;"
results = request.dbsession.execute(query, {'societe': societe}).first()
return results