private void Circ_AfficherGroupeEvent(LecteurResult lr) { // Retrouver les membres du groupe ctrlChoixLecteur choix = new ctrlChoixLecteur() { Dock = DockStyle.Fill }; choix.Init(Lecteur.TrouverLecteursParGroupe(lr.infoLecteur)); choix.ChoixLecteurEvent += Choix_ChoixLecteurEvent; pnlCirculation.Controls.Clear(); pnlCirculation.Controls.Add(choix); }
private void btnCirculation_Click(object sender, EventArgs e) { var collNotice = new MongoDB.Driver.MongoClient(Properties.Settings.Default.MongoDB).GetDatabase("wfBiblio").GetCollection <Notice>("Notice"); var collEmprunt = new MongoDB.Driver.MongoClient(Properties.Settings.Default.MongoDB).GetDatabase("wfBiblio").GetCollection <Emprunt>("Emprunt"); // Chercher lecteur ou exemplaire emprunté if (txtSearchCirculation.Text.All(char.IsDigit)) { List <Notice> tmp = collNotice.Find(new BsonDocument("exemplaires.codeBarre", txtSearchCirculation.Text)).ToList(); if (tmp != null) { if (tmp.Count == 1) { Exemplaire exemplaire = tmp[0].exemplaires.Find(a => a.codeBarre == txtSearchCirculation.Text); if (exemplaire != null) { // Retrouver le lecteur concerné List <Emprunt> tmp2 = collEmprunt.Find( Builders <Emprunt> .Filter.And( Builders <Emprunt> .Filter.Eq(a => a.IdExemplaire, exemplaire._id), Builders <Emprunt> .Filter.Eq(a => a.etat, 1)) ).ToList(); if (tmp2 != null && tmp2.Count > 0) { AffichageLecteur(Lecteur.TrouverLecteurParId(tmp2[0].idLecteur)); } } else { MessageBox.Show("Erreur interne 1"); } } else { MessageBox.Show("Il existe plusieurs exemplaires ce qui est anormal"); } } else { MessageBox.Show("Cet exemplaire n'existe pas"); } } else { // Cherche le lecteur List <LecteurResult> lr = Lecteur.TrouverLecteursParSearch(txtSearchCirculation.Text); if (lr.Count > 0) { if (lr.Count == 1) { AffichageLecteur(lr[0]); } else { ctrlChoixLecteur choix = new ctrlChoixLecteur() { Dock = DockStyle.Fill }; choix.Init(lr); choix.ChoixLecteurEvent += Choix_ChoixLecteurEvent; pnlCirculation.Controls.Clear(); pnlCirculation.Controls.Add(choix); } } else { pnlCirculation.Controls.Clear(); MessageBox.Show("Pas de lecteur à ce nom"); } } txtSearchCirculation.SelectAll(); }