// fonction qui s'active au clique du button validerModifier private void buttonValiderModif_Click(object sender, EventArgs e) { // variable qui récupére le numéro de téléphone dans le textbox puis qui vérifie sa validité string tel = txtTelMedecin.Text; bool leTelValide = ClasseMedecin.telValide(tel); // variable qui récupére le département dans le textbox puis qui vérifie sa validité string departement = txtDepartementMedecin.Text; bool ledepartementValide = ClasseMedecin.departementValide(departement); // condition qui vérifie si un des textbox est vide if (txtNomMedecin.Text == "" || txtPrenomMedecin.Text == "" || txtTelMedecin.Text == "" || txtAdresseMedecin.Text == "" || txtDepartementMedecin.Text == "") { MessageBox.Show("une ou plusieurs case ne sont pas remplis ! "); } // condition qui vérifie la validité du numéro de téléphone else if (leTelValide == false) { MessageBox.Show("le numéro de téléphone n'est pas un numéro valide (dix chiffre) ! "); } // condition qui vérifie la validité du département else if (ledepartementValide == false) { MessageBox.Show("le numéro de département n'est pas valide (deux chiffre) ! "); } // condition qui vérifie le combobox spécialité else if (comboBoxSpecialite.Text == comboNonChoisi) { MessageBox.Show("il faut choisir une spécialité ! "); } // condition qui réalise la modification else { // variable qui récupére la spécialité dans la combobox string laSpe = comboBoxSpecialite.Text; // fonction qui récupére l'id de la spécialité int idSpe = ClassePMedecin.recupererIdSpe(laSpe); // initialisation de la spécialité instanSpe = new ClasseSpecialite(idSpe, laSpe.ToString()); // variable qui récupére les données pour la modification int lid = int.Parse(txtId.Text); string leNom = txtNomMedecin.Text; string lePrenom = txtPrenomMedecin.Text; string ladresse = txtAdresseMedecin.Text; string leTel = txtTelMedecin.Text; int leDepartement = int.Parse(txtDepartementMedecin.Text); // met à jour le medecin avec la fonction modifierMedecin ClassePMedecin.modifierMedecin(lid, leNom, lePrenom, ladresse, leTel, idSpe, leDepartement); // appelle de la fonction qui remplis le dgv et qui remplis les combobox dgvFormulaireMedecin(); remplirComboboxListeMedecin(); // appelle de la fonction qui nettoye les textbox et combobox puis les cache nettoyer(); cacherText(); } }
public static List <ClasseMedecin> rechercherMedecin(string nomMedecin, string prenomMedecin, string laSpe, string departementMed) { //VARIABLES List <ClasseMedecin> LesMedecins = new List <ClasseMedecin>(); int idMed; string nom; string prenom; string tel; string adresse; int idspecialite; int departement; string libSpec; string comboNonChoisi = "-----------------------------------------------------------------------------------------------"; //CONNEXION BDD MySqlConnection connexion = new MySqlConnection(); MySqlCommand cmd = new MySqlCommand(); connexion.ConnectionString = ClassePConnexion.DBConnection(); connexion.Open(); cmd = connexion.CreateCommand(); // condition si seulement le nom et prenom sont remplis if (nomMedecin != "" && prenomMedecin != "" && laSpe == comboNonChoisi && departementMed == "") { //REQUETE SQL cmd.CommandText = "SELECT idMed, nomMed, prenomMed, adresseMed, telMed , idSpec, departementMed, libSpec " + "FROM medecin INNER JOIN specialite ON specialite.idSpec = medecin.idSpecialiteMed " + "WHERE nomMed = '" + nomMedecin + "' AND prenomMed = '" + prenomMedecin + "' ORDER BY nomMed ASC"; } // condition si seulement la spécialité et remplis else if (nomMedecin == "" && prenomMedecin == "" && laSpe != comboNonChoisi && departementMed == "") { int id = ClassePSpecialite.recupererIdSpe(laSpe); //REQUETE SQL cmd.CommandText = "SELECT idMed, nomMed, prenomMed, adresseMed, telMed , idSpec, departementMed, libSpec " + "FROM medecin INNER JOIN specialite ON specialite.idSpec = medecin.idSpecialiteMed " + "WHERE idSpec = '" + id + "' ORDER BY nomMed ASC"; } // condition si seulement le département et remplis else if (nomMedecin == "" && prenomMedecin == "" && laSpe == comboNonChoisi && departementMed != "") { //REQUETE SQL cmd.CommandText = "SELECT idMed, nomMed, prenomMed, adresseMed, telMed , idSpec, departementMed, libSpec " + "FROM medecin INNER JOIN specialite ON specialite.idSpec = medecin.idSpecialiteMed " + "WHERE departementMed = '" + departementMed + "' ORDER BY nomMed ASC"; } // condition si le medecin et la spécialité sont remplis else if (nomMedecin != "" && prenomMedecin != "" && laSpe != comboNonChoisi && departementMed == "") { int id = ClassePSpecialite.recupererIdSpe(laSpe); //REQUETE SQL cmd.CommandText = "SELECT idMed, nomMed, prenomMed, adresseMed, telMed , idSpec, departementMed, libSpec " + "FROM medecin INNER JOIN specialite ON specialite.idSpec = medecin.idSpecialiteMed " + "WHERE nomMed = '" + nomMedecin + "' AND prenomMed = '" + prenomMedecin + "' AND idSpec = '" + id + "' ORDER BY nomMed ASC"; } // condition si le medecin et le département sont remplis else if (nomMedecin != "" && prenomMedecin != "" && laSpe == comboNonChoisi && departementMed != "") { //REQUETE SQL cmd.CommandText = "SELECT idMed, nomMed, prenomMed, adresseMed, telMed , idSpec, departementMed, libSpec " + "FROM medecin INNER JOIN specialite ON specialite.idSpec = medecin.idSpecialiteMed " + "WHERE nomMed = '" + nomMedecin + "' AND prenomMed = '" + prenomMedecin + "' AND departementMed = '" + departementMed + "' ORDER BY nomMed ASC"; } // condition si la spécialité et le département sont remplis else if (nomMedecin == "" && prenomMedecin == "" && laSpe != comboNonChoisi && departementMed != "") { int id = ClassePSpecialite.recupererIdSpe(laSpe); //REQUETE SQL cmd.CommandText = "SELECT idMed, nomMed, prenomMed, adresseMed, telMed , idSpec, departementMed, libSpec " + "FROM medecin INNER JOIN specialite ON specialite.idSpec = medecin.idSpecialiteMed " + "WHERE idSpec = '" + id + "' AND departementMed = '" + departementMed + "' ORDER BY nomMed ASC"; } // condition si tout les champs sont remplis else if (nomMedecin != "" && prenomMedecin != "" && laSpe != comboNonChoisi && departementMed != "") { int id = ClassePSpecialite.recupererIdSpe(laSpe); //REQUETE SQL cmd.CommandText = "SELECT idMed, nomMed, prenomMed, adresseMed, telMed , idSpec, departementMed, libSpec " + "FROM medecin INNER JOIN specialite ON specialite.idSpec = medecin.idSpecialiteMed " + "WHERE nomMed = '" + nomMedecin + "' AND prenomMed = '" + prenomMedecin + "' AND idSpec = '" + id + "' AND departementMed = '" + departementMed + "' ORDER BY nomMed ASC"; } //EXECUTE LA REQUETE MySqlDataReader drr = cmd.ExecuteReader(); while (drr.Read()) { //ON RECUPERE LES VARIABLES idMed = int.Parse(drr.GetString(0)); // 7 correspond à idMed nom = drr.GetString(1); // 0 correspond à nomMed prenom = drr.GetString(2); // 1 correspond à prenomMed tel = drr.GetString(4); // 3 correspond à telMed adresse = drr.GetString(3); // 2 correspond à adresseMed departement = drr.GetInt16(6); //5 correspond à departementMed idspecialite = int.Parse(drr.GetString(5)); //4 correspond à idSpec libSpec = drr.GetString(7); //6 correspond à libSpec //ON INSTANCIE UN OBJET CLASSESPECIALITE ClasseSpecialite LaSpe = new ClasseSpecialite(idspecialite, libSpec); // ON INSTANCIE UN OBJET CLASSEMEDECIN ClasseMedecin leMedecin = new ClasseMedecin(idMed, nom, prenom, adresse, tel, departement, LaSpe); // ON AJOUTE UN OBJET CLASSEMEDECIN DANS UNE LISTE CLASSEMEDECIN LesMedecins.Add(leMedecin); } drr.Close(); connexion.Close(); return(LesMedecins); //retoune la liste des Medecins }