private void button1_Click(object sender, EventArgs e) { // Permet de valider les modifications // Récupération du contenu du combobox string selection = labelNom.Text; var vis = from p in monModele.visiteurs where p.VIS_NOM == selection select p; // Remplissage des modifications sur chaque champ de la table de la base de données foreach (var resultat in vis) { resultat.VIS_ADRESSE = tb_adresse.Text; resultat.VIS_CP = tb_cp.Text; resultat.VIS_VILLE = tb_ville.Text; //resultat.VIS_DATEEMBAUCHE = Convert.ToDateTime(tb_dateEmbauche); } // Faire une vérif si une modification a lieu MessageBox.Show("Les données ont bien été modifiées !"); monModele.SaveChanges(); tb_adresse.ReadOnly = true; tb_cp.ReadOnly = true; tb_dateEmbauche.ReadOnly = true; tb_ville.ReadOnly = true; }
//Permet de supprimer le médicament sélectionné dans le deuxième combobox private void btn_suppr_Click(object sender, EventArgs e) { string selection = tb_nom.Text; if (selection == "") { MessageBox.Show("Erreur, champ vide, suppression impossible. ", "Attention", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { if (MessageBox.Show("Voulez vous vraiment supprimer ce médicament ?", "Attention", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { var deletemed = from med in monModele.medicaments where med.MED_NOMCOMMERCIAL == selection select med; foreach (var med in deletemed) { MessageBox.Show("Le médicament " + med.MED_NOMCOMMERCIAL + " a bien été supprimé."); var deleteConstituer = from p in monModele.constituers where p.MED_DEPOTLEGAL == med.MED_DEPOTLEGAL select p; foreach (var p in deleteConstituer) { MessageBox.Show("Le médicament " + med.MED_NOMCOMMERCIAL + " a bien été supprimé."); monModele.constituers.Remove(p); monModele.medicaments.Remove(med); } } monModele.SaveChanges(); tb_compo.Text = ""; tb_contre.Text = ""; tb_effet.Text = ""; tb_famille.Text = ""; tb_nom.Text = ""; cb_select.Items.Clear(); RechargerDonneescb(); // Recharge les données de la comboBox des médicaments } } }
/// <summary> /// Permet de modifier dans la base de données /// les informations du médecin choisi /// (Avec dans la requête where médecin choisi) /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button2_Click(object sender, EventArgs e) { string selection = tb_nom.Text; var med = from p in monModele.praticiens where p.PRA_NOM == selection select p; foreach (var resultat in med) { resultat.PRA_NOM = tb_nom.Text; resultat.PRA_PRENOM = tb_prenom.Text; resultat.PRA_ADRESSE = tb_adresse.Text; resultat.PRA_CP = tb_cp.Text; resultat.PRA_VILLE = tb_ville.Text; } // Faire une vérif si une modification a lieu MessageBox.Show("Les données ont bien été modifiées !"); // Reperer comment faire le SavesChanges monModele.SaveChanges(); }
/// <summary> /// Permet de supprimer le visiteur concerné /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_suppr_Click(object sender, EventArgs e) { string selection = tb_nom.Text; if (cb_select.Text == "") { MessageBox.Show("Erreur, champ vide, suppression impossible. ", "Attention", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { if (MessageBox.Show("Voulez vous vraiment supprimer ce praticien ?", "Attention", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { var deleteprat = from prat in monModele.praticiens where prat.PRA_NOM == selection select prat; foreach (var prat in deleteprat) { var deletePossession = from p in monModele.posseders where p.PRA_NUM == prat.PRA_NUM select p; foreach (var p in deletePossession) { MessageBox.Show("Le praticien " + prat.PRA_NOM + " a bien été supprimé."); monModele.posseders.Remove(p); monModele.praticiens.Remove(prat); } } monModele.SaveChanges(); tb_type.Text = ""; tb_coefConf.Text = ""; tb_cp.Text = ""; tb_nom.Text = ""; tb_prenom.Text = ""; tb_adresse.Text = ""; tb_ville.Text = ""; tb_coefNot.Text = ""; cb_select.Items.Clear(); //RechargerDonneescb(); // Recharge les données de la comboBox des praticiens RechargerCompteur(); // Recompte le nombres des praticiens } } }
// Permet de valider l'ajout d'un nouveau rapport private void bt_valid_Click(object sender, EventArgs e) { // Tout d'abord, générer un numéro de dossier random // sans que ce numéro soit déjà dans la base Random aleatoire = new Random(); numRapport = aleatoire.Next(7, 100); //Génère un entier aléatoire positif // Permet de générer et d'attribuer un numéro de rapport, sans que celui-ci ne soit déjà dans la base do { numRapport = aleatoire.Next(1, 1000); } while (monModele.rapport_visite.Any(a => a.RAP_NUM == numRapport)); MessageBox.Show("Bravo, numéro de rapport généré : " + numRapport + "."); // Ensuite il faut récupérer le matricule du visiteur var req = from p in monModele.visiteurs where p.VIS_NOM == tb_nomVis.Text select p.VIS_MATRICULE; foreach (var res in req) { matriculeVis = res; } // Maintenant, on veut récupérer la date d'aujourd'hui pour la mettre en DATE DE SAISIE string dateToday = DateTime.Now.ToString("yyyy-MM-dd"); // Maintenant vérification des saisies //Vérifie que rien ne soit vide if (cb_praticien.Text == "" && tb_bilan.Text == "" && cb_motif.Text == "") { MessageBox.Show("Un ou plusieurs champs est/sont vide(s)", "Attention", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { try { // ETAPE UN RECUP MOTIF // Récupération du contenu du combobox du motif string recupMotif = cb_motif.SelectedItem.ToString(); // Dans le combobox du type, on récupère le code du motif // pour pouvoir le mettre dans la base de données var req1 = from p in monModele.motifs where p.MOT_LIBELLE == recupMotif select p.MOT_CODE; // Récupération du code du motif foreach (var res in req1) { motif = res; } // ETAPE UN RECUP MATRICULE PRATICIEN PREMIER // Récupération du contenu du comboBox du premier praticien (obligatoire) string recupPra = cb_praticien.SelectedItem.ToString(); var reqRecupPra = from p in monModele.praticiens where p.PRA_NOM == recupPra select p.PRA_NUM; // Récupération du matricule du premier praticien foreach (var recup in reqRecupPra) { matriculePra = recup; } // ETAPE UN RECUP MATRICULE PRATICIEN BIS SI SELECTION PAS AUCUN if (cb_praticienBis.Text == "Aucun") { // A mettre null dans la base de données matriculePraBis = 0; var unRapport = new rapport_visite() { VIS_MATRICULE = matriculeVis, RAP_NUM = numRapport, PRA_NUM = matriculePra, PRA_NUM_REMPLACANT = null, RAP_DATE_SAISIE = Convert.ToDateTime(dateToday), RAP_DATE_VISITE = Convert.ToDateTime(dateVisite), RAP_BILAN = texteBilan, RAP_MOTIF_AUTRE = null, MOT_CODE = motif, RAP_DOCUMENTATION = 0, RAP_SAISIEDEFINITIVE = 0 }; // Ajout du rapport dans la liste gérees par le programme monModele.rapport_visite.Add(unRapport); // Sauvegarde de l'ajout dans la BDD monModele.SaveChanges(); MessageBox.Show("Nouveau rapport " + numRapport + " bien ajouté. Merci " + tb_nomVis.Text + ".", "Ajout confirmé", MessageBoxButtons.OK); panelMed.Visible = true; bt_valid.Enabled = false; } else { // Récupération du contenu du comboBox du deuxième praticien string recupPraBis = cb_praticienBis.SelectedItem.ToString(); var reqRecupPraBis = from p in monModele.praticiens where p.PRA_NOM == recupPraBis select p.PRA_NUM; // Récupération du matricule du deuxième praticien foreach (var recup in reqRecupPraBis) { matriculePraBis = recup; } var unRapport = new rapport_visite() { VIS_MATRICULE = matriculeVis, RAP_NUM = numRapport, PRA_NUM = matriculePra, PRA_NUM_REMPLACANT = matriculePraBis, RAP_DATE_SAISIE = Convert.ToDateTime(dateToday), RAP_DATE_VISITE = Convert.ToDateTime(dateVisite), RAP_BILAN = texteBilan, RAP_MOTIF_AUTRE = null, MOT_CODE = motif, RAP_DOCUMENTATION = 0, RAP_SAISIEDEFINITIVE = 0 }; // Ajout du rapport dans la liste gérees par le programme monModele.rapport_visite.Add(unRapport); // Sauvegarde de l'ajout dans la BDD monModele.SaveChanges(); MessageBox.Show("Nouveau rapport " + numRapport + " bien ajouté. Merci " + tb_nomVis.Text + ".", "Ajout confirmé", MessageBoxButtons.OK); panelMed.Visible = true; bt_valid.Enabled = false; } // ETAPE RECUP DATE DE VISITE dateVisite = dateVisitePick.Value.ToString("yyyy-MM-dd"); // ETAPE RECUP SAISIE BILAN texteBilan = tb_bilan.Text; } catch (NullReferenceException) { MessageBox.Show("Erreur, reessayez.", "Attention", MessageBoxButtons.OK, MessageBoxIcon.Warning); } catch (DbUpdateException) { MessageBox.Show("Problème interne base de données....", "Attention", MessageBoxButtons.OK, MessageBoxIcon.Error); } } }
/// <summary> /// Permet d'ajouter un visiteur avec les informations récupérées /// dans les Textbox remplies /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Btn_Valider_Click(object sender, EventArgs e) { using (var context = new GSB_PPE3Entities1()) { if (tb_Matricule.Text == "" && tb_Nom.Text == "" && tb_Prenom.Text == "" && tb_Adresse.Text == "" && tb_CP.Text == "" && tb_Ville.Text == "" && dtp_DateEmbauche.Text == "" && tb_Login.Text == "" && tb_MotDePasse.Text == "") { MessageBox.Show("Tous les champs ne sont pas renseignés ! ", "Attention", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else // Si les champs ne sont pas vides alors, il faut les contrôler { // Vérification si les données rentrées existent déjà var req = from v in monModele.visiteurs select v; //string num = req.First(); bool identique = false; // Il faut parcourir la liste pour savoir si le num tapé correspond à un num dans la liste foreach (var resultat in req) { if (tb_Matricule.Text == resultat.VIS_MATRICULE) { identique = true; } } // Si dans la liste, on a trouvé un numéro similaire à celui saisi dans le textbox du matricule if (identique == true) { MessageBox.Show("Le numéro de visiteur existe déjà. En choisir un autre. ", "Attention", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { try { // Maintenant, il faut récupérer le code de la région à l'aide du comboBox de la région string selectionRegion = cb_region.SelectedItem.ToString(); var req2 = from p in monModele.regions where p.REG_NOM == selectionRegion select p.REG_CODE; foreach (var res in req2) { codeRegion = res; } // Déclaration d'un nouveau visiteur var unVisiteur = new visiteur() { VIS_MATRICULE = tb_Matricule.Text, VIS_NOM = tb_Nom.Text, VIS_PRENOM = tb_Prenom.Text, VIS_ADRESSE = tb_Adresse.Text, VIS_CP = tb_CP.Text, VIS_VILLE = tb_Ville.Text, VIS_DATEEMBAUCHE = Convert.ToDateTime(dtp_DateEmbauche.Text), VIS_LOGIN = tb_Login.Text, VIS_MDP = tb_MotDePasse.Text }; // Ajout du visiteur dans la liste gérees par le programme context.visiteurs.Add(unVisiteur); // Sauvegarde de l'ajout dans la BDD context.SaveChanges(); MessageBox.Show("Le visiteur " + tb_Nom.Text + " " + tb_Prenom.Text + " à bien été ajouté", "ok", MessageBoxButtons.OK); tb_Matricule.Text = ""; tb_Nom.Text = ""; tb_Prenom.Text = ""; tb_Adresse.Text = ""; tb_CP.Text = ""; tb_Ville.Text = ""; dtp_DateEmbauche.Text = ""; tb_Login.Text = ""; tb_MotDePasse.Text = ""; } catch (NullReferenceException) // Si le visiteur sélectionné n'est pas dans la région sélectionnée { MessageBox.Show("Erreur, des champs ne sont pas renseignés, les champs sont tous obligatoires." + ". ", "Attention", MessageBoxButtons.OK, MessageBoxIcon.Warning); } catch (FormatException) { MessageBox.Show("Erreur, format de la chaine d'une saisie incorrecte, retentez.." + ". ", "Attention", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } } } }
/// <summary> /// Créer dans la base de données, un nouveau médecin /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Btn_Valider_Click(object sender, EventArgs e) { using (var context = new GSB_PPE3Entities1()) { // Vérification si les champs sont vides. S'ils sont vides, message d'erreur. if (tb_Nom.Text == "" && tb_Prenom.Text == "" && tb_Adresse.Text == "" && tb_CP.Text == "" && tb_Ville.Text == "" && tb_coefNot.Text == "" && tb_coefConf.Text == "") { MessageBox.Show("Tous les champs ne sont pas renseignés ! ", "Attention", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else // Si les champs ne sont pas vides alors, il faut les contrôler { // Vérification si les données rentrées existent déjà var req = from p in monModele.praticiens select p; try { // Récupération du contenu du combobox du type du praticien string selectionType = cb_type.SelectedItem.ToString(); // Dans le combobox du type, on récupère le libelle // Il faut le code du type du praticien var req1 = from p in monModele.type_praticien where p.TYP_LIBELLE == selectionType select p.TYP_CODE; foreach (var res in req1) { codeType = res; } // Maintenant, il faut récupérer le code de la région à l'aide du comboBox de la région string selectionRegion = cb_region.SelectedItem.ToString(); var req2 = from p in monModele.regions where p.REG_NOM == selectionRegion select p.REG_CODE; foreach (var res in req2) { codeRegion = res; } // Tout d'abord, générer un numéro de dossier random // sans que ce numéro soit déjà dans la base Random aleatoire = new Random(); matriculeAlea = aleatoire.Next(7, 100); //Génère un entier aléatoire positif // Permet de générer et d'attribuer un numéro de rapport, sans que celui-ci ne soit déjà dans la base do { matriculeAlea = aleatoire.Next(1, 300); } while (monModele.praticiens.Any(a => a.PRA_NUM == matriculeAlea)); MessageBox.Show("Bravo, numéro de rapport généré : " + matriculeAlea + "."); var unPraticien = new praticien() { PRA_NUM = matriculeAlea, PRA_NOM = tb_Nom.Text, PRA_PRENOM = tb_Prenom.Text, PRA_ADRESSE = tb_Adresse.Text, PRA_CP = tb_CP.Text, PRA_VILLE = tb_Ville.Text, PRA_COEFNOTORIETE = Convert.ToInt32(tb_coefNot.Text), PRA_COEFCONFIANCE = Convert.ToInt32(tb_coefConf.Text), TYP_CODE = codeType, REG_CODE = codeRegion }; // Ajout du visiteur dans la liste gérees par le programme context.praticiens.Add(unPraticien); // Sauvegarde de l'ajout dans la BDD context.SaveChanges(); MessageBox.Show("Le praticien " + tb_Nom.Text + " " + tb_Prenom.Text + " à bien été ajouté", "Ajout confirmé", MessageBoxButtons.OK); tb_Nom.Text = ""; tb_Prenom.Text = ""; tb_Adresse.Text = ""; tb_CP.Text = ""; tb_Ville.Text = ""; tb_coefNot.Text = ""; tb_coefConf.Text = ""; } catch (NullReferenceException) // Si le visiteur sélectionné n'est pas dans la région sélectionnée { MessageBox.Show("Erreur, des champs ne sont pas renseignés, les champs sont tous obligatoires." + ". ", "Attention", MessageBoxButtons.OK, MessageBoxIcon.Warning); } catch (FormatException) { MessageBox.Show("Erreur, format de la chaine d'une saisie incorrecte, retentez.." + ". ", "Attention", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } } }
/// <summary> /// Permet d'ajouter un médicament dans la base de données /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn_Valider_Click(object sender, EventArgs e) { using (var context = new GSB_PPE3Entities1()) { // Vérification si les champs sont vides. S'ils sont vides, message d'erreur. if (tb_Matricule.Text == "" && tb_Nom.Text == "" && tb_Compo.Text == "" && tb_contreIndic.Text == "" && tb_effets.Text == "") { MessageBox.Show("Tous les champs ne sont pas renseignés ! ", "Attention", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else // Si les champs ne sont pas vides alors, il faut les contrôler { // Vérification si les données rentrées existent déjà var req = from m in monModele.medicaments select m; //string num = req.First(); bool identique = false; // Il faut parcourir la liste pour savoir si le num tapé correspond à un num dans la liste foreach (var resultat in req) { if (tb_Matricule.Text == Convert.ToString(resultat.MED_DEPOTLEGAL)) { identique = true; } } // Si dans la liste, on a trouvé un numéro similaire à celui saisi dans le textbox du matricules if (identique == true) { MessageBox.Show("Le numéro du médicament existe déjà. En choisir un autre. ", "Attention", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { try { // Récupération du contenu du combobox de la famille du médicament string selectionFamille = cb_famille.SelectedItem.ToString(); // Dans le combobox du type, on récupère le libelle // Il faut le code de la famille var req1 = from p in monModele.familles where p.FAM_LIBELLE == selectionFamille select p.FAM_CODE; foreach (var res in req1) { codeFamille = res; } var unMedicament = new medicament() { MED_DEPOTLEGAL = tb_Matricule.Text, MED_NOMCOMMERCIAL = tb_Nom.Text, MED_COMPOSITION = tb_Compo.Text, MED_EFFETS = tb_effets.Text, MED_CONTREINDIC = tb_contreIndic.Text, FAM_CODE = codeFamille }; // Ajout du médicament dans la liste gérees par le programme context.medicaments.Add(unMedicament); // Sauvegarde de l'ajout dans la BDD context.SaveChanges(); MessageBox.Show("Le médicament " + tb_Nom.Text + " à bien été ajouté", "Ajout confirmé", MessageBoxButtons.OK); tb_Matricule.Text = ""; tb_Nom.Text = ""; tb_effets.Text = ""; tb_Compo.Text = ""; tb_contreIndic.Text = ""; } catch (NullReferenceException) // Si le médicament sélectionné n'est pas dans la famille sélectionnée { MessageBox.Show("Erreur, des champs ne sont pas renseignés, les champs sont tous obligatoires." + ". ", "Attention", MessageBoxButtons.OK, MessageBoxIcon.Warning); } catch (FormatException) { MessageBox.Show("Erreur, format de la chaine d'une saisie incorrecte, retentez.." + ". ", "Attention", MessageBoxButtons.OK, MessageBoxIcon.Warning); } /* * // Pour récupérer la valeur dans le comboBox * string selection = cb_famille.SelectedItem.ToString(); * var unMedicament = new medicament() * { * MED_DEPOTLEGAL = tb_Matricule.Text, * MED_NOMCOMMERCIAL = tb_Nom.Text, * MED_COMPOSITION = tb_Compo.Text, * MED_EFFETS = tb_effets.Text, * MED_CONTREINDIC = tb_contreIndic.Text, * FAM_CODE = selection * }; * // Ajout du visiteur dans la liste gérees par le programme * context.medicaments.Add(unMedicament); * // Sauvegarde de l'ajout dans la BDD * context.SaveChanges(); * * MessageBox.Show("Le médicament " + tb_Nom.Text + " à bien été ajouté", "ok", MessageBoxButtons.OK); * tb_Matricule.Text = ""; * tb_Nom.Text = ""; * tb_effets = null; * tb_Compo = null; * tb_contreIndic = null;*/ } } } }