Пример #1
0
    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()
Пример #2
0
    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()
Пример #3
0
    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()
Пример #4
0
    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()