public void Supprimer(int idOuvrage) { using (IUnitOfWork uow = BeginTransaction()) { Ouvrage ou = depotOuvrages.Read(idOuvrage); if (ou == null) { throw new Exception("Ne peut pas supprimer un ouvrage inexistant."); } List <Exemplaire> ouExemplaires = ou.Exemplaires.Where(e => !e.EstDisponible()).ToList(); if (ouExemplaires.Count > 0) { throw new Exception("Ne peut pas supprimer un ouvrage ayant un exemplaire en cours de pret."); } while (ou.Exemplaires.Count > 0) { Exemplaire ex = ou.Exemplaires[0]; List <Pret> exPrets = depotPrets.Query().Where(p => p.Exemplaire != null && p.Exemplaire.Id == ex.Id).ToList(); foreach (Pret pret in exPrets) { pret.Exemplaire = null; } ou.Remove(ex); depotExemplaires.Delete(ex); } depotOuvrages.Delete(ou); uow.Commit(); } }
public void Supprimer(int idExemplaire) { using (IUnitOfWork uow = BeginTransaction()) { Exemplaire ex = depotExemplaires.Read(idExemplaire); if (ex == null) { throw new Exception("Ne peut pas supprimer un exemplaire inexistant."); } if (ex.Ouvrage == null) { throw new Exception("Ne peut pas supprimer d'exemplaire sans ouvrage"); } if (!ex.EstDisponible()) { throw new Exception("Ne peut pas supprimer un exemplaire en cours de pret."); } Ouvrage ouvrage = depotOuvrages.Read(ex.Ouvrage.Id); if (ouvrage == null) { throw new Exception("Ne peut pas supprimer un exemplaire dont l'ouvrage est inexistant."); } ouvrage.Remove(ex); depotExemplaires.Delete(ex); uow.Commit(); } }
public IHttpActionResult PostExemplaire(Exemplaire exemplaire) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.Exemplaires.Add(exemplaire); try { db.SaveChanges(); } catch (DbUpdateException) { if (ExemplaireExists(exemplaire.idEx)) { return(Conflict()); } else { throw; } } return(CreatedAtRoute("DefaultApi", new { id = exemplaire.idEx }, exemplaire)); }
public ActionResult Put(int livreId, int id, [FromBody] Exemplaire exemplaire) { if (!ModelState.IsValid || exemplaire.LivreId != livreId) { return BadRequest(); } if (!Donnees.ContainsKey(livreId)) { return NotFound(); } int index = Donnees[livreId].FindIndex(e => e.ExemplaireId == id); if (index < 0) { return NotFound(); } Donnees[livreId][index] = exemplaire; return NoContent(); }
public void TraiterEmprunt(int idAdherent, int idExemplaire) { using (IUnitOfWork uow = BeginTransaction()) { Adherent adherent = depotAdherents.Read(idAdherent); if (adherent == null) { throw new Exception("L'adhérent est inconnu."); } if (adherent.EstQuotaDepasse()) { throw new Exception("L'adhérent ne peut pas emprunter plus d'exemplaires."); } Exemplaire exemplaire = depotExemplaires.Read(idExemplaire); if (exemplaire == null) { throw new Exception("L'exemplaire est inconnu."); } if (!exemplaire.EstDisponible()) { throw new Exception("L'exemplaire est en cours de prêt."); } adherent.Emprunte(exemplaire); depotAdherents.Update(adherent); depotExemplaires.Update(exemplaire); uow.Commit(); } }
private void btnAjoutExemplaire_Click(object sender, EventArgs e) { if (txtBox_RefExemp.Text != "" && cbbxEtatExmp.Text != "" && cbbxBdExemp.Text != "") {//vérifie que tout les champs sont remplis LivreProc wlivreproc; wlivreproc = new LivreProc(); ExemplaireProc exemplaireproc; exemplaireproc = new ExemplaireProc(); Exemplaire unExemplaire; int a; a = wlivreproc.Afficher_idBd_enFctionNom(cbbxBdExemp.Text); Boolean o; o = false; foreach (Exemplaire wExemplaire in exemplaireproc.ListExemplaire()) { if (wExemplaire.wBdEmpRef == txtBox_RefExemp.Text) //vérifie que la référence n'est pas déja définie dans la base de donnée { o = true; } } if (o == false) // si non alors on instancie un nouvel objet puis on l'ajoute { unExemplaire = new Exemplaire(txtBox_RefExemp.Text, cbbxEtatExmp.Text, a); //instancie un nouveau exemplaire ExemplaireProc exemp; exemp = new ExemplaireProc(); exemp.AjouterExemplaire(unExemplaire);//l'ajoute a la base txtBox_RefExemp.Text = ""; cbbxBdExemp.Text = ""; cbbxEtatExmp.Text = ""; } else { pnlRefFaux.Visible = true; } } else { pnl_MsgErreurExemplaire.Visible = true; } // }//ajoute un exemplaire a la base
public ActionResult Post(int livreId, [FromBody] Exemplaire exemplaire) { if (!ModelState.IsValid || exemplaire.LivreId != livreId) { return BadRequest(); } if (!LivresController.Donnees.Any(l => l.LivreId == livreId)) { return BadRequest(); } var idMax = Donnees.Values.SelectMany(ce => ce.Select(e => e.ExemplaireId)).OrderByDescending(id => id).FirstOrDefault(); exemplaire.ExemplaireId = idMax + 1; if (!Donnees.ContainsKey(livreId )) { Donnees.Add(livreId, new List <Exemplaire>()); } Donnees[livreId].Add(exemplaire); return CreatedAtAction(nameof(Get), new { id = exemplaire.ExemplaireId }, exemplaire); }
private void btnMoins_Click(object sender, RoutedEventArgs e) { Button BoutonMoins = sender as Button; int index = LstBtnMoins.IndexOf(BoutonMoins); int onglet = tbcDecksUtilisateurs.SelectedIndex; int qte; Exemplaire exemplaireAUpdate = RetrouverExemplaireAUpdate(LstNomExemplaire[index].Content.ToString()); if ((int)LstQteExemplaire[index].Content <= 3 && exemplaireAUpdate.Quantite - (int)LstQteExemplaire[index].Content >= 0 && Main.UtilisateurConnecte.DecksUtilisateurs[0].CartesDuDeck.Count <= 50) { qte = (int)LstQteExemplaire[index].Content - 1; if (qte > 0) { MySqlDeckService.UpdateQteExemplaireDeck(Main.UtilisateurConnecte.DecksUtilisateurs[onglet], exemplaireAUpdate, qte); } else { MySqlDeckService.DeleteExemplaireDeck(Main.UtilisateurConnecte.DecksUtilisateurs[onglet].IdDeck, exemplaireAUpdate.IdExemplaire); } } RefreshAll(); }
private static void TesterPret() { Adherent adh = AdherentDAO.Instance.GetByID("A001"); adh.Prets.SymmetricExceptWith(PretDAO.Instance.GetListePretsEncoursByIdAdherent(adh.AdherentID)); foreach (Pret item in adh.Prets) { Console.WriteLine($"Ex : {item.IdExemplaire} "); Console.WriteLine($"Emprunté {(PretDAO.Instance.GetEnCoursByIDExemplaire(item.IdExemplaire)==null ? "Oui" : "Non")}"); } Console.WriteLine($"Nombre prets pour {adh.Nom} : {adh.Prets.Count}"); Console.WriteLine($"Déja Emprunté {(PretDAO.Instance.GetEnCoursByIDExemplaire(1) == null ? "Oui" : "Non")}"); Exemplaire exemplaire = ExemplaireDAO.Instance.GetByID(3); exemplaire.Disponible = PretDAO.Instance.GetEnCoursByIDExemplaire(exemplaire.IdExemplaire) == null; Console.WriteLine($"exemplaire : {exemplaire.IdExemplaire}" + $" disponible : {exemplaire.Disponible}" + $" empruntable : {exemplaire.Empruntable}"); Livre livre = LivreDAO.Instance.GetByISBN(exemplaire.ISBN); Console.WriteLine($"livre : {livre.ISBN}" + $" titre : {livre.Titre}"); Console.ReadLine(); }
private void buttonRetourner_Click(object sender, EventArgs e) { // TODO: if (exemplaires != null && exemplaires.Count > 0) { // 1. Recuperer l'identifiant de l'exemplaire selectionné string selectedTxt = listBoxExemplaires.SelectedItem as string; Exemplaire exemplaire = (exemplaires as List <Exemplaire>) .Find(ex => ex.ToString() == selectedTxt); try { // 2. Execution du retour if (exemplaire.Adherent != null) { exemplaire.Adherent.Retourne(exemplaire); } else { throw new Exception("Exemplaire non emprunté !"); } // 3. Mis à jour de l'IHM Actualiser(); } catch (Exception ex) { MessageBox.Show(ex.Message, "Retour échoué", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("Pas d'exemplaire !", "Retour échoué", MessageBoxButtons.OK, MessageBoxIcon.Warning); } }
private void buttonEmprunter_Click(object sender, EventArgs e) { // TODO: if (adherents.Count > 0 && exemplaires.Count > 0) { // 1. Recuperer l'identifiant de l'adherent selectionné string selectedTxt = listBoxAdherents.SelectedItem as string; Adherent adherent = adherents .Find(a => a.ToString() == selectedTxt); // 2. Recuperer l'identifiant de l'exemplaire selectionné selectedTxt = listBoxExemplaires.SelectedItem as string; Exemplaire exemplaire = (exemplaires as List <Exemplaire>) .Find(ex => ex.ToString() == selectedTxt); try { // 3. Execution de l'emprunt adherent.Emprunte(exemplaire); // 4. Mis à jour de l'IHM Actualiser(); } catch (Exception ex) { MessageBox.Show(ex.Message, "Emprunt échoué", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("Pas d'adhérent ou d'exemplaire !", "Emprunt échoué", MessageBoxButtons.OK, MessageBoxIcon.Warning); } }
public ActionResult DeleteConfirmed(int id) { Exemplaire exemplaire = db.Exemplaires.Find(id); db.Exemplaires.Remove(exemplaire); db.SaveChanges(); return(RedirectToAction("Index")); }
public void Modifier(Exemplaire ex) { using (IUnitOfWork uow = BeginTransaction()) { depotExemplaires.Update(ex); uow.Commit(); } }
public void Supprimer(Exemplaire ex) { using (IUnitOfWork uow = BeginTransaction()) { depotExemplaires.Delete(ex); uow.Commit(); } }
public void Ajouter(Exemplaire exemplaire) { using (IUnitOfWork uow = BeginTransaction()) { depotExemplaires.Create(exemplaire); uow.Commit(); } }
}//A chaque lettre ajoutée dans le txtbox //private void datePicker_Recherche_onValueChanged(object sender, EventArgs e) //{ // unLivre = new Livre(datePicker_Recherche.Value.ToString("MM/yyyy")); // unLivreProc = new LivreProc(); // unLivreProc.listRechercheLivre(unLivre); // lbltest.Text = datePicker_Recherche.Value.ToString("MM/yyyy"); // dgv_RechercheLivre.DataSource = unLivreProc.Recherche_Date_Livre(unLivre); // dgv_RechercheLivre.Columns[1].HeaderText = "Titre"; // dgv_RechercheLivre.Columns[2].HeaderText = "ISBN"; // dgv_RechercheLivre.Columns[3].HeaderText = "Tome"; // dgv_RechercheLivre.Columns[4].HeaderText = "Date publication"; // dgv_RechercheLivre.Columns[5].HeaderText = "Nombre de pages"; // dgv_RechercheLivre.Columns[6].HeaderText = "Nom de l'image"; // dgv_RechercheLivre.Columns[7].HeaderText = "Colorimétrie"; // dgv_RechercheLivre.Columns[8].HeaderText = "Commentaire"; // dgv_RechercheLivre.Columns[9].HeaderText = "Format"; // dgv_RechercheLivre.Columns[10].HeaderText = "Numéro Série"; // dgv_RechercheLivre.Columns[11].HeaderText = "Numéro Éditeur"; // dgv_RechercheLivre.Columns[12].Visible = false; // dgv_RechercheLivre.Columns["wBdTitre"].DisplayIndex = 0; // dgv_RechercheLivre.Columns["wBdIsbn"].DisplayIndex = 1; // dgv_RechercheLivre.Columns["wBdTome"].DisplayIndex = 2; // dgv_RechercheLivre.Columns["wBdParution"].DisplayIndex = 3; // dgv_RechercheLivre.Columns["wBdPages"].DisplayIndex = 4; // dgv_RechercheLivre.Columns["wBdImage"].DisplayIndex = 5; // dgv_RechercheLivre.Columns["wBdCouleur"].DisplayIndex = 6; // dgv_RechercheLivre.Columns["wBdCommentaires"].DisplayIndex = 7; // dgv_RechercheLivre.Columns["wBdFormat"].DisplayIndex = 8; // dgv_RechercheLivre.Columns["wBdNumSerie"].DisplayIndex = 9; // dgv_RechercheLivre.Columns["wBdNumEditeur"].DisplayIndex = 10; //}//A chaque date ajoutée private void btn_RendreExemplaire_Click(object sender, EventArgs e) { Exemplaire unExemplaire; unExemplaire = new Exemplaire(txtBox_RefExemp.Text); ExemplaireProc unExemplaireProc; unExemplaireProc = new ExemplaireProc(); unExemplaireProc.Supprimer_ExemplaireEmprunté(unExemplaire); txtBox_RefExemp.Text = ""; }//supprime l'eexemplaire de la table emprunter
private void btn_ValiderMotifEmp_Click(object sender, EventArgs e) { Exemplaire ExemplaireSuppr; ExemplaireProc ExemplaireProcSuppr; ExemplaireProcSuppr = new ExemplaireProc(); ExemplaireSuppr = new Exemplaire(txtBox_RefExemp.Text, txtbox_motifEmp.Text); ExemplaireProcSuppr.SupprimerExemplaire(ExemplaireSuppr); txtbox_motifEmp.Text = ""; pnl_MotifEmp.Visible = false; txtBox_RefExemp.Text = ""; }//supprime l'exemplaire
public static void UpdateQteExemplaireDeck(Deck deck, Exemplaire exemplaire, int qte) { StringBuilder nonquery = new StringBuilder(); ConnectionBD = new MySqlConnexion(); nonquery.Append("UPDATE DecksExemplaires ").Append("SET quantite = ").Append(qte).Append(" WHERE idDeck = ") .Append(deck.IdDeck).Append(" AND idExemplaire = ").Append(exemplaire.IdExemplaire); ConnectionBD.NonQuery(nonquery.ToString()); }
private bool TrouverExemplaireDansDeck(Exemplaire exemplaireAAjouter) { foreach (Label nomCarte in LstNomExemplaire) { if (nomCarte.Content.ToString() == exemplaireAAjouter.Carte.Nom) { return(true); } } return(false); }
private Exemplaire ChargerDonnees(SqlDataReader rd) { Exemplaire exemplaire = new Exemplaire { IdExemplaire = (int)rd["IdExemplaire"], ISBN = rd["ISBN"].ToString(), Empruntable = (bool)rd["Empruntable"], Disponible = PretDAO.Instance.GetEnCoursByIDExemplaire((int)rd["IdExemplaire"]) == null // ExemplaireDAO.Instance.Avalaible((int)rd["IdExemplaire"]) }; return(exemplaire); }
public ActionResult Create(ApplicationModel app, int id = 0) { Exemplaire exemplaires = new Exemplaire(app); using (ApplicationDbContext db = new ApplicationDbContext()) { exemplaires.MoyensCollection = db.Moyens.ToList(); } return(View(exemplaires)); }
public static void InsertExemplaireDeck(Deck deck, Exemplaire exemplaireAAjouter, int quantite) { StringBuilder nonquery = new StringBuilder(); ConnectionBD = new MySqlConnexion(); nonquery.Append("INSERT INTO DecksExemplaires (idDeck, idExemplaire, quantite) VALUES (") .Append(deck.IdDeck) .Append(", ").Append(exemplaireAAjouter.IdExemplaire).Append(", ").Append(quantite).Append(")"); ConnectionBD.NonQuery(nonquery.ToString()); }
private void btnEnlever_Click(object sender, RoutedEventArgs e) { Button BoutonEnlever = sender as Button; int index = LstBtnEnlever.IndexOf(BoutonEnlever); int onglet = tbcDecksUtilisateurs.SelectedIndex; Exemplaire exemplaireAUpdate = RetrouverExemplaireAUpdate(LstNomExemplaire[index].Content.ToString()); MySqlDeckService.DeleteExemplaireDeck(Main.UtilisateurConnecte.DecksUtilisateurs[onglet].IdDeck, exemplaireAUpdate.IdExemplaire); RefreshAll(); }
}//ajoute un exemplaire a la base private void btnModifExemplaire_Click(object sender, EventArgs e)//modifie un exemplaire { if (txtBox_RefExemp.Text != "" && cbbxEtatExmp.Text != "" && cbbxBdExemp.Text != "")//vérification que tout les champs sont remplis { Exemplaire unExemplaire; ExemplaireProc exemplaireProc; exemplaireProc = new ExemplaireProc(); unExemplaire = new Exemplaire(txtBox_RefExemp.Text, cbbxEtatExmp.Text); //instancie un objet exemplaireProc.ModifierEtatExemplaire(unExemplaire); //Modifie l'objet dans la base de donnée } else { pnl_MsgErreurExemplaire.Visible = true; } }
public void ModifierExemplaireSucces() { exemplaire1.Etat = "Test Modifier"; serviceExemplaires.Modifier(exemplaire1.Id); using (ISession session = sessionFactory.OpenSession()) { Exemplaire ex = session.Get <Exemplaire>(exemplaire1.Id); Assert.IsNotNull(ex); Assert.AreEqual(exemplaire1.Id, ex.Id); Assert.AreEqual("Test Modifier", ex.Etat); } }
public void Supprimer(int idExemplaire) { using (IUnitOfWork uow = BeginTransaction()) { Exemplaire exemplaire = depotExemplaires.Read(idExemplaire); if (exemplaire == null) { throw new Exception("Impossible de supprimer, l'exemplaire n'a pas été trouvé !"); } depotExemplaires.Delete(exemplaire); uow.Commit(); } }
public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Exemplaire exemplaire = db.Exemplaires.Find(id); if (exemplaire == null) { return(HttpNotFound()); } return(View(exemplaire)); }
public void SetUp() { adherent = new Adherent { Id = 1, Nom = "Mario Rossi" }; ouvrage = new Ouvrage { Id = 1, Titre = "Il grande Gatsby", Auteur = "F. S. Fitzgerald" }; exemplaire1 = new Exemplaire { Id = 1, Ouvrage = ouvrage, Etat = "Nuovo" }; exemplaire2 = new Exemplaire { Id = 2, Ouvrage = ouvrage, Etat = "Usato" }; }
void CreateFixtures() { adherent = new Adherent { Nom = "Mario Rossi" }; ouvrage = new Ouvrage { Titre = "Il grande Gatsby", Auteur = "F. S. Fitzgerald" }; exemplaire1 = new Exemplaire { Ouvrage = ouvrage, Etat = "Nuovo" }; exemplaire2 = new Exemplaire { Ouvrage = ouvrage, Etat = "Usato" }; }
//Update the exemplaire combo box with the one selected in the grid private void PretDataGridView_CellClick_1(object sender, DataGridViewCellEventArgs e) { try { exemplaire = ExemplaireDAO.Instance.GetByID((int)pretDataGridView.SelectedCells[2].Value); exemplaireBindingSource1.DataSource = exemplaire; } catch (Exception) { //reload the list in the exmplaire combo box listeExemplaire = ExemplaireDAO.Instance.GetAll(); exemplaireBindingSource1.DataSource = listeExemplaire; return; } }