From 7a706ba9f2e957aca6b2dc2b2ce209aa2d02432e Mon Sep 17 00:00:00 2001 From: Phuoc CAO Date: Wed, 21 Jul 2021 20:32:01 +0200 Subject: [PATCH] change email dumas passwords --- mondumas/models/default.py | 3 +- mondumas/templates/parametres/tarifs.pt | 5 +- .../templates/parametres/tarifs_import.pt | 2 +- mondumas/views/default.py | 41 +++++++------- mondumas/views/dossier.py | 21 ++++--- mondumas/views/parametres.py | 4 +- mondumas/views/utils.py | 55 +++++-------------- production.ini | 4 +- 8 files changed, 56 insertions(+), 79 deletions(-) diff --git a/mondumas/models/default.py b/mondumas/models/default.py index 128f77a..fa17662 100644 --- a/mondumas/models/default.py +++ b/mondumas/models/default.py @@ -159,6 +159,7 @@ def get_rdv_by_date(request, date, agenda): return results def get_rdf_null(request): - query = """SELECT COUNT(*) AS nb_rdf FROM bddevfac.dem_rdf WHERE date_relu IS NULL;""" + # lire les RDF non validés depuis moins d'un an + query = """SELECT COUNT(*) AS nb_rdf FROM bddevfac.dem_rdf WHERE DATEDIFF(CURDATE(), date_inter) < 365 AND date_relu IS NULL;""" results = request.dbsession.execute(query).first() return results diff --git a/mondumas/templates/parametres/tarifs.pt b/mondumas/templates/parametres/tarifs.pt index 5fa552c..c2e76be 100644 --- a/mondumas/templates/parametres/tarifs.pt +++ b/mondumas/templates/parametres/tarifs.pt @@ -26,9 +26,10 @@ Référence + Fam Libellé - Unité - Prix HT 1 + Prix HT + Unit Modif le diff --git a/mondumas/templates/parametres/tarifs_import.pt b/mondumas/templates/parametres/tarifs_import.pt index 54e056e..90fb035 100644 --- a/mondumas/templates/parametres/tarifs_import.pt +++ b/mondumas/templates/parametres/tarifs_import.pt @@ -24,7 +24,7 @@
- + Retour diff --git a/mondumas/views/default.py b/mondumas/views/default.py index fb5480e..2fcf45c 100644 --- a/mondumas/views/default.py +++ b/mondumas/views/default.py @@ -76,16 +76,16 @@ def mailbox_connect(request, societe): # connecter au serveur IMAP de la societe if societe == 'PE': mbx_name = 'peinture-dumas@entreprise-dumas.com' - mbx_pwd = 'sasdumas' + mbx_pwd = 'S@sdumas69' elif societe == 'ME': mbx_name = 'menuiserie-dumas@entreprise-dumas.com' - mbx_pwd = 'sasdumas' + mbx_pwd = 'S@sdumas69' elif societe == 'PL': mbx_name = 'versanit-dumas@entreprise-dumas.com' - mbx_pwd = 'sasdumas' + mbx_pwd = 'S@sdumas69' elif societe == 'PO': mbx_name = 'polynet-dumas@entreprise-dumas.com' - mbx_pwd = 'sasdumas' + mbx_pwd = 'S@sdumas69' else: request.session.flash("Cette société est inconnue ou non traitée : %s" % societe, 'danger') return None @@ -122,29 +122,30 @@ def home(request): societes = ['PE','ME','PL','PO'] # critères de recherche des demandes d'interventions de la MAIF - search_criteria = ['FROM gestionsinistre@maif.fr SUBJECT "Intervention entreprise partenaire"', + search_criteria = ['FROM gestionsinistre@maif.fr SUBJECT "Intervention entreprise partenaire" UNDELETED', 'FROM service.sinistres@domus-services.fr UNDELETED'] nb_mails = 0 # lister les demandes par societe for societe in societes: conn = mailbox_connect(request, societe) - # select INBOX - rv, data = conn.select('INBOX', readonly =True) - - # créer la liste des entêtes des messages à afficher - for criteria in search_criteria: - rv, data = conn.search(None, criteria) - if rv != 'OK': - request.session.flash("ERREUR de lecture de la boîte de réception", 'danger') - return HTTPFound(location=request.route_url('home')) - - # ng de mails dans la mailbax - nb_mails += len(data[0]) + if conn != None: + # select INBOX + rv, data = conn.select('INBOX', readonly =True) + + # créer la liste des entêtes des messages à afficher + for criteria in search_criteria: + rv, data = conn.search(None, criteria) + if rv != 'OK': + request.session.flash("ERREUR de lecture de la boîte de réception", 'danger') + return HTTPFound(location=request.route_url('home')) + + # ng de mails dans la mailbax + nb_mails += len(data[0]) - # deconnexion du serveur - conn.close() - conn.logout() + # deconnexion du serveur + conn.close() + conn.logout() return { 'page_title': 'Bienvenue sur %s' % request.host, diff --git a/mondumas/views/dossier.py b/mondumas/views/dossier.py index 912caba..434230f 100644 --- a/mondumas/views/dossier.py +++ b/mondumas/views/dossier.py @@ -849,13 +849,16 @@ def rdf_bill(request): def demandes(request): def demandes_lister(societe, search_criteria): + # créer la liste des entêtes des messages à afficher + liste = [] # connecter au serveur de mail conn = mailbox_connect(request, societe) + if conn == None: + return liste + # select INBOX rv, data = conn.select('INBOX', readonly =True) - # créer la liste des entêtes des messages à afficher - liste = [] for criteria in search_criteria: rv, data = conn.search(None, criteria) if rv != 'OK': @@ -932,7 +935,7 @@ def demandes_dl(request): if 'maif.fr' in mbx_search: # extraire les infos de la demmande MAIF - dem_info = get_pdf_infos1(extracted_file) + dem_info = get_pdf_infos_maif(extracted_file) if societe == 'PE': cd_cli = 2813 elif societe == 'ME': @@ -942,7 +945,7 @@ def demandes_dl(request): cd_cli = 1743 elif 'domus-services.fr' in mbx_search: # extraire les infos de la demmande DOMUS - dem_info = get_pdf_infos2(extracted_file) + dem_info = get_pdf_infos_domus(extracted_file) if societe == 'PE': cd_cli = 8991 elif societe == 'ME': @@ -983,7 +986,7 @@ def demandes_dl(request): def generer_annul_maif(request, societe, extracted_file, temp_file_path): # extraire les infos de la demmande MAIF - dem_info = get_pdf_infos1(extracted_file) + dem_info = get_pdf_infos_maif(extracted_file) # extraction OK ? oui, rechercher la dem_devis concerné traite = 0 @@ -1206,7 +1209,7 @@ def pdf_convert_to_txt(path): return extracted_text, extracted_file -def get_pdf_infos1(extracted_file): +def get_pdf_infos_maif(extracted_file): # à partir du fichier texte du pdf # parcourir les lignes pour retrouver les infos utiles with open(extracted_file, encoding="utf-8") as fp: @@ -1288,7 +1291,7 @@ def get_pdf_infos1(extracted_file): 'no_sinistre': no_sinistre, } -def get_pdf_infos2(extracted_file): +def get_pdf_infos_domus(extracted_file): # à partir du fichier texte du pdf de DOMUS # parcourir les lignes pour retrouver les infos utiles with open(extracted_file, encoding="utf-8") as fp: @@ -1349,7 +1352,7 @@ def get_pdf_infos2(extracted_file): 'no_sinistre': no_sinistre, } -def get_pdf_infos3(extracted_file): +def get_pdf_infos_axa(extracted_file): # à partir du fichier texte du pdf de AXA # parcourir les lignes pour retrouver les infos utiles with open(extracted_file, encoding="utf-8") as fp: @@ -1469,7 +1472,7 @@ def upload_om(request): def generer_mission(request, extracted_file, temp_file_path): # extraire les infos de la demmande AXA - dem_info = get_pdf_infos3(extracted_file) + dem_info = get_pdf_infos_axa(extracted_file) societe = dem_info['societe'] if societe == 'PE': cd_cli = 15207 diff --git a/mondumas/views/parametres.py b/mondumas/views/parametres.py index 4495458..e4e67ac 100644 --- a/mondumas/views/parametres.py +++ b/mondumas/views/parametres.py @@ -699,7 +699,7 @@ def tarifs(request): # construire la liste liste=[] for item in items: - d = (item.ref, item.libelle, item.unite, to_euro(item.prixht), item.modif_le.strftime("%d-%m-%Y")) + d = (item.ref, item.famille, item.libelle[:100], to_euro(item.prixht), item.unite, item.modif_le.strftime("%d-%m-%Y")) liste.append(d) return { @@ -801,7 +801,7 @@ def tarifs_import(request): request.session.flash(temp_file + " -> Ce fichier ne semble pas être un tarif AXA", 'danger') return HTTPFound(location=url) - # import pdb;pdb.set_trace() + import pdb;pdb.set_trace() for nsheet in range(book.nsheets): # pour chaque feuille dans le tableau XLS sh = book.sheet_by_index(nsheet) diff --git a/mondumas/views/utils.py b/mondumas/views/utils.py index 41a0140..c867662 100644 --- a/mondumas/views/utils.py +++ b/mondumas/views/utils.py @@ -45,9 +45,10 @@ def batch_nuit(request): # ----- MAJ STATS DELAIS de traitements des dossiers sur 1 an insert_log(request, 'STATS', '- Début MAJ STATS DES PERFORMANCES') - update_chantiers_delais(request, date(TODAY.year, TODAY.month, 1)) - update_chantiers_delais(request, date(TODAY.year, TODAY.month-1, 1)) - update_chantiers_delais(request, date(TODAY.year, TODAY.month-2, 1)) + datejour = TODAY + for i in xrange(12): + update_chantiers_delais(request, datejour) + datejour = datejour + relativedelta(months=-1) societes = ['PL', 'ME', 'PE'] datejour = TODAY @@ -193,10 +194,15 @@ def batch_test(request): if par != 'Sansa5tark': return Response('Erreur : paramètre incorrect') - # à revoir - update_chantiers_status(request) - + TODAY = date.today() + + # ----- MAJ STATS DELAIS de traitements des dossiers sur 1 an + datejour = TODAY + for i in xrange(12): + update_chantiers_delais(request, datejour) + datejour = datejour + relativedelta(months=-1) + until_date = date(TODAY.year - 10, TODAY.month, 1) # purge_mensuelle(request, until_date) # purge_clients(request) @@ -238,42 +244,7 @@ def delete_orphan_attached_files(request): if nbLus > 0: insert_log(request, 'DELETE', '%s : %d Répertoires lues, %d supprimées' % (ste, nbLus, nbSupp)) - - -def update_chantiers_status(request): - """ - Ce traitement parcourt tous les chantiers de chacune des 5 sociétés - pour mettre à jour son STATUS selon l'avancement du chantier. - """ - - societes = ['PE','ME','PL','PO','CD'] - - for ste in societes: - # lire tous les chantiers - chantiers = get_all_chantiers(request, ste) - for item in chantiers: - status = item.STATUS - # si le chantier est annulé, ne rien faire - if status <= 10: - # lire la dernière facture du chantier - facture = get_last_facture(request, ste, item.NO_ID) - if facture : - # remonte le status de la facture ('','Régl part.', 'Réglée') - status = facture.STATUS - else: - # lire le dernier devis du chantier ('','Commandé, 'Facturé') - devis = get_last_devis(request, ste, item.NO_ID) - if devis: - # remonte le status de la facture - status = devis.STATUS - else: - if item.DATEVI: - status = 2 - - # maj le status du chantier - if status != item.STATUS: - update_chantier_status(request, ste, item.NO_ID, status) - + def update_chantiers_delais(request, date): """ Ce traitement calcul les delais : diff --git a/production.ini b/production.ini index a23249d..95c57d1 100644 --- a/production.ini +++ b/production.ini @@ -33,8 +33,8 @@ mail.host = v5.alinto.net mail.port = 465 mail.ssl = True # ATTENTION : mail.username est utilisé dans rdf_view -mail.username = polynet-dumas@entreprise-dumas.com -mail.password = sasdumas +mail.username = peinture-dumas@entreprise-dumas.com +mail.password = S@sdumas69 [server:main] use = egg:waitress#main