private void Popup_AddModUser_Load_1(object sender, EventArgs e) { // si c'est une modification if (utilisateur.numUtilisateur != unNouvelUtilisateur.numUtilisateur) { TypeUtilisateur lesTypesUtilisateur = new TypeUtilisateur(); comboBoxTypeUser.DataSource = lesTypesUtilisateur.GetLesTypesUtilisateur(); foreach (TypeUtilisateur t in comboBoxTypeUser.Items) { if (t.libelleTypeUtilisateur == utilisateur.typeUtilisateur.libelleTypeUtilisateur) { comboBoxTypeUser.SelectedItem = t; } } textBoxLog.Text = utilisateur.loginUtilisateur; textBoxCp.Text = utilisateur.cpUtilisateur; textBoxEm.Text = utilisateur.mailUtilisateur; textBoxNom.Text = utilisateur.nomUtilisateur; textBoxPre.Text = utilisateur.prenomUtilisateur; textBoxRue.Text = utilisateur.adresseUtilisateur; textBoxTel.Text = utilisateur.telUtilisateur; textBoxVille.Text = utilisateur.villeUtilisateur; checkBoxChangeMdp.Visible = true; // si il est commercial if (utilisateur.typeUtilisateur.codeTypeUtilisateur == 3) { labelAjouterPlanningPortefeuille.Visible = false; radioButtonNon.Visible = false; radioButtonOui.Visible = false; if (utilisateur.planning != null) { textBoxPlanning.Visible = true; labelPlanning.Visible = true; textBoxPlanning.Text = utilisateur.planning.libellePlanning; } if (utilisateur.porteFeuille != null) { textBoxPortefeuille.Visible = true; labelPortefeuille.Visible = true; textBoxPortefeuille.Text = utilisateur.porteFeuille.libellePortefeuille; } } } else { TypeUtilisateur lesTypesUtilisateur = new TypeUtilisateur(); comboBoxTypeUser.DataSource = lesTypesUtilisateur.GetLesTypesUtilisateur(); } }
private void Popup_ModifUser_Load_1(object sender, EventArgs e) { TypeUtilisateur lesTypesUtilisateur = new TypeUtilisateur(); comboBoxTypeUser.DataSource = lesTypesUtilisateur.GetLesTypesUtilisateur(); comboBoxTypeUser.SelectedItem = comboBoxTypeUser.Items[utilisateur.typeUtilisateur.codeTypeUtilisateur - 1]; textBoxLog.Text = utilisateur.loginUtilisateur; textBoxCp.Text = utilisateur.cpUtilisateur; textBoxEm.Text = utilisateur.mailUtilisateur; textBoxNom.Text = utilisateur.nomUtilisateur; textBoxPre.Text = utilisateur.prenomUtilisateur; textBoxRue.Text = utilisateur.adresseUtilisateur; textBoxTel.Text = utilisateur.telUtilisateur; textBoxVille.Text = utilisateur.villeUtilisateur; }
private void Popup_AddModUser_Load_1(object sender, EventArgs e) { TypeUtilisateur lesTypesUtilisateur = new TypeUtilisateur(); // Si l'utilisateur à l'origine de l'action est gestionnaire, on affiche pas la combobox des types ni le checkbox change password if (isGestionnaire == true) { comboBoxTypeUser.Visible = false; labelTu.Visible = false; labelAjouterPlanningPortefeuille.Visible = true; radioButtonNon.Visible = true; radioButtonOui.Visible = true; } else { comboBoxTypeUser.DataSource = lesTypesUtilisateur.GetLesTypesUtilisateur(); if (utilisateur.typeUtilisateur != null) { foreach (TypeUtilisateur t in comboBoxTypeUser.Items) { if (t.libelleTypeUtilisateur == utilisateur.typeUtilisateur.libelleTypeUtilisateur) { comboBoxTypeUser.SelectedItem = t; } } } } if (utilisateur.loginUtilisateur != null) { textBoxLog.Text = utilisateur.loginUtilisateur; } if (utilisateur.cpUtilisateur != null) { textBoxCp.Text = utilisateur.cpUtilisateur; } if (utilisateur.mailUtilisateur != null) { textBoxEm.Text = utilisateur.mailUtilisateur; } if (utilisateur.adresseUtilisateur != null) { textBoxRue.Text = utilisateur.adresseUtilisateur; } if (utilisateur.telUtilisateur != null) { textBoxTel.Text = utilisateur.telUtilisateur; } if (utilisateur.nomUtilisateur != null) { textBoxNom.Text = utilisateur.nomUtilisateur; } if (utilisateur.prenomUtilisateur != null) { textBoxPre.Text = utilisateur.prenomUtilisateur; } if (utilisateur.villeUtilisateur != null) { textBoxVille.Text = utilisateur.villeUtilisateur; } // Si c'est un ajout d'utilisateur on ne permet pas de modifier le mdp if (utilisateur.loginUtilisateur != null) { checkBoxChangeMdp.Visible = true; } if (utilisateur.typeUtilisateur != null) { // si il est commercial if (utilisateur.typeUtilisateur.codeTypeUtilisateur == 3) { labelAjouterPlanningPortefeuille.Visible = false; radioButtonNon.Visible = false; radioButtonOui.Visible = false; if (utilisateur.planning != null) { textBoxPlanning.Visible = true; labelPlanning.Visible = true; textBoxPlanning.Text = utilisateur.planning.libellePlanning; } if (utilisateur.porteFeuille != null) { textBoxPortefeuille.Visible = true; labelPortefeuille.Visible = true; textBoxPortefeuille.Text = utilisateur.porteFeuille.libellePortefeuille; } } } }
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); } }
private void Popup_ModifUser_Load(object sender, EventArgs e) { TypeUtilisateur lesTypesUtilisateur = new TypeUtilisateur(); comboBoxTypeUser.DataSource = lesTypesUtilisateur.GetLesTypesUtilisateur(); }