private void btnValider_Click(object sender, EventArgs e) { // Vérifie que les textbox des heures ne sont pas vides, les remplis avec 00 si c'est le cas if (txtHeureArrivee.Text == "") { txtHeureArrivee.Text = "00"; } if (txtMinuteArrivee.Text == "") { txtMinuteArrivee.Text = ""; } if (txtHeureDebut.Text == "") { txtHeureDebut.Text = "00"; } if (txtMinuteDebut.Text == "") { txtMinuteDebut.Text = "00"; } if (txtHeureDepart.Text == "") { txtHeureDepart.Text = "00"; } if (txtMinuteDepart.Text == "") { txtMinuteDepart.Text = "00"; } //Vérification que l'heure est bonne if (heureBonne(txtHeureArrivee.Text) && minuteBonne(txtMinuteArrivee.Text) && heureBonne(txtHeureDebut.Text) && minuteBonne(txtMinuteDebut.Text) && heureBonne(txtHeureDepart.Text) && minuteBonne(txtMinuteDepart.Text)) { //Boolean si la visite était sur rendez-vous rdv = rdbtnOui.Checked; //Mise en string de l'heure d'arrivée heureArrivee = txtHeureArrivee.Text + "h" + txtMinuteArrivee.Text; //Mise en string de l'heure de début heureDebut = txtHeureDebut.Text + "h" + txtMinuteDebut.Text; //Mise en string de l'heure de départ heureDepart = txtHeureDepart.Text + "h" + txtMinuteDepart.Text; //Mise à jour de l'objet visite et ajout en base de données laVisiteAModifier.setDateVisite(calendrierDate.SelectionRange.Start); laVisiteAModifier.setEstVisiteProgramme(rdv); laVisiteAModifier.setHeureArriveeCabinet(heureArrivee); laVisiteAModifier.setHeureDebutEntretien(heureDebut); laVisiteAModifier.setHeureDepartCabinet(heureDepart); laVisiteAModifier.setMedecin((Medecin)cboxMedecin.SelectedItem); laVisiteAModifier.setActeur(leVisiteurConnecte); PasserelleSuiviA.metAJourVisite(laVisiteAModifier); MessageBox.Show("La Visite a été correctement modifiée."); this.Close(); } else { MessageBox.Show("Les heures saisies sont incorrectes."); } }
public void testCRUDVisite() { #region Création de la visite localement // Récupération des valeurs string idActeur = TestContext.DataRow["idActeur"].ToString(); string nomActeur = TestContext.DataRow["nomActeur"].ToString(); string prenomActeur = TestContext.DataRow["prenomActeur"].ToString(); string login = TestContext.DataRow["login"].ToString(); string MDP = TestContext.DataRow["MDP"].ToString(); int typeActeur = int.Parse(TestContext.DataRow["typeActeur"].ToString()); // Création de l'objet Acteur Acteur unActeur = new Acteur(idActeur, nomActeur, prenomActeur, login, MDP, typeActeur); int idCabinet = int.Parse(TestContext.DataRow["idCabinet"].ToString()); string longitudeGPS = TestContext.DataRow["longitudeGPS"].ToString(); string latitudeGPS = TestContext.DataRow["latitudeGPS"].ToString(); string ville = TestContext.DataRow["ville"].ToString(); string rue = TestContext.DataRow["rue"].ToString(); string cp = TestContext.DataRow["cp"].ToString(); // Création de l'objet Cabinet Cabinet unCabinet = new Cabinet(idCabinet, rue, ville, cp); int idMedecin = int.Parse(TestContext.DataRow["idMedecin"].ToString()); string nomMedecin = TestContext.DataRow["nomMedecin"].ToString(); string prenomMedecin = TestContext.DataRow["prenomMedecin"].ToString(); // Création de l'objet Medecin Medecin unMedecin = new Medecin(idMedecin, nomMedecin, prenomMedecin, unCabinet, unActeur); int idVisite = int.Parse(TestContext.DataRow["idVisite"].ToString()); int dateVisiteJour = int.Parse(TestContext.DataRow["dateVisiteJour"].ToString()); int dateVisiteMois = int.Parse(TestContext.DataRow["dateVisiteMois"].ToString()); int dateVisiteAnnee = int.Parse(TestContext.DataRow["dateVisiteAnnee"].ToString()); DateTime dateVisite = new DateTime(dateVisiteAnnee, dateVisiteMois, dateVisiteJour); string heureArriveeCabinet = TestContext.DataRow["heureArriveeCabinet"].ToString(); string heureDebutEntretien = TestContext.DataRow["heureDebutEntretien"].ToString(); string heureDepartCabinet = TestContext.DataRow["heureDepartCabinet"].ToString(); Boolean estVisiteProgramme = Boolean.Parse(TestContext.DataRow["estVisiteProgramme"].ToString()); // Création de l'objet Visite Visite uneVisite = new Visite(idVisite, dateVisite, estVisiteProgramme, heureArriveeCabinet, heureDebutEntretien, heureDepartCabinet, unMedecin, unActeur); #endregion #region Ajout de la visite créé localement en BDD // On ajoute en BDD le médecin, la visite et le cabinet créé PasserelleSuiviA.ajoutCabinet(unCabinet); #region On cherche à obtenir le bon ID du cabinet // On récupère la nouvelle liste des cabinets List <Cabinet> laListeDeCabinetATester_AjoutViaMethode = PasserelleSuiviA.initListeCabinet(); // On déclare et initialise des variables qui nous serviront à récupérer un objet spécifique dans une liste int compteur = 0; Boolean cabinetTrouveOuPas = false; Cabinet leCabinetQuOnCherche = null; while (cabinetTrouveOuPas == false && compteur < laListeDeCabinetATester_AjoutViaMethode.Count()) { leCabinetQuOnCherche = laListeDeCabinetATester_AjoutViaMethode[compteur]; if (leCabinetQuOnCherche.getRue() == unCabinet.getRue() && leCabinetQuOnCherche.getVille() == unCabinet.getVille() && leCabinetQuOnCherche.getCP() == unCabinet.getCP()) { // Permet d'avoir le même identifiant que l'objet en base // En BDD, comme l'ID est auto incrémenté, on ne peut pas le connaître à l'avance, d'où la nécessité de le retrouver. unCabinet.setIdCabinet(leCabinetQuOnCherche.getIdCabinet()); cabinetTrouveOuPas = true; } compteur++; } // On change le cabinet associé au médecin (afin qu'il est le bon ID) unMedecin.setCabinet(unCabinet); #endregion PasserelleSuiviA.ajoutMedecin(unMedecin); #region On cherche à obtenir le bon ID du médecin // On récupère la nouvelle liste des médecins PasserelleSuiviA.initListeActeur(); PasserelleSuiviA.initListeCabinet(); List <Medecin> laListeDeMedecinATester_AjoutViaMethode = PasserelleSuiviA.initListeMedecin(); // On déclare et initialise des variables qui nous serviront à récupérer un objet spécifique dans une liste compteur = 0; Boolean medecinTrouveOuPas = false; Medecin leMedecinQuOnCherche = null; while (medecinTrouveOuPas == false && compteur < laListeDeMedecinATester_AjoutViaMethode.Count()) { leMedecinQuOnCherche = laListeDeMedecinATester_AjoutViaMethode[compteur]; if (leMedecinQuOnCherche.getNom() == unMedecin.getNom() && leMedecinQuOnCherche.getPrenom() == unMedecin.getPrenom()) { // Permet d'avoir le même identifiant que l'objet en base // En BDD, comme l'ID est auto incrémenté, on ne peut pas le connaître à l'avance, d'où la nécessité de le retrouver. unMedecin.setIdMedecin(leMedecinQuOnCherche.getIdMedecin()); medecinTrouveOuPas = true; } compteur++; } // On change le médecin associé à la visite (afin qu'il est le bon ID) uneVisite.setMedecin(unMedecin); #endregion PasserelleSuiviA.ajoutVisiste(uneVisite); // On récupère la nouvelle liste des visites List <Visite> laListeDeVisiteATester_AjoutViaMethode = PasserelleSuiviA.initListeVisite(uneVisite.getLActeur().getIdActeur()); #endregion #region Vérification de l'existance de la visite en BDD // On déclare et initialise des variables qui nous serviront à récupérer un objet spécifique dans une liste compteur = 0; Boolean visiteTrouveOuPas = false; Visite laVisiteQuOnCherche = null; while (visiteTrouveOuPas == false && compteur < laListeDeVisiteATester_AjoutViaMethode.Count()) { laVisiteQuOnCherche = laListeDeVisiteATester_AjoutViaMethode[compteur]; if (laVisiteQuOnCherche.getHeureArriveeCabinet() == uneVisite.getHeureArriveeCabinet() && laVisiteQuOnCherche.getHeureDebutEntretien() == uneVisite.getHeureDebutEntretien() && laVisiteQuOnCherche.getHeureDepartCabinet() == uneVisite.getHeureDepartCabinet() && laVisiteQuOnCherche.getEstVisiteProgramme() == uneVisite.getEstVisiteProgramme() && laVisiteQuOnCherche.getDateVisite() == uneVisite.getDateVisite()) { // Permet d'avoir le même identifiant que l'objet en base // En BDD, comme l'ID est auto incrémenté, on ne peut pas le connaître à l'avance, d'où la nécessité de le retrouver. uneVisite.setIdVisite(laVisiteQuOnCherche.getIdVisite()); visiteTrouveOuPas = true; } compteur++; } Assert.AreEqual(laVisiteQuOnCherche.ToString(), uneVisite.ToString()); #endregion #region Modification de la visite en BDD // On modifie les attributs de la visite (actuellement présent en local) uneVisite.setDateVisite(new DateTime(1997, 03, 17)); uneVisite.setEstVisiteProgramme(false); uneVisite.setHeureArriveeCabinet("14h00"); uneVisite.setHeureDebutEntretien("14h30"); uneVisite.setHeureDepartCabinet("15h00"); // On modifie la visite en BDD PasserelleSuiviA.metAJourVisite(uneVisite); // On récupère la nouvelle liste des visites laListeDeVisiteATester_AjoutViaMethode = PasserelleSuiviA.initListeVisite(uneVisite.getLActeur().getIdActeur()); // On déclare et initialise des variables qui nous serviront à vérifier que l'objet à bien été modifié en BDD compteur = 0; visiteTrouveOuPas = false; laVisiteQuOnCherche = null; Boolean valeurDeVisiteModifieOuPas = false; while (visiteTrouveOuPas == false && compteur < laListeDeVisiteATester_AjoutViaMethode.Count()) { laVisiteQuOnCherche = laListeDeVisiteATester_AjoutViaMethode[compteur]; if (laVisiteQuOnCherche.getHeureArriveeCabinet() == uneVisite.getHeureArriveeCabinet() && laVisiteQuOnCherche.getHeureDebutEntretien() == uneVisite.getHeureDebutEntretien() && laVisiteQuOnCherche.getHeureDepartCabinet() == uneVisite.getHeureDepartCabinet() && laVisiteQuOnCherche.getEstVisiteProgramme() == uneVisite.getEstVisiteProgramme() && laVisiteQuOnCherche.getDateVisite() == uneVisite.getDateVisite()) { visiteTrouveOuPas = true; valeurDeVisiteModifieOuPas = true; } compteur++; } Assert.AreEqual(true, valeurDeVisiteModifieOuPas); #endregion #region Suppression de la visite en BDD et vérification de sa suppression // Suppression du médecin, de la visite et du cabinet en BDD PasserelleSuiviA.supprimerVisite(uneVisite); PasserelleSuiviA.supprimerMedecin(unMedecin); PasserelleSuiviA.supprimerCabinet(unCabinet); // On récupère la nouvelle liste des visites, des cabinets et des médecins laListeDeCabinetATester_AjoutViaMethode = PasserelleSuiviA.initListeCabinet(); laListeDeMedecinATester_AjoutViaMethode = PasserelleSuiviA.initListeMedecin(); laListeDeVisiteATester_AjoutViaMethode = PasserelleSuiviA.initListeVisite(uneVisite.getLActeur().getIdActeur()); // On déclare et initialise des variables qui nous serviront à vérifier que l'objet à bien été supprimer compteur = 0; visiteTrouveOuPas = false; laVisiteQuOnCherche = null; // On vérifie que l'objet à bien été surrpimé de la BDD // Il est possible qu'on ne passe jamais dans cet boucle (notamment si la liste est vide) while (visiteTrouveOuPas == false && compteur < laListeDeVisiteATester_AjoutViaMethode.Count()) { laVisiteQuOnCherche = laListeDeVisiteATester_AjoutViaMethode[compteur]; if (laVisiteQuOnCherche.getIdVisite() == uneVisite.getIdVisite()) { visiteTrouveOuPas = true; } compteur++; } Assert.AreEqual(false, visiteTrouveOuPas); #endregion }