示例#1
0
        public void getById_test()
        {
            // moqer le find du dbSet afin de pouvoir l'utiliser dans la methode getById de GenericRepository
            moqSetPorteFeuille.Setup(m => m.Find(1)).Returns(data.AsQueryable().FirstOrDefault(p => p.id == 1));
            porteFeuilleRepo = new GenericRepository <PorteFeuille>(moqContext.Object, moqSetPorteFeuille.Object);

            PorteFeuille porteFeuille = porteFeuilleRepo.GetByID(1);

            Assert.IsTrue(porteFeuille.id == 1);
            Assert.AreEqual(porteFeuille.designation, "famille miller");
        }
示例#2
0
        public HttpResponseMessage add([FromBody] PorteFeuille portefeuille)
        {
            try
            {
                if (!portefeuilleRepository.InsertPortefeuille(portefeuille))
                {
                    throw new Exception("ajout de l'instance de portefuille non effecuté ");
                }
                HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.Created);
                response.StatusCode = HttpStatusCode.Created;
                String uri = Url.Link("PostPortefeuille", new { id = portefeuille.id });
                response.Headers.Location = new Uri(uri);

                return(response);
            }
            catch (Exception e)
            {
                HttpResponseMessage response = Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e);

                return(response);
            }
        }
示例#3
0
        public HttpResponseMessage updatePortefeuille([FromBody] PorteFeuille portefeuille)
        {
            try
            {
                if (!portefeuilleRepository.updatePortefeuille(portefeuille))
                {
                    throw new Exception("update portefeuille échouée");
                }
                PorteFeuille        p        = portefeuilleRepository.getPortefeuilleById(portefeuille.id);
                HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.OK, portefeuille);
                response.StatusCode = HttpStatusCode.OK;
                String uri = Url.Link("PutPortefeuille", new { id = portefeuille.id });
                response.Headers.Location = new Uri(uri);

                return(response);
            }
            catch (Exception e)
            {
                HttpResponseMessage response = Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e);

                return(response);
            }
        }
        private void AjouterUtilisateur(TypeUtilisateur unTypeUtilisateur, string loginUtilisateur, string nomUtilisateur, string prenomUtilisateur, string mailUtilisateur, string telUtilisateur, string adresseUtilisateur,
                                        string villeUtilisateur, string cpUtilisateur, string libellePortefeuille, string libellePlanning, bool changePassword)
        {
            sessionFactory = new Configuration().Configure().BuildSessionFactory();
            ISession session = sessionFactory.OpenSession();

            string motdepasse = "";
            string erreur     = "";

            //     try
            //       {


            using (ITransaction transaction = session.BeginTransaction())
            {
                // Si l'action n'a pas été faite par un gestionnaire on gère le changement de type
                if (!isGestionnaire)
                {
                    // si c'est une modification
                    if (utilisateur.typeUtilisateur != null)
                    {
                        //S'il s'agit d'une modification en commercial
                        if (unTypeUtilisateur.codeTypeUtilisateur == 3 || utilisateur.typeUtilisateur.codeTypeUtilisateur == 3)
                        {
                            //si l'utilisateur n'etait pas un commercial avant
                            if (utilisateur.typeUtilisateur.codeTypeUtilisateur != 3)
                            {
                                Planning unNouveauPlanning = new Planning();
                                unNouveauPlanning.libellePlanning = libellePlanning;
                                unNouveauPlanning.utilisateur     = utilisateur;
                                session.SaveOrUpdate(unNouveauPlanning);

                                PorteFeuille unNouveauPortefeuille = new PorteFeuille();
                                unNouveauPortefeuille.libellePortefeuille = libellePortefeuille;
                                unNouveauPortefeuille.utilisateur         = utilisateur;
                                session.SaveOrUpdate(unNouveauPortefeuille);

                                utilisateur.planning     = unNouveauPlanning;
                                utilisateur.porteFeuille = unNouveauPortefeuille;
                                session.SaveOrUpdate(utilisateur);
                            }
                        }



                        //Après une migration d'un commercial vers un autre type, on supprime son affectation au planning et portefeuille
                        if (unTypeUtilisateur.codeTypeUtilisateur != 3 && utilisateur.typeUtilisateur.codeTypeUtilisateur == 3)
                        {
                            //On supprime l'idUtilisateur dans la table portefeuille et planning
                            utilisateur.porteFeuille.utilisateur = null;
                            utilisateur.planning.utilisateur     = null;

                            session.SaveOrUpdate(utilisateur.porteFeuille);
                            session.SaveOrUpdate(utilisateur.planning);


                            //On supprime l'idPortefeuille/idPlanning dans la table Utilsiateur
                            utilisateur.porteFeuille = null;
                            utilisateur.planning     = null;
                        }
                    }
                }


                // on affecter le type:

                // Si l'utilisateur qui a fait l'action est un gestionnaire on met le type à commercial
                // On associe le type du nouvel utilisateur à 3 (commercial)
                if (isGestionnaire == true)
                {
                    TypeUtilisateur typeUtilisateur = new TypeUtilisateur();

                    IList <TypeUtilisateur> lesTypesUtilisateurs = typeUtilisateur.GetLesTypesUtilisateur();

                    foreach (TypeUtilisateur type in lesTypesUtilisateurs)
                    {
                        if (type.codeTypeUtilisateur == 3)
                        {
                            utilisateur.typeUtilisateur = type;
                        }
                    }
                }
                // Sinon on renseigne le type  de la form de l'admin
                else
                {
                    utilisateur.typeUtilisateur = unTypeUtilisateur;
                }

                // On check si l'utilisateur existe, si non on crée un nouveau mdp par défaut.
                bool exist = session.QueryOver <Utilisateur>().Where(x => x.numUtilisateur == utilisateur.numUtilisateur).RowCount() > 0;
                if (!exist)
                {
                    changePassword = true;
                }

                if (changePassword == true)
                {
                    //-------------------- DEBUT BLOC GENERATION DU MOT DE PASSE DU NOUVEL UTILISATEUR--------------------------
                    //On génère un mot de passe aléatoire pour le nouvel Utilisateur
                    Random       random = new Random();
                    const string chars  = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
                    motdepasse = new string(Enumerable.Repeat(chars, 10).Select(s => s[random.Next(s.Length)]).ToArray());
                    // on converti la phrase random en md5
                    InterLogin pourMD5 = new InterLogin();
                    //on associe le mot de passe
                    utilisateur.passwordUtilisateur = pourMD5.MD5Hash(motdepasse);
                    //-------------------- FIN BLOC GENERATION DU MOT DE PASSE DU NOUVEL UTILISATEUR--------------------------
                }

                if (loginUtilisateur != null)
                {
                    utilisateur.loginUtilisateur = loginUtilisateur;
                }
                else
                {
                    erreur += "\nMerci d'entrer un login d'utilisateur";
                }
                if (nomUtilisateur != null)
                {
                    utilisateur.nomUtilisateur = nomUtilisateur;
                }
                else
                {
                    erreur += "\nMerci d'entrer un nom d'utilisateur";
                }
                if (prenomUtilisateur != null)
                {
                    utilisateur.prenomUtilisateur = prenomUtilisateur;
                }
                else
                {
                    erreur += "\nMerci d'entrer un prénom d'utilisateur";
                }
                if (mailUtilisateur != null)
                {
                    utilisateur.mailUtilisateur = mailUtilisateur;
                }
                else
                {
                    erreur += "\nMerci d'entrer un mail d'utilisateur";
                }
                if (telUtilisateur != null)
                {
                    utilisateur.telUtilisateur = telUtilisateur;
                }
                else
                {
                    erreur += "\nMerci d'entrer un numéro téléphone d'utilisateur";
                }
                if (adresseUtilisateur != null)
                {
                    utilisateur.adresseUtilisateur = adresseUtilisateur;
                }
                else
                {
                    erreur += "\nMerci d'entrer une adresse d'utilisateur";
                }
                if (villeUtilisateur != null)
                {
                    utilisateur.villeUtilisateur = villeUtilisateur;
                }
                else
                {
                    erreur += "\nMerci d'entrer une ville d'utilisateur";
                }
                if (cpUtilisateur != null)
                {
                    utilisateur.cpUtilisateur = cpUtilisateur;
                }
                else
                {
                    erreur += "\nMerci d'entrer un code postal d'utilisateur";
                }


                //S'il s'agit d'un commercial:
                if (utilisateur.typeUtilisateur.codeTypeUtilisateur == 3)
                {
                    // Si il s'agit d'un ajout
                    if (utilisateur.planning == null || utilisateur.porteFeuille == null)
                    {
                        unNouveauPlanning.libellePlanning         = libellePlanning;
                        unNouveauPortefeuille.libellePortefeuille = libellePortefeuille;

                        unNouveauPlanning.utilisateur     = utilisateur;
                        unNouveauPortefeuille.utilisateur = utilisateur;


                        utilisateur.planning     = unNouveauPlanning;
                        utilisateur.porteFeuille = unNouveauPortefeuille;


                        session.SaveOrUpdate(unNouveauPlanning);
                        session.SaveOrUpdate(unNouveauPortefeuille);
                    }
                    // Sinon si il s'agit d'une modification
                    else
                    {
                        utilisateur.planning.libellePlanning = libellePlanning;
                        session.SaveOrUpdate(utilisateur.planning);

                        utilisateur.porteFeuille.libellePortefeuille = libellePortefeuille;
                        session.SaveOrUpdate(utilisateur.porteFeuille);
                    }
                }


                session.SaveOrUpdate(utilisateur);
                transaction.Commit();
                session.Dispose();
            }

            try
            {
                // Une fois que tout fonctionne on envoie le MDP au mail du nouvel utilisateur
                MailMessage mail = new MailMessage();
                mail.Subject = "Nouvel accès à GEPEV!";
                mail.Body    = "Bienvenue " + utilisateur.nomUtilisateur + " " + utilisateur.prenomUtilisateur + "! Votre mot de passe est: " + motdepasse;
                mail.From    = new MailAddress("*****@*****.**");
                mail.To.Add(utilisateur.mailUtilisateur);

                SmtpClient client = new SmtpClient();
                client.Host = "localhost";
                client.Send(mail);
            }
            catch (Exception ex)
            {
                MessageBox.Show("Erreur" + ex.Message);
            }
        }
        static string Modifier(TypeUtilisateur unTypeUtilisateur, string loginUtilisateur, string nomUtilisateur, string prenomUtilisateur,
                               string mailUtilisateur, string telUtilisateur, string adresseUtilisateur, string villeUtilisateur, string cpUtilisateur, string libellePortefeuille,
                               Utilisateur utilisateur, bool changePassword)
        {
            string motdepasse = "reste le même.";

            sessionFactory = new Configuration().Configure().BuildSessionFactory();
            ISession session = sessionFactory.OpenSession();

            using (ITransaction transaction = session.BeginTransaction())
            {
                if (loginUtilisateur != null)
                {
                    utilisateur.loginUtilisateur = loginUtilisateur;
                }
                else
                {
                    return("Merci d'entrer un login d'utilisateur");
                }
                if (nomUtilisateur != null)
                {
                    utilisateur.nomUtilisateur = nomUtilisateur;
                }
                else
                {
                    return("Merci d'entrer un nom d'utilisateur");
                }
                if (prenomUtilisateur != null)
                {
                    utilisateur.prenomUtilisateur = prenomUtilisateur;
                }
                else
                {
                    return("Merci d'entrer un prénom d'utilisateur");
                }
                if (mailUtilisateur != null)
                {
                    utilisateur.mailUtilisateur = mailUtilisateur;
                }
                else
                {
                    return("Merci d'entrer un mail d'utilisateur");
                }
                if (telUtilisateur != null)
                {
                    utilisateur.telUtilisateur = telUtilisateur;
                }
                else
                {
                    return("Merci d'entrer un numéro téléphone d'utilisateur");
                }
                if (adresseUtilisateur != null)
                {
                    utilisateur.adresseUtilisateur = adresseUtilisateur;
                }
                else
                {
                    return("Merci d'entrer une adresse d'utilisateur");
                }
                if (villeUtilisateur != null)
                {
                    utilisateur.villeUtilisateur = villeUtilisateur;
                }
                else
                {
                    return("Merci d'entrer une ville d'utilisateur");
                }
                if (cpUtilisateur != null)
                {
                    utilisateur.cpUtilisateur = cpUtilisateur;
                }
                else
                {
                    return("Merci d'entrer un code postal d'utilisateur");
                }

                //S'il s'agit d'une modifcation pour commercial
                if (unTypeUtilisateur.codeTypeUtilisateur == 3 && libellePortefeuille != "")
                {
                    //si l'utilisateur n'etait pas un commercial avant
                    if (utilisateur.typeUtilisateur.codeTypeUtilisateur != 3)
                    {
                        Planning     unNouveauPlanning     = new Planning();
                        PorteFeuille unNouveauPortefeuille = new PorteFeuille();
                        unNouveauPlanning.utilisateur             = utilisateur;
                        unNouveauPortefeuille.utilisateur         = utilisateur;
                        unNouveauPortefeuille.libellePortefeuille = libellePortefeuille;

                        utilisateur.planning     = unNouveauPlanning;
                        utilisateur.porteFeuille = unNouveauPortefeuille;
                    }
                    else
                    {
                        utilisateur.porteFeuille.libellePortefeuille = libellePortefeuille;
                    }
                }
                else if (unTypeUtilisateur.codeTypeUtilisateur == 3 && libellePortefeuille == "")
                {
                    return("Merci de rentrer un nom de portefeuille");
                }

                //Après une migration d'un commercial vers un autre type, on supprime son affectation au planning et portefeuille
                else if (unTypeUtilisateur.codeTypeUtilisateur != 3)
                {
                    //On supprime l'idUtilisateur dans la table portefeuille
                    PorteFeuille portefeuille = utilisateur.porteFeuille;
                    portefeuille.utilisateur = null;

                    session.SaveOrUpdate(portefeuille);

                    //On supprime l'idUtilisateur dans la table planing
                    Planning planing = utilisateur.planning;
                    planing.utilisateur = null;

                    session.SaveOrUpdate(planing);

                    //On supprime l'idPortefeuille/idPlanning dans la table Utilsiateur
                    utilisateur.porteFeuille = null;
                    utilisateur.planning     = null;
                }
                //Une fois tous les tests bons, on peut affecter le type:
                utilisateur.typeUtilisateur = unTypeUtilisateur;

                if (changePassword == true)
                {
                    //-------------------- DEBUT BLOC GENERATION DU MOT DE PASSE DU NOUVEL UTILISATEUR--------------------------
                    //On génère un mot de passe aléatoire pour le nouvel Utilisateur
                    Random       random = new Random();
                    const string chars  = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
                    motdepasse = new string(Enumerable.Repeat(chars, 10).Select(s => s[random.Next(s.Length)]).ToArray());
                    // on converti la phrase random en md5
                    InterLogin pourMD5 = new InterLogin();
                    //on associe le mot de passe
                    utilisateur.passwordUtilisateur = pourMD5.MD5Hash(motdepasse);
                    //-------------------- FIN BLOC GENERATION DU MOT DE PASSE DU NOUVEL UTILISATEUR--------------------------
                }
                session.SaveOrUpdate(utilisateur);
                transaction.Commit();
                session.Dispose();
            }



            // Une fois que tous les tests sont validés on envoie le MDP au mail du nouvel utilisateur
            MailMessage mail = new MailMessage();

            mail.Subject = "Utilisateur modifié!";
            mail.Body    = "Votre utilisateur a été modifié par l'administrateur" + utilisateur.nomUtilisateur + " " + utilisateur.prenomUtilisateur +
                           "! Votre mot de passe " + motdepasse;
            mail.From = new MailAddress("*****@*****.**");
            mail.To.Add(utilisateur.mailUtilisateur);

            SmtpClient client = new SmtpClient();

            client.Host = "localhost";
            client.Send(mail);

            return("L'utilisateur a été modifié, un email lui a été envoyé.");
        }
        static Boolean AjouterClient(Interlocuteur unInterlocuteur, string unnomclient, string unprenomclient, string untelclient,
                                     string unmailclient, Individu unindividu, Structure unestructure, PorteFeuille unPortefeuille)
        {
            sessionFactory = new Configuration().Configure().BuildSessionFactory();
            ISession session = sessionFactory.OpenSession();

            using (ITransaction transaction = session.BeginTransaction())

            {
                Interlocuteur I = new Interlocuteur();

                if (unInterlocuteur == null)
                {
                    return(false);
                }
                if (unnomclient.Length == 0)
                {
                    return(false);
                }
                else
                {
                    I.nomInterlocuteur = unnomclient;
                }
                if (unprenomclient.Length == 0)
                {
                    return(false);
                }
                else
                {
                    I.prenomInterlocuteur = unprenomclient;
                }
                if (untelclient.Length == 0)
                {
                    return(false);
                }
                else
                {
                    I.telInterlocuteur = untelclient;
                }
                if (unmailclient.Length == 0)
                {
                    return(false);
                }
                else
                {
                    I.mailInterlocuteur = unmailclient;
                }
                if (unindividu == null)
                {
                    return(false);
                }
                if (unestructure == null)
                {
                    return(false);
                }

                session.Save(I);
                transaction.Commit();
                session.Dispose();
                return(true);
            }
        }
        private void AjouterUtilisateur(TypeUtilisateur unTypeUtilisateur, string loginUtilisateur, string nomUtilisateur, string prenomUtilisateur, string mailUtilisateur, string telUtilisateur, string adresseUtilisateur,
                                        string villeUtilisateur, string cpUtilisateur, string libellePortefeuille, string libellePlanning, bool changePassword)
        {
            sessionFactory = new Configuration().Configure().BuildSessionFactory();
            ISession session = sessionFactory.OpenSession();

            string motdepasse = "";
            string erreur     = "";

            //     try
            //       {
            // si il s'agit d'une modification
            if (utilisateur.numUtilisateur != unNouvelUtilisateur.numUtilisateur)
            {
                using (ITransaction transaction = session.BeginTransaction())
                {
                    unNouvelUtilisateur = utilisateur;

                    //S'il s'agit d'une modification en commercial
                    if (unTypeUtilisateur.codeTypeUtilisateur == 3)
                    {
                        //si l'utilisateur n'etait pas un commercial avant
                        if (unNouvelUtilisateur.typeUtilisateur.codeTypeUtilisateur != 3)
                        {
                            Planning unNouveauPlanning = new Planning();
                            unNouveauPlanning.libellePlanning = libellePlanning;
                            unNouveauPlanning.utilisateur     = unNouvelUtilisateur;
                            session.SaveOrUpdate(unNouveauPlanning);

                            PorteFeuille unNouveauPortefeuille = new PorteFeuille();
                            unNouveauPortefeuille.libellePortefeuille = libellePortefeuille;
                            unNouveauPortefeuille.utilisateur         = unNouvelUtilisateur;
                            session.SaveOrUpdate(unNouveauPortefeuille);

                            unNouvelUtilisateur.planning     = unNouveauPlanning;
                            unNouvelUtilisateur.porteFeuille = unNouveauPortefeuille;
                            session.SaveOrUpdate(unNouvelUtilisateur);
                        }
                        // sinon si il etait commercial
                        else
                        {
                            Planning unNouveauPlanning = unNouvelUtilisateur.planning;
                            unNouveauPlanning.libellePlanning = libellePlanning;
                            session.SaveOrUpdate(unNouveauPlanning);

                            PorteFeuille unNouveauPortefeuille = unNouvelUtilisateur.porteFeuille;
                            unNouveauPortefeuille.libellePortefeuille = libellePortefeuille;
                            session.SaveOrUpdate(unNouveauPortefeuille);
                        }
                    }
                    else if (unTypeUtilisateur.codeTypeUtilisateur == 3 && libellePortefeuille == "" || libellePlanning == "")
                    {
                        erreur += "\nMerci de rentrer un nom de portefeuille/planning";
                    }

                    //Après une migration d'un commercial vers un autre type, on supprime son affectation au planning et portefeuille
                    else if (unTypeUtilisateur.codeTypeUtilisateur != 3)
                    {
                        //On supprime l'idUtilisateur dans la table portefeuille et planning
                        PorteFeuille portefeuille = unNouvelUtilisateur.porteFeuille;
                        Planning     planning     = utilisateur.planning;
                        portefeuille.utilisateur = null;
                        planning.utilisateur     = null;

                        session.SaveOrUpdate(portefeuille);
                        session.SaveOrUpdate(planning);


                        //On supprime l'idPortefeuille/idPlanning dans la table Utilsiateur
                        unNouvelUtilisateur.porteFeuille = null;
                        unNouvelUtilisateur.planning     = null;
                    }
                    //Une fois tous les tests bons, on peut affecter le type:
                    unNouvelUtilisateur.typeUtilisateur = unTypeUtilisateur;



                    if (changePassword == true)
                    {
                        //-------------------- DEBUT BLOC GENERATION DU MOT DE PASSE DU NOUVEL UTILISATEUR--------------------------
                        //On génère un mot de passe aléatoire pour le nouvel Utilisateur
                        Random       random = new Random();
                        const string chars  = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
                        motdepasse = new string(Enumerable.Repeat(chars, 10).Select(s => s[random.Next(s.Length)]).ToArray());
                        // on converti la phrase random en md5
                        InterLogin pourMD5 = new InterLogin();
                        //on associe le mot de passe
                        unNouvelUtilisateur.passwordUtilisateur = pourMD5.MD5Hash(motdepasse);
                        //-------------------- FIN BLOC GENERATION DU MOT DE PASSE DU NOUVEL UTILISATEUR--------------------------
                    }
                    session.SaveOrUpdate(unNouvelUtilisateur);
                    transaction.Commit();
                    session.Dispose();
                }
            }
            // Sinon si il s'agit d'un ajout
            else
            {
                using (ITransaction transaction = session.BeginTransaction())
                {
                    unNouvelUtilisateur.typeUtilisateur = unTypeUtilisateur;
                    if (loginUtilisateur != null)
                    {
                        unNouvelUtilisateur.loginUtilisateur = loginUtilisateur;
                    }
                    else
                    {
                        erreur += "\nMerci d'entrer un login d'utilisateur";
                    }
                    if (nomUtilisateur != null)
                    {
                        unNouvelUtilisateur.nomUtilisateur = nomUtilisateur;
                    }
                    else
                    {
                        erreur += "\nMerci d'entrer un nom d'utilisateur";
                    }
                    if (prenomUtilisateur != null)
                    {
                        unNouvelUtilisateur.prenomUtilisateur = prenomUtilisateur;
                    }
                    else
                    {
                        erreur += "\nMerci d'entrer un prénom d'utilisateur";
                    }
                    if (mailUtilisateur != null)
                    {
                        unNouvelUtilisateur.mailUtilisateur = mailUtilisateur;
                    }
                    else
                    {
                        erreur += "\nMerci d'entrer un mail d'utilisateur";
                    }
                    if (telUtilisateur != null)
                    {
                        unNouvelUtilisateur.telUtilisateur = telUtilisateur;
                    }
                    else
                    {
                        erreur += "\nMerci d'entrer un numéro téléphone d'utilisateur";
                    }
                    if (adresseUtilisateur != null)
                    {
                        unNouvelUtilisateur.adresseUtilisateur = adresseUtilisateur;
                    }
                    else
                    {
                        erreur += "\nMerci d'entrer une adresse d'utilisateur";
                    }
                    if (villeUtilisateur != null)
                    {
                        unNouvelUtilisateur.villeUtilisateur = villeUtilisateur;
                    }
                    else
                    {
                        erreur += "\nMerci d'entrer une ville d'utilisateur";
                    }
                    if (cpUtilisateur != null)
                    {
                        unNouvelUtilisateur.cpUtilisateur = cpUtilisateur;
                    }
                    else
                    {
                        erreur += "\nMerci d'entrer un code postal d'utilisateur";
                    }

                    //-------------------- DEBUT BLOC GENERATION DU MOT DE PASSE DU NOUVEL UTILISATEUR--------------------------
                    //On génère un mot de passe aléatoire pour le nouvel Utilisateur
                    Random       random = new Random();
                    const string chars  = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
                    motdepasse = new string(Enumerable.Repeat(chars, 10).Select(s => s[random.Next(s.Length)]).ToArray());
                    // on converti la phrase random en md5
                    InterLogin pourMD5 = new InterLogin();
                    //on associe le mot de passe
                    unNouvelUtilisateur.passwordUtilisateur = pourMD5.MD5Hash(motdepasse);
                    //-------------------- FIN BLOC GENERATION DU MOT DE PASSE DU NOUVEL UTILISATEUR--------------------------
                    //S'il s'agit d'un commercial:
                    if (unNouvelUtilisateur.typeUtilisateur.codeTypeUtilisateur == 3 && (libellePlanning != null || libellePortefeuille != null))
                    {
                        unNouveauPlanning.libellePlanning         = libellePlanning;
                        unNouveauPortefeuille.libellePortefeuille = libellePortefeuille;

                        unNouveauPlanning.utilisateur     = unNouvelUtilisateur;
                        unNouveauPortefeuille.utilisateur = unNouvelUtilisateur;


                        unNouvelUtilisateur.planning     = unNouveauPlanning;
                        unNouvelUtilisateur.porteFeuille = unNouveauPortefeuille;


                        session.SaveOrUpdate(unNouvelUtilisateur);
                        session.SaveOrUpdate(unNouveauPlanning);
                        session.SaveOrUpdate(unNouveauPortefeuille);
                    }
                    else
                    {
                        //On sauvegarde le nouvel utilisateur
                        session.SaveOrUpdate(unNouvelUtilisateur);
                    }

                    transaction.Commit();
                    session.Dispose();
                }
            }
            //     }
            //       catch (Exception ex)
            //    {
            //        MessageBox.Show(ex.Message+erreur);
            //     }

            try{
                // Une fois que tout fonctionne on envoie le MDP au mail du nouvel utilisateur
                MailMessage mail = new MailMessage();
                mail.Subject = "Nouvel accès à GEPEV!";
                mail.Body    = "Bienvenue " + unNouvelUtilisateur.nomUtilisateur + " " + unNouvelUtilisateur.prenomUtilisateur + "! Votre mot de passe est: " + motdepasse;
                mail.From    = new MailAddress("*****@*****.**");
                mail.To.Add(unNouvelUtilisateur.mailUtilisateur);

                SmtpClient client = new SmtpClient();
                client.Host = "localhost";
                client.Send(mail);
            }catch (Exception ex) {
                MessageBox.Show("Erreur" + ex.Message);
            }
        }