//Bouton permettant d'enregistrer un nouveau livre entré par l'utilisateur private void btnEnregistrer_Click(object sender, EventArgs e) { try { string genreIndiq = cmbboxGenreLitt.Text; int identGenre = ControlGenreLitteraire.TrouvGenre(genreIndiq); string periodeIndiq = cmboxPeriodTempo.Text; int identPeriod = ControlPeriodeTempo.TrouvGenre(periodeIndiq); string serieIndiq = txtSerieLivre.Text; int identSerie = 0; if (serieIndiq.Length != 0) { identSerie = ControlSerie.TrouvSerie(serieIndiq); } string typeLivIndiq = txtTypeOuvr.Text; int identTypeLiv = ControlTypeLivre.TrouvTypeLiv(typeLivIndiq); int identEditeur = DesigneEditeur(); int identImprimeur = DesigneImprimeur(); //Création du livre ArrayList infoLivre = new ArrayList(); infoLivre.Add(txtIsbnLivre.Text); infoLivre.Add(identTypeLiv); if (identSerie == 0) { infoLivre.Add(""); } else { infoLivre.Add(identSerie); } infoLivre.Add(identPeriod); infoLivre.Add(identEditeur); infoLivre.Add(identImprimeur); infoLivre.Add(identGenre); infoLivre.Add(txtTitreLivre.Text); infoLivre.Add(txtTitreOrigLivre.Text); infoLivre.Add(int.Parse(txtPrixLivre.Text)); infoLivre.Add(DateTime.Parse(txtDateAcquiLivre.Text)); infoLivre.Add(txtLangLivre.Text); infoLivre.Add(DateTime.Parse(txtDepotLegLivre.Text)); infoLivre.Add(int.Parse(txtNbrePageLivre.Text)); infoLivre.Add(txtEtatLivre.Text); infoLivre.Add(txtResume.Text); ControlLivre.CreerLivre(infoLivre); //Association des auteurs à un livre int identAutPrincip = 0; if (cmboxChoixAutPrincip.Text.Length != 0 & txtNomAutPrincip.Text.Length != 0) { identAutPrincip = DesigneAuteurExist(cmboxChoixAutPrincip.Text); ModeleEcrire nouvAssocLivAut = new ModeleEcrire(identAutPrincip, txtIsbnLivre.Text); ModeleEcrire.InsertEcrire(nouvAssocLivAut); } else if (cmboxChoixAutPrincip.Text.Length != 0 & txtNomAutPrincip.Text.Length != 0) { throw new Exception("Vous n'avez pas indiqué d'auteur principal."); } else { identAutPrincip = DesigneNouvelAuteur("principal"); ModeleEcrire nouvAssocLivAut = new ModeleEcrire(identAutPrincip, txtIsbnLivre.Text); ModeleEcrire.InsertEcrire(nouvAssocLivAut); } int identAutSecond = 0; if (cmboxChoixAutSecond.Text.Length != 0 & txtNomAutSecond.Text.Length != 0) { identAutSecond = DesigneAuteurExist(cmboxChoixAutSecond.Text); ModeleEcrire nouvAssocLivAut = new ModeleEcrire(identAutSecond, txtIsbnLivre.Text); ModeleEcrire.InsertEcrire(nouvAssocLivAut); } else if (cmboxChoixAutSecond.Text.Length == 0 & txtNomAutSecond.Text.Length != 0) { identAutSecond = DesigneNouvelAuteur("second"); ModeleEcrire nouvAssocLivAut = new ModeleEcrire(identAutSecond, txtIsbnLivre.Text); ModeleEcrire.InsertEcrire(nouvAssocLivAut); } int identAutTiers = 0; if (cmboxChoixAutTiers.Text.Length != 0 & txtNomAutTiers.Text.Length != 0) { identAutTiers = DesigneAuteurExist(cmboxChoixAutTiers.Text); ModeleEcrire nouvAssocLivAut = new ModeleEcrire(identAutTiers, txtIsbnLivre.Text); ModeleEcrire.InsertEcrire(nouvAssocLivAut); } else if (cmboxChoixAutTiers.Text.Length == 0 & txtNomAutTiers.Text.Length != 0) { identAutTiers = DesigneNouvelAuteur("tiers"); ModeleEcrire nouvAssocLivAut = new ModeleEcrire(identAutTiers, txtIsbnLivre.Text); ModeleEcrire.InsertEcrire(nouvAssocLivAut); } //Association des intervenants à un livre int identIntervPrincip = 0; if (cmboxChoixIntervPrincip.Text.Length != 0 & txtNomIntervPrincip.Text.Length != 0) { identIntervPrincip = DesigneIntervExist(cmboxChoixIntervPrincip.Text); ModeleIntervenir nouvAssocIntervLiv = new ModeleIntervenir(identIntervPrincip, txtIsbnLivre.Text); ModeleIntervenir.InsertIntervention(nouvAssocIntervLiv); } else if (cmboxChoixIntervPrincip.Text.Length == 0 & txtNomIntervPrincip.Text.Length != 0) { identIntervPrincip = DesigneNouvelIntervenant("principal"); ModeleIntervenir nouvAssocIntervLiv = new ModeleIntervenir(identIntervPrincip, txtIsbnLivre.Text); ModeleIntervenir.InsertIntervention(nouvAssocIntervLiv); } int identIntervSecond = 0; if (cmboxChoixIntervSecond.Text.Length != 0 & txtNomIntervSecond.Text.Length != 0) { identIntervSecond = DesigneIntervExist(cmboxChoixIntervSecond.Text); ModeleIntervenir nouvAssocIntervLiv = new ModeleIntervenir(identIntervSecond, txtIsbnLivre.Text); ModeleIntervenir.InsertIntervention(nouvAssocIntervLiv); } else if (cmboxChoixIntervSecond.Text.Length == 0 & txtNomIntervSecond.Text.Length != 0) { identIntervSecond = DesigneNouvelIntervenant("second"); ModeleIntervenir nouvAssocIntervLiv = new ModeleIntervenir(identIntervSecond, txtIsbnLivre.Text); ModeleIntervenir.InsertIntervention(nouvAssocIntervLiv); } int identIntervTiers = 0; if (cmboxChoixIntervTiers.Text.Length != 0 & txtNomIntervTiers.Text.Length != 0) { identIntervTiers = DesigneIntervExist(cmboxChoixIntervTiers.Text); ModeleIntervenir nouvAssocIntervLiv = new ModeleIntervenir(identIntervTiers, txtIsbnLivre.Text); ModeleIntervenir.InsertIntervention(nouvAssocIntervLiv); } else if (cmboxChoixIntervTiers.Text.Length == 0 & txtNomIntervTiers.Text.Length != 0) { identIntervTiers = DesigneNouvelIntervenant("tiers"); ModeleIntervenir nouvAssocIntervLiv = new ModeleIntervenir(identIntervTiers, txtIsbnLivre.Text); ModeleIntervenir.InsertIntervention(nouvAssocIntervLiv); } this.Hide(); VueCreationLivre nouvPageCreaLiv = new VueCreationLivre(); nouvPageCreaLiv.Show(); } catch { throw new Exception("Impossible de créer un nouveau livre."); } }
//Bouton permettant de lancer la recherche des éléments en lien avec la recherche private void btnRecherche_Click(object sender, EventArgs e) { //Définition de la taille de la datagrid dtGridRecherche.ColumnCount = 6; dtGridRecherche.Columns[0].Name = "ISBN"; dtGridRecherche.Columns[1].Name = "Titre du livre"; dtGridRecherche.Columns[2].Name = "Auteur"; dtGridRecherche.Columns[3].Name = "Date de création"; dtGridRecherche.Columns[4].Name = "Editeur"; dtGridRecherche.Columns[5].Name = "Imprimeur"; //Modification de la recherche en fonction du thème string sujetChoisi = cmboxChoixRubrique.Text; ArrayList listeOeuvre = new ArrayList(); if (sujetChoisi == "Genre_Litteraire") { int numGenreRecherche = ControlGenreLitteraire.TrouvGenre(txtContRecherche.Text); listeOeuvre = ControlGenreLitteraire.TrouvOeuvreAssoc(numGenreRecherche); for (int cursGenre = 0; cursGenre < listeOeuvre.Count; cursGenre++) { dtGridRecherche.Rows.Add(listeOeuvre[cursGenre], listeOeuvre[cursGenre + 1], listeOeuvre[cursGenre + 2], listeOeuvre[cursGenre + 3], listeOeuvre[cursGenre + 4], listeOeuvre[cursGenre + 5]); cursGenre += 5; } } else if (sujetChoisi == "Auteur") { listeOeuvre = ControlAuteur.TrouvOeuvreAssocAut(txtContRecherche.Text); for (int cursAuteur = 0; cursAuteur < listeOeuvre.Count; cursAuteur++) { dtGridRecherche.Rows.Add(listeOeuvre[cursAuteur], listeOeuvre[cursAuteur + 1], listeOeuvre[cursAuteur + 2], listeOeuvre[cursAuteur + 3], listeOeuvre[cursAuteur + 4], listeOeuvre[cursAuteur + 5]); cursAuteur += 5; } } else if (sujetChoisi == "Editeur") { listeOeuvre = ControlEditeur.TrouvOeuvreAssocEdit(txtContRecherche.Text); for (int cursEditeur = 0; cursEditeur < listeOeuvre.Count; cursEditeur++) { dtGridRecherche.Rows.Add(listeOeuvre[cursEditeur], listeOeuvre[cursEditeur + 1], listeOeuvre[cursEditeur + 2], listeOeuvre[cursEditeur + 3], listeOeuvre[cursEditeur + 4], listeOeuvre[cursEditeur + 5]); cursEditeur += 5; } } else if (sujetChoisi == "Imprimeur") { listeOeuvre = ControlImprimeur.TrouvOeuvreAssocImpr(txtContRecherche.Text); for (int cursImpr = 0; cursImpr < listeOeuvre.Count; cursImpr++) { dtGridRecherche.Rows.Add(listeOeuvre[cursImpr], listeOeuvre[cursImpr + 1], listeOeuvre[cursImpr + 2], listeOeuvre[cursImpr + 3], listeOeuvre[cursImpr + 4], listeOeuvre[cursImpr + 5]); cursImpr += 5; } } else if (sujetChoisi == "Intervenant_Divers") { listeOeuvre = ControlIntervDivers.TrouvOeuvreAssocInterv(txtContRecherche.Text); for (int cursInterv = 0; cursInterv < listeOeuvre.Count; cursInterv++) { dtGridRecherche.Rows.Add(listeOeuvre[cursInterv], listeOeuvre[cursInterv + 1], listeOeuvre[cursInterv + 2], listeOeuvre[cursInterv + 3], listeOeuvre[cursInterv + 4], listeOeuvre[cursInterv + 5]); cursInterv += 5; } } else if (sujetChoisi == "Periode_Temporelle") { int numPeriodRecherche = ControlPeriodeTempo.RecupIdPeriodTemp(txtContRecherche.Text); listeOeuvre = ControlPeriodeTempo.TrouvOeuvreAssocPerioTemp(numPeriodRecherche); for (int cursPeriod = 0; cursPeriod < listeOeuvre.Count; cursPeriod++) { dtGridRecherche.Rows.Add(listeOeuvre[cursPeriod], listeOeuvre[cursPeriod + 1], listeOeuvre[cursPeriod + 2], listeOeuvre[cursPeriod + 3], listeOeuvre[cursPeriod + 4], listeOeuvre[cursPeriod + 5]); cursPeriod += 5; } } else if (sujetChoisi == "Type_de_livre") { int numTypeLivRecherche = ControlTypeLivre.RecupIdTypeLivre(txtContRecherche.Text); listeOeuvre = ControlTypeLivre.TrouvOeuvreAssocTypeLivre(numTypeLivRecherche); for (int cursTypeLiv = 0; cursTypeLiv < listeOeuvre.Count; cursTypeLiv++) { dtGridRecherche.Rows.Add(listeOeuvre[cursTypeLiv], listeOeuvre[cursTypeLiv + 1], listeOeuvre[cursTypeLiv + 2], listeOeuvre[cursTypeLiv + 3], listeOeuvre[cursTypeLiv + 4], listeOeuvre[cursTypeLiv + 5]); cursTypeLiv += 5; } } else if (sujetChoisi == "Serie_de_livre") { int numSerieLivRecherche = ControlSerie.RecupIdSerieLiv(txtContRecherche.Text); listeOeuvre = ControlSerie.TrouvOeuvreAssocSerieLiv(numSerieLivRecherche); for (int cursSerieLiv = 0; cursSerieLiv < listeOeuvre.Count; cursSerieLiv++) { dtGridRecherche.Rows.Add(listeOeuvre[cursSerieLiv], listeOeuvre[cursSerieLiv + 1], listeOeuvre[cursSerieLiv + 2], listeOeuvre[cursSerieLiv + 3], listeOeuvre[cursSerieLiv + 4], listeOeuvre[cursSerieLiv + 5]); cursSerieLiv += 5; } } else if (sujetChoisi == "Livre") { listeOeuvre = ControlLivre.TrouvOeuvreAssocLivre(txtContRecherche.Text); for (int cursLivre = 0; cursLivre < listeOeuvre.Count; cursLivre++) { dtGridRecherche.Rows.Add(listeOeuvre[cursLivre], listeOeuvre[cursLivre + 1], listeOeuvre[cursLivre + 2], listeOeuvre[cursLivre + 3], listeOeuvre[cursLivre + 4], listeOeuvre[cursLivre + 5]); cursLivre += 5; } } dtGridRecherche.AutoResizeColumns(); }