def EnvoyerEmail(self, event): """ Envoi par Email des codes internet """ # Validation des données saisies tracks = self.ctrl_listview.GetTracksCoches() if len(tracks) == 0 : dlg = wx.MessageDialog(self, _(u"Vous n'avez sélectionné aucune famille dans la liste !"), _(u"Erreur"), wx.OK | wx.ICON_EXCLAMATION) dlg.ShowModal() dlg.Destroy() return False dict_adresses = UTILS_Envoi_email.GetAdressesFamilles([track.IDfamille for track in tracks]) if dict_adresses == False: return False liste_donnees = [] for track in tracks: for adresse in dict_adresses.get(track.IDfamille, []): champs = { "{NOM_FAMILLE}" : track.nomTitulaires, "{IDENTIFIANT_INTERNET}" : track.internet_identifiant, "{MOTDEPASSE_INTERNET}" : track.internet_mdp, } liste_donnees.append({"adresse" : adresse, "pieces" : [], "champs" : champs}) # Transfert des données vers DLG Mailer from Dlg import DLG_Mailer dlg = DLG_Mailer.Dialog(self, categorie="portail") dlg.SetDonnees(liste_donnees, modificationAutorisee=False) dlg.ChargerModeleDefaut() dlg.ShowModal() dlg.Destroy()
def OnBoutonOk(self, event): """ Aperçu PDF des inscriptions """ # Validation des données saisies tracks = self.ctrl_liste_inscriptions.GetTracksCoches() if len(tracks) == 0 : dlg = wx.MessageDialog(self, _(u"Vous n'avez sélectionné aucune inscription à envoyer par Email !"), _(u"Erreur"), wx.OK | wx.ICON_EXCLAMATION) dlg.ShowModal() dlg.Destroy() return # Création des inscriptions sélectionnées listeIDinscription = [] for track in tracks : listeIDinscription.append(track.IDinscription) inscription = UTILS_Inscriptions.Inscription() dictOptions = self.ctrl_options.GetOptions() if dictOptions == False : return resultat = inscription.Impression(listeInscriptions=listeIDinscription, nomDoc=None, afficherDoc=False, dictOptions=dictOptions, repertoire=dictOptions["repertoire"], repertoireTemp=True) if resultat == False : return dictChampsFusion, dictPieces = resultat def SupprimerFichiersTemp(): for IDinscription, fichier in dictPieces.items(): if os.path.isfile(fichier): os.remove(fichier) # Récupération des adresses Emails dict_adresses = UTILS_Envoi_email.GetAdressesFamilles([track.IDfamille for track in tracks]) if dict_adresses == False: return False liste_donnees = [] for track in tracks: if track.IDinscription in dictPieces: for adresse in dict_adresses.get(track.IDfamille, []): fichier = dictPieces[track.IDinscription] champs = dictChampsFusion[track.IDinscription] liste_donnees.append({"adresse" : adresse, "pieces" : [fichier,], "champs" : champs}) # Transfert des données vers DLG Mailer from Dlg import DLG_Mailer dlg = DLG_Mailer.Dialog(self, categorie="inscription") dlg.SetDonnees(liste_donnees, modificationAutorisee=False) dlg.ChargerModeleDefaut() dlg.ShowModal() dlg.Destroy() # Suppression des PDF temporaires SupprimerFichiersTemp()
def EnvoiEmail(self, event=None): """ Envoi par Email des attestations fiscales """ # Validation des données saisies tracks = self.ctrl_attestations.GetTracksCoches() if len(tracks) == 0 : dlg = wx.MessageDialog(self, _(u"Vous n'avez sélectionné aucune attestation à imprimer !"), _(u"Erreur"), wx.OK | wx.ICON_EXCLAMATION) dlg.ShowModal() dlg.Destroy() return False # Création des cotisations sélectionnées dictOptions = self.GetOptions() if dictOptions == False : return False x = UTILS_Attestations_fiscales.Attestations_fiscales() resultat = x.Impression(tracks=tracks, nomDoc=None, afficherDoc=False, dictOptions=dictOptions, repertoire=dictOptions["repertoire"], repertoireTemp=True) if resultat == False : return False dictChampsFusion, dictPieces = resultat def SupprimerFichiersTemp(): for IDcompte_payeur, fichier in dictPieces.items(): if os.path.isfile(fichier): os.remove(fichier) # Récupération des adresses mail dict_adresses = UTILS_Envoi_email.GetAdressesFamilles([track.IDfamille for track in tracks]) if dict_adresses == False: return False liste_donnees = [] for track in tracks: if track.IDcompte_payeur in dictPieces: for adresse in dict_adresses.get(track.IDfamille, []): fichier = dictPieces[track.IDcompte_payeur] champs = dictChampsFusion[track.IDcompte_payeur] liste_donnees.append({"adresse": adresse, "pieces": [fichier,], "champs": champs}) # Transfert des données vers DLG Mailer from Dlg import DLG_Mailer dlg = DLG_Mailer.Dialog(self, categorie="attestation_fiscale") dlg.SetDonnees(liste_donnees, modificationAutorisee=False) dlg.ChargerModeleDefaut() dlg.ShowModal() dlg.Destroy() # Suppression des PDF temporaires SupprimerFichiersTemp()
def EnvoyerEmail(self, event): """ Envoi par Email de rappels de pièces manquantes """ # Validation des données saisies tracks = self.ctrl_listview.GetTracksCoches() if len(tracks) == 0: dlg = wx.MessageDialog( self, _(u"Vous n'avez sélectionné aucune famille dans la liste !"), _(u"Erreur"), wx.OK | wx.ICON_EXCLAMATION) dlg.ShowModal() dlg.Destroy() return False # Récupération des adresses email dict_adresses = UTILS_Envoi_email.GetAdressesFamilles( [track.IDfamille for track in tracks]) if dict_adresses == False: return False liste_donnees = [] for track in tracks: for adresse in dict_adresses.get(track.IDfamille, []): champs = { "{NOM_FAMILLE}": track.nomTitulaires, "{LISTE_PIECES_MANQUANTES}": track.pieces, } liste_donnees.append({ "adresse": adresse, "pieces": [], "champs": champs }) # Transfert des données vers DLG Mailer from Dlg import DLG_Mailer dlg = DLG_Mailer.Dialog(self, categorie="rappel_pieces_manquantes") dlg.SetDonnees(liste_donnees, modificationAutorisee=False) dlg.ChargerModeleDefaut() dlg.ShowModal() dlg.Destroy()