public void AusleihenBis_BuchArgumentWirdZumAusgeliehenBis_ReturnsTrue() { var buch = new Buch(); DateTime dateTime = DateTime.Now.AddDays(30); buch.AusleihenBis(dateTime); Assert.AreEqual(buch.ausgeliehenBis, dateTime); }
public void AusleihenBis_BuchStatusAendertSichZuIstAusgeliehen_ReturnsTrue() { var buch = new Buch(); DateTime dateTime = DateTime.Now.AddDays(30); buch.AusleihenBis(dateTime); Assert.IsTrue(buch.istAusgeliehen); }
public void KannAusgeliehenWerden_BuchIstVerliehenAberNichtUeberDerAusleihfristOderInDerReparatur_ReturnsFalse() { var buch = new Buch(); buch.istAusgeliehen = true; buch.InReparatur = false; DateTime dateTime = DateTime.Now.AddDays(15); bool kannAusgeliehenWerden = buch.KannAusgeliehenWerden(dateTime); Assert.IsFalse(kannAusgeliehenWerden); }
public void KannAusgeliehenWerden_BuchIstNichtVerliehenNichtInDerReparaturAberUeberDerAusleihfristUnd_ReturnsFalse() { var buch = new Buch(); buch.istAusgeliehen = false; buch.InReparatur = false; DateTime dateTime = DateTime.Now.AddDays(31); bool kannAusgeliehenWerden = buch.KannAusgeliehenWerden(dateTime); Assert.IsFalse(kannAusgeliehenWerden); }
private BuchDTO MapBuch(Buch buch) { BuchDTO dto = new BuchDTO(); dto.ID = buch.ID; dto.AUFLAGE = buch.AUFLAGE; dto.AUTOR_ID = buch.AUTOR_ID; dto.DRUCKORT = buch.DRUCKORT; dto.ERSCHEINUNGSDATUM = buch.ERSCHEINUNGSDATUM; dto.ISBN = buch.ISBN; dto.SPRACHE = buch.SPRACHE; dto.TITEL = buch.TITEL; dto.VERLAG = buch.VERLAG; return(dto); }
private void BearbeitenBuch(Buch selectedItem) { Binding bind = new Binding("Titel"); bind.Source = selectedItem; txtTitel.SetBinding(TextBox.TextProperty, bind); bind = new Binding("Erscheinungsjahr"); bind.Source = selectedItem; txtJahr.SetBinding(TextBox.TextProperty, bind); bind = new Binding("Verfasser"); bind.Source = selectedItem; txtAutor.SetBinding(TextBox.TextProperty, bind); bind = new Binding("Verlag"); bind.Source = selectedItem; txtVerlag.SetBinding(TextBox.TextProperty, bind); cmbTyp.SelectedIndex = 0; // MessageBox.Show(cmbTyp.SelectedIndex.ToString()); }
public async Task <IActionResult> Create([Bind("ISBN, Titel, Autor, Verlag, Erscheinungsjahr, Regal, Reihe, AnzahlExemplare")] Buch buch) { if (ModelState.IsValid) { var buchVorhanden = await bibContext.Buch.SingleOrDefaultAsync(m => m.ISBN == buch.ISBN); // Fall: Buch ist noch nicht in DB vorhanden if (buchVorhanden == null) { bibContext.Add(buch); // Erzeuge die Exemplare für das Buch for (int i = 1; i <= buch.AnzahlExemplare; i++) { var exemplar = new Exemplar { ExemplarId = i, ISBN = buch.ISBN, Verfügbarkeit = true }; bibContext.Exemplar.Add(exemplar); } await bibContext.SaveChangesAsync(); toastNotification.AddToastMessage("Buch erstellt", "Das Buch \"" + buch.Titel + "\" wurde erstellt!", ToastEnums.ToastType.Success, new ToastOption() { PositionClass = ToastPositions.TopCenter }); return(RedirectToAction(nameof(Index))); } else // Fall: Buch ist bereits in DB vorhanden { toastNotification.AddToastMessage("Buch bereits vorhanden", "Das Buch mit der ISBN " + buch.ISBN + " existiert bereits in den Stammdaten!", ToastEnums.ToastType.Error, new ToastOption() { PositionClass = ToastPositions.TopCenter }); return(View(buch)); } } return(View(buch)); }
private void DGBuch_SelectionChanged(object sender, SelectionChangedEventArgs e) { ImgBox.Source = null; Buch sel = BuchGrid.SelectedItem as Buch; if (sel == null) { return; } var selBuch = (from b in Admin.conn.Buch from s in Admin.conn.BuchTyp where b.ID == sel.ID && s.ID == b.TypID select new { b, s }).FirstOrDefault(); cBookID = selBuch.b.ID; DetailPanel.DataContext = selBuch; //ggf. Image laden string cPath = System.IO.Path.Combine(mySettings.CoverPath, cBookID.ToString() + ".jpg"); Admin.ShowImage(ImgBox, cPath); }
private void DelBook(object sender, RoutedEventArgs e) { Buch sel = BuchGrid.SelectedItem as Buch; if (sel == null) { MessageBox.Show("Bitte zunächst einen Titel auswählen!"); return; } var erg = MessageBox.Show("Möchten Sie das Buch '" + sel.Titel + "' wirklich löschen?", "Buch löschen!", MessageBoxButton.YesNo); if (erg == MessageBoxResult.Yes) { } if (DeleteBook.delBook(cBookID)) { LoadBooks(); MessageBox.Show("Buch wurde gelöscht."); } }
private void Window_Loaded(object sender, RoutedEventArgs e) { // Buch laden if (bookID < 0) { MessageBox.Show("Kein Buch ausgewählt!"); return; } cBook = (from b in Admin.conn.Buch where b.ID == bookID select b).FirstOrDefault(); //ggf. Image laden string cPath = System.IO.Path.Combine(mySettings.CoverPath, bookID.ToString() + ".jpg"); Admin.ShowImage(ImgBox, cPath); //Personen laden var erg = (from abl in Admin.conn.AutorBuchLink from pers in Admin.conn.Person from ro in Admin.conn.AutorRolle where abl.BuchID == cBook.ID && pers.PersonID == abl.PersonID && ro.ID == abl.RolleID orderby ro.SortByRolle select new { Person = pers.SortBy, Rolle = ro.AutorRolle1, PerID = pers.PersonID, RolleID = ro.ID, AutorRolleID = abl.id }).ToList(); foreach (var el in erg) { //personen.Add(el.Person + " (" + el.Rolle + ")"); cNameRolle.Add(new NameRolle() { name = el.Person + " (" + el.Rolle + ")", currID = el.PerID, rolle = el.Rolle, currRolleID = el.RolleID, currNameRolleID = el.AutorRolleID }); } lbPersonen.ItemsSource = cNameRolle; lbPersonen.DataContext = cNameRolle; this.DataContext = cBook; //Genre Laden Admin.LoadGenre(ugridGenre); var c_genre = from g in Admin.conn.GenreLink where g.BuchID == bookID select g; foreach (var book in c_genre) { foreach (CheckBox item in ugridGenre.Children) { if (book.SachgruppeID == (int)item.Tag) { item.IsChecked = true; item.FontWeight = FontWeights.Bold; } } } //Verknüpfungen laden var _verlag = (from v in Admin.conn.Verlag where v.PublisherID == cBook.VerlagsID select v.SortBy).FirstOrDefault(); txtVerlag.Text = _verlag; var _verlagsOrt = (from v in Admin.conn.VerlagsOrt where v.ID == cBook.VerlagsOrtID select v.SortBy).FirstOrDefault(); txtVerlagsOrt.Text = _verlagsOrt; var _druckerei = (from d in Admin.conn.Druckerei where d.PrintedByID == cBook.DruckereiID select d.SortBy).FirstOrDefault(); txtDruckerei.Text = _druckerei; var serie = from s in Admin.conn.Serien orderby s.SortBy select new { serie = s.SortBy, id = s.ID }; cbSerie.ItemsSource = serie.ToList(); var _bindung = (from b in Admin.conn.Bindung where b.BindingID == cBook.BindungID select b).FirstOrDefault(); if (_bindung != null) { txtBindung.Text = _bindung.Bindung1; } var _language = (from l in Admin.conn.Language where l.LanguageID == cBook.SprachenID select l).FirstOrDefault(); if (_language != null) { txtLanguage.Text = _language.Language1; } var _typ = (from t in Admin.conn.BuchTyp where t.ID == cBook.TypID select t).FirstOrDefault(); if (_typ != null) { txtTyp.Text = _typ.BuchTyp1; } var _kat = (from k in Admin.conn.DDC_Haupt where k.ID == cBook.KategorieID select k).FirstOrDefault(); if (_kat != null) { txtKategorie.Text = _kat.DDC_Name; cKat = _kat.DDC; } var _uKat = (from u in Admin.conn.DDC_1000 where u.ID == cBook.UnterkategorieID select u).FirstOrDefault(); if (_uKat != null) { txtUKategorie.Text = _uKat.DDC_Name; } var _sachgruppe = (from s in Admin.conn.Sachgruppe where s.GenreID == cBook.SachgruppeID select s).FirstOrDefault(); if (_sachgruppe != null) { txtSachgruppe.Text = _sachgruppe.Sachgruppe1; } var _standort = (from st in Admin.conn.Standort where st.ID == cBook.StandortID select st).FirstOrDefault(); if (_standort != null) { txtStandort.Text = _standort.SortBy; } //Auswahlboxen laden var language = from lg in Admin.conn.Language orderby lg.Language1 select new { lng = lg.Language1, iso = lg.iso, id = lg.LanguageID }; cbLang.ItemsSource = language.ToList(); var bind = from b in Admin.conn.Bindung orderby b.SortBy select new { bnd = b.SortBy, id = b.BindingID }; cbBindung.ItemsSource = bind.ToList(); var typ = from t in Admin.conn.BuchTyp orderby t.SortBy select new { typ = t.SortBy, id = t.ID }; cbBuchTyp.ItemsSource = typ.ToList(); var sach = from s in Admin.conn.Sachgruppe orderby s.SortBy select new { sg = s.SortBy, id = s.GenreID }; cbSachgruppe.ItemsSource = sach.ToList(); var sto = from st in Admin.conn.Standort orderby st.SortBy select new { so = st.SortBy, id = st.ID }; cbStandort.ItemsSource = sto.ToList(); var kat = from k in Admin.conn.DDC_Haupt orderby k.DDC select new { kat = k.DDC + " - " + k.DDC_Name, id = k.ID }; cbKategorie.ItemsSource = kat.ToList(); var verlag = from v in Admin.conn.Verlag orderby v.SortBy select new { verl = v.SortBy, id = v.PublisherID }; cbVerlag.ItemsSource = verlag.ToList(); var verlagOrt = from vo in Admin.conn.VerlagsOrt orderby vo.SortBy select new { verlort = vo.SortBy, id = vo.ID }; cbVerlagsOrt.ItemsSource = verlagOrt.ToList(); var druck = from d in Admin.conn.Druckerei orderby d.SortBy select new { druck = d.SortBy, id = d.PrintedByID }; cbDruckerei.ItemsSource = druck.ToList(); }
public async Task <IActionResult> Edit(int id, Buch buch) { if (ModelState.IsValid) { try { var buchVorher = await bibContext.Buch.AsNoTracking().SingleOrDefaultAsync(e => e.Id == id); var anzahlExemplareVorher = buchVorher.AnzahlExemplare; // Fall: Die Anzahl der Exemplare wurde erhöht if (anzahlExemplareVorher < buch.AnzahlExemplare) { var Differenz = buch.AnzahlExemplare - anzahlExemplareVorher; for (int i = 1; i <= Differenz; i++) { var exemplar = new Exemplar { ExemplarId = anzahlExemplareVorher + i, ISBN = buchVorher.ISBN, Verfügbarkeit = true }; bibContext.Exemplar.Add(exemplar); } } // Fall: Die Anzahl der Exemplare wurde verringert if (anzahlExemplareVorher > buch.AnzahlExemplare) { var differenz = anzahlExemplareVorher - buch.AnzahlExemplare; for (int i = 0; i < differenz; i++) { var exemplar = await bibContext.Exemplar.SingleOrDefaultAsync(e => e.ISBN == buchVorher.ISBN && e.ExemplarId == anzahlExemplareVorher - i); if (!exemplar.Verfügbarkeit) // Fall: Exemplar noch verliehen { toastNotification.AddToastMessage("Exemplar noch verliehen", "Das Exemplar ist noch verliehen und kann daher nicht gelöscht werden!", ToastEnums.ToastType.Error, new ToastOption() { PositionClass = ToastPositions.TopCenter }); return(RedirectToAction(nameof(Edit))); } else { bibContext.Exemplar.Remove(exemplar); } } } var warenkorbExemplare = bibContext.Warenkorb.Where(w => w.BuchTitel.Equals(buchVorher.Titel)); foreach (var exemplar in warenkorbExemplare) { exemplar.BuchTitel = buch.Titel; bibContext.Update(exemplar); } var leihauftraege = bibContext.Leihauftrag.Where(w => w.BuchTitel.Equals(buchVorher.Titel)); foreach (var leihauftrag in leihauftraege) { leihauftrag.BuchTitel = buch.Titel; bibContext.Update(leihauftrag); } bibContext.Update(buch); await bibContext.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { throw; } toastNotification.AddToastMessage("Buch geändert", "Das Buch \"" + buch.Titel + "\" wurde geändert!", ToastEnums.ToastType.Success, new ToastOption() { PositionClass = ToastPositions.TopCenter }); return(RedirectToAction(nameof(Index))); } return(View(buch)); }
// Füllt die Datenbank mit Testdaten public async Task Initialize() { string[] roleNames = { "Admin", "Member" }; // Erstelle alle Benutzer-Rollen foreach (var roleName in roleNames) { var roleExist = await roleManager.RoleExistsAsync(roleName); if (!roleExist) { await roleManager.CreateAsync(new IdentityRole(roleName)); } } // Erstelle alle Benutzer if (!bibContext.Benutzer.Any()) { var poweruser = new Benutzer { UserName = "******", Email = "*****@*****.**", Role = "Admin" }; var testuser = new Benutzer { UserName = "******", Email = "*****@*****.**", Role = "Member" }; var user1 = new Benutzer { UserName = "******", Email = "*****@*****.**", Role = "Member" }; var user2 = new Benutzer { UserName = "******", Email = "hans.mü[email protected]", Role = "Member" }; var user3 = new Benutzer { UserName = "******", Email = "*****@*****.**", Role = "Member" }; var user4 = new Benutzer { UserName = "******", Email = "*****@*****.**", Role = "Member" }; var user5 = new Benutzer { UserName = "******", Email = "*****@*****.**", Role = "Member" }; string userPWD = "Test123!"; var powerUserTest = await userManager.FindByEmailAsync("*****@*****.**"); var testUserTest = await userManager.FindByEmailAsync("*****@*****.**"); var user1Test = await userManager.FindByEmailAsync("*****@*****.**"); var user2Test = await userManager.FindByEmailAsync("hans.mü[email protected]"); var user3Test = await userManager.FindByEmailAsync("*****@*****.**"); var user4Test = await userManager.FindByEmailAsync("*****@*****.**"); var user5Test = await userManager.FindByEmailAsync("*****@*****.**"); if (powerUserTest == null) { var createPowerUser = await userManager.CreateAsync(poweruser, userPWD); if (createPowerUser.Succeeded) { await userManager.AddToRoleAsync(poweruser, "Admin"); } } if (testUserTest == null) { var createTestUser = await userManager.CreateAsync(testuser, userPWD); if (createTestUser.Succeeded) { await userManager.AddToRoleAsync(testuser, "Member"); } } if (user1Test == null) { var createUser1 = await userManager.CreateAsync(user1, userPWD); if (createUser1.Succeeded) { await userManager.AddToRoleAsync(user1, "Member"); } } if (user2Test == null) { var createUser2 = await userManager.CreateAsync(user2, userPWD); if (createUser2.Succeeded) { await userManager.AddToRoleAsync(user2, "Member"); } } if (user3Test == null) { var createUser3 = await userManager.CreateAsync(user3, userPWD); if (createUser3.Succeeded) { await userManager.AddToRoleAsync(user3, "Member"); } } if (user4Test == null) { var createUser4 = await userManager.CreateAsync(user4, userPWD); if (createUser4.Succeeded) { await userManager.AddToRoleAsync(user4, "Member"); } } if (user5Test == null) { var createUser5 = await userManager.CreateAsync(user5, userPWD); if (createUser5.Succeeded) { await userManager.AddToRoleAsync(user5, "Member"); } } } // Alle Bücher erstellen if (!bibContext.Buch.Any()) { var buecher = new Buch[] { new Buch { ISBN = "978-3470430287", Titel = "Kompendium Wirtschaftsrecht", Autor = "Brunhilde Steckler, Dimitra Tekidou-Kühlke", Erscheinungsjahr = 2016, Regal = 4, Reihe = 1, Verlag = "NWB", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3933070661", Titel = "Andersens Märchen", Autor = "Hans Christian Andersen", Erscheinungsjahr = 2007, Regal = 1, Reihe = 2, Verlag = "Edition Lempers ", AnzahlExemplare = 3 }, new Buch { ISBN = "978-3866471788", Titel = "Stolz und Vorurteil", Autor = "Jane Austen", Erscheinungsjahr = 2007, Regal = 4, Reihe = 1, Verlag = "Anaconda", AnzahlExemplare = 1 }, new Buch { ISBN = "978-3596900732", Titel = "Vater Goriot", Autor = "Honoré de Balzac", Erscheinungsjahr = 2008, Regal = 22, Reihe = 3, Verlag = "Fischer", AnzahlExemplare = 4 }, new Buch { ISBN = "978-3866473720", Titel = "Das Dekameron", Autor = "Giovanni Boccaccio", Erscheinungsjahr = 2009, Regal = 6, Reihe = 2, Verlag = "Anaconda", AnzahlExemplare = 5 }, new Buch { ISBN = "978-3518456729", Titel = "Drei Romane. Molloy. Malone stirbt. Der Namenlose", Autor = "Samuel Beckett", Erscheinungsjahr = 2005, Regal = 10, Reihe = 4, Verlag = "Suhrkamp", AnzahlExemplare = 1 }, new Buch { ISBN = "978-3499221897", Titel = "Der Fremde", Autor = "Albert Camus", Erscheinungsjahr = 1996, Regal = 13, Reihe = 2, Verlag = "Rowohlt", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3518456651", Titel = "Die Gedichte. Kommentierte Gesamtausgabe", Autor = "Paul Celan", Erscheinungsjahr = 2005, Regal = 15, Reihe = 3, Verlag = "Suhrkamp", AnzahlExemplare = 3 }, new Buch { ISBN = "978-3499236587", Titel = "Reise ans Ende der Nacht", Autor = "Louis-Ferdinand Céline", Erscheinungsjahr = 2004, Regal = 14, Reihe = 2, Verlag = "Rowohlt", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3491960831", Titel = "Don Quijote", Autor = "Miguel de Cervantes", Erscheinungsjahr = 2004, Regal = 16, Reihe = 4, Verlag = "Albatros", AnzahlExemplare = 5 }, new Buch { ISBN = "978-3866472174", Titel = "Die Canterbury-Erzählungen", Autor = "Geoffrey Chaucer", Erscheinungsjahr = 2008, Regal = 17, Reihe = 3, Verlag = "Anaconda", AnzahlExemplare = 3 }, new Buch { ISBN = "978-3423126489", Titel = "Nostromo", Autor = "Joseph Conrad", Erscheinungsjahr = 1999, Regal = 19, Reihe = 1, Verlag = "DTV", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3150007969", Titel = "Die Göttliche Komödie", Autor = "Dante Alighieri", Erscheinungsjahr = 1986, Regal = 20, Reihe = 2, Verlag = "Reclam", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3150015629", Titel = "Grosse Erwartungen", Autor = "Charles Dickens", Erscheinungsjahr = 1993, Regal = 4, Reihe = 1, Verlag = "Reclam", AnzahlExemplare = 1 }, new Buch { ISBN = "978-3150093351", Titel = "Jacques der Fatalist und sein Herr", Autor = "Denis Diderot", Erscheinungsjahr = 1972, Regal = 4, Reihe = 1, Verlag = "Reclam", AnzahlExemplare = 1 }, new Buch { ISBN = "978-3423002950", Titel = "Berlin Alexanderplatz: Die Geschichte vom Franz Biberkopf", Autor = "Alfred Döblin", Erscheinungsjahr = 2002, Regal = 22, Reihe = 4, Verlag = "DTV", AnzahlExemplare = 4 }, new Buch { ISBN = "978-3596129973", Titel = "Verbrechen und Strafe", Autor = "Fjodor M. Dostojewskij", Erscheinungsjahr = 1996, Regal = 3, Reihe = 3, Verlag = "Fischer", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3492253420", Titel = "Die Dämonen", Autor = "Fjodor M. Dostojewski", Erscheinungsjahr = 2008, Regal = 2, Reihe = 1, Verlag = "Piper", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3596135103", Titel = "Der Idiot", Autor = "Fjodor M. Dostojewskij", Erscheinungsjahr = 1998, Regal = 10, Reihe = 3, Verlag = "Fischer", AnzahlExemplare = 1 }, new Buch { ISBN = "978-3491961234", Titel = "Die Brüder Karamasow", Autor = "Fjodor M. Dostojewskij", Erscheinungsjahr = 2004, Regal = 5, Reihe = 3, Verlag = "Patmos", AnzahlExemplare = 3 }, new Buch { ISBN = "978-3717580027", Titel = "Middlemarch", Autor = "George Eliot", Erscheinungsjahr = 1962, Regal = 6, Reihe = 2, Verlag = "Manesse", AnzahlExemplare = 4 }, new Buch { ISBN = "978-3499138782", Titel = "Der unsichtbare Mann", Autor = "Ralph Ellison", Erscheinungsjahr = 1998, Regal = 7, Reihe = 3, Verlag = "Rowohlt", AnzahlExemplare = 3 }, new Buch { ISBN = "978-3150079782", Titel = "Medea: Griech. / Dt. ", Autor = "Euripides", Erscheinungsjahr = 1986, Regal = 8, Reihe = 4, Verlag = "Reclam", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3257207217", Titel = "Madame Bovary: Sitten der Provinz", Autor = "Gustave Flaubert", Erscheinungsjahr = 2005, Regal = 10, Reihe = 3, Verlag = "Diogenes", AnzahlExemplare = 1 }, new Buch { ISBN = "978-3518223567", Titel = "Zigeunerromanzen: Primer romancero gitano", Autor = "Federico García Lorca", Erscheinungsjahr = 2002, Regal = 14, Reihe = 1, Verlag = "Suhrkamp", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3596509812", Titel = "Hundert Jahre Einsamkeit", Autor = "Gabriel García Márquez", Erscheinungsjahr = 2007, Regal = 11, Reihe = 2, Verlag = "Fischer", AnzahlExemplare = 3 }, new Buch { ISBN = "978-3596510214", Titel = "Die Liebe in den Zeiten der Cholera", Autor = "Gabriel García Márquez", Erscheinungsjahr = 2007, Regal = 15, Reihe = 4, Verlag = "Fischer", AnzahlExemplare = 4 }, new Buch { ISBN = "978-3423124003", Titel = "Faust: Eine Tragödie (Erster und zweiter Teil)", Autor = "Johann Wolfgang von Goethe", Erscheinungsjahr = 1997, Regal = 15, Reihe = 4, Verlag = "Deutscher Taschenbuch Verlag", AnzahlExemplare = 5 }, new Buch { ISBN = "978-3866471757", Titel = "Die toten Seelen", Autor = "Nikolaj Gogol", Erscheinungsjahr = 2007, Regal = 8, Reihe = 2, Verlag = "Anaconda", AnzahlExemplare = 4 }, new Buch { ISBN = "978-3423118217", Titel = "Die Blechtrommel", Autor = "Günter Grass", Erscheinungsjahr = 1993, Regal = 14, Reihe = 4, Verlag = "DTV", AnzahlExemplare = 3 }, new Buch { ISBN = "978-3425855625", Titel = "Grande Sertão", Autor = "João Guimarães Rosa", Erscheinungsjahr = 1964, Regal = 14, Reihe = 2, Verlag = "Kiepenheuer & Witsch", AnzahlExemplare = 1 }, new Buch { ISBN = "978-3423252997", Titel = "Hunger", Autor = "Knut Hamsun", Erscheinungsjahr = 2009, Regal = 18, Reihe = 3, Verlag = "Deutscher Taschenbuch Verlag", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3499226014", Titel = "Der alte Mann und das Meer", Autor = "Ernest Hemingway", Erscheinungsjahr = 2012, Regal = 19, Reihe = 2, Verlag = "Rowohlt", AnzahlExemplare = 1 }, new Buch { ISBN = "978-3423130004", Titel = "Ilias · Odyssee", Autor = "Homer", Erscheinungsjahr = 2002, Regal = 20, Reihe = 4, Verlag = "dtv Verlagsgesellschaft", AnzahlExemplare = 1 }, new Buch { ISBN = "978-3596900473", Titel = "Nora oder Ein Puppenheim", Autor = "Henrik Ibsen", Erscheinungsjahr = 2008, Regal = 21, Reihe = 4, Verlag = "Fischer", AnzahlExemplare = 1 }, new Buch { ISBN = "978-3938484777", Titel = "Der Prozess", Autor = "Franz Kafka", Erscheinungsjahr = 2006, Regal = 9, Reihe = 3, Verlag = "Anaconda", AnzahlExemplare = 1 }, new Buch { ISBN = "978-3866471061", Titel = "Das Schloß", Autor = "Franz Kafka", Erscheinungsjahr = 2007, Regal = 7, Reihe = 2, Verlag = "Anaconda", AnzahlExemplare = 1 }, new Buch { ISBN = "978-3250104650", Titel = "Sakuntala - Ein Drama in sieben Akten", Autor = "Kalidasa", Erscheinungsjahr = 2004, Regal = 4, Reihe = 1, Verlag = "Ammann", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3423112970", Titel = "Ein Kirschbaum im Winter", Autor = "Yasunari Kawabata", Erscheinungsjahr = 1990, Regal = 7, Reihe = 3, Verlag = "Deutscher Taschenbuch Verlag", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3866472976", Titel = "Alexis Sorbas", Autor = "Nikos Kazantzakis", Erscheinungsjahr = 2008, Regal = 2, Reihe = 4, Verlag = "Anaconda", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3499142123", Titel = "Söhne und Liebhaber", Autor = "D. H. Lawrence", Erscheinungsjahr = 1967, Regal = 3, Reihe = 1, Verlag = "Rowohlt", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3882438581", Titel = "Sein eigener Herr", Autor = "Halldór Laxness", Erscheinungsjahr = 2002, Regal = 6, Reihe = 2, Verlag = "Steidl Göttingen", AnzahlExemplare = 4 }, new Buch { ISBN = "978-3596253968", Titel = "Das goldene Notizbuch", Autor = "Doris Lessing", Erscheinungsjahr = 1989, Regal = 12, Reihe = 3, Verlag = "Fischer", AnzahlExemplare = 4 }, new Buch { ISBN = "978-3789129445", Titel = "Pippi Langstrumpf", Autor = "Astrid Lindgren", Erscheinungsjahr = 1987, Regal = 16, Reihe = 2, Verlag = "Oetinger Verlag", AnzahlExemplare = 4 }, new Buch { ISBN = "978-3293004085", Titel = "Das trunkene Land: Erzählungen", Autor = "Lu Xun", Erscheinungsjahr = 2009, Regal = 18, Reihe = 2, Verlag = "Unionsverlag", AnzahlExemplare = 4 }, new Buch { ISBN = "978-3293200500", Titel = "Die Kinder unseres Viertels", Autor = "Nagib Machfus, Naguib Mahfouz", Erscheinungsjahr = 2006, Regal = 19, Reihe = 3, Verlag = "Unionsverlag", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3596294312", Titel = "Buddenbrooks. Verfall einer Familie", Autor = "Thomas Mann", Erscheinungsjahr = 2008, Regal = 20, Reihe = 2, Verlag = "Fischer", AnzahlExemplare = 3 }, new Buch { ISBN = " 978-3596294336", Titel = "Der Zauberberg", Autor = "Thomas Mann", Erscheinungsjahr = 1991, Regal = 5, Reihe = 1, Verlag = "Fischer", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3800054794", Titel = "Moby Dick", Autor = "Herman Melville", Erscheinungsjahr = 2009, Regal = 6, Reihe = 2, Verlag = "Ueberreuter", AnzahlExemplare = 1 }, new Buch { ISBN = "978-3938484401", Titel = "Die Essais", Autor = "Michel de Montaigne", Erscheinungsjahr = 2005, Regal = 7, Reihe = 3, Verlag = "Anaconda", AnzahlExemplare = 1 }, new Buch { ISBN = "978-3492245647", Titel = "La Storia", Autor = "Elsa Morante", Erscheinungsjahr = 2005, Regal = 8, Reihe = 4, Verlag = "Piper", AnzahlExemplare = 5 }, new Buch { ISBN = "978-3499244209", Titel = "Menschenkind", Autor = "Toni Morrison", Erscheinungsjahr = 2007, Regal = 9, Reihe = 1, Verlag = "Rowohlt", AnzahlExemplare = 6 }, new Buch { ISBN = "978-3458333593", Titel = "Die Geschichte vom Prinzen Genji", Autor = "Murasaki", Erscheinungsjahr = 1994, Regal = 10, Reihe = 2, Verlag = "Insel", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3499134623", Titel = "Der Mann ohne Eigenschaften I: Erstes und Zweites Buch", Autor = "Robert Musil", Erscheinungsjahr = 1994, Regal = 11, Reihe = 3, Verlag = "Rowohlt", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3499225437", Titel = "Lolita", Autor = "Vladimir Nabokov", Erscheinungsjahr = 1999, Regal = 3, Reihe = 1, Verlag = "Rowohlt", AnzahlExemplare = 3 }, new Buch { ISBN = "978-3938484074", Titel = "Metamorphosen", Autor = "Ovid", Erscheinungsjahr = 2005, Regal = 4, Reihe = 1, Verlag = "Anaconda", AnzahlExemplare = 4 }, new Buch { ISBN = "978-3250250029", Titel = "Das Buch der Unruhe", Autor = "Fernando Pessoa", Erscheinungsjahr = 2008, Regal = 13, Reihe = 1, Verlag = "Ammann", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3458069164", Titel = "Sämtliche Erzählungen in vier Bänden", Autor = "Edgar Allan Poe", Erscheinungsjahr = 2008, Regal = 14, Reihe = 3, Verlag = "Insel", AnzahlExemplare = 4 }, new Buch { ISBN = "978-3518397091", Titel = "Auf der Suche nach der verlorenen Zeit", Autor = "Marcel Proust", Erscheinungsjahr = 2000, Regal = 18, Reihe = 3, Verlag = "Suhrkamp", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3446230668", Titel = "Pedro Páramo", Autor = "Juan Rulfo", Erscheinungsjahr = 2008, Regal = 16, Reihe = 4, Verlag = "Carl Hanser", AnzahlExemplare = 3 }, new Buch { ISBN = "978-3906005027", Titel = "Das Masnavi: Erstes Buch", Autor = "Moulana Jalaluddin Rumi", Erscheinungsjahr = 2012, Regal = 14, Reihe = 3, Verlag = "Edition Shershir", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3499238321", Titel = "Mitternachtskinder", Autor = "Salman Rushdie", Erscheinungsjahr = 2005, Regal = 3, Reihe = 1, Verlag = "Rowohlt", AnzahlExemplare = 3 }, new Buch { ISBN = "978-0141187204", Titel = "Season of Migration to the North", Autor = "Tayeb Salih", Erscheinungsjahr = 2003, Regal = 16, Reihe = 2, Verlag = "Penguin Classics", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3499224676", Titel = "Die Stadt der Blinden", Autor = "José Saramago", Erscheinungsjahr = 1999, Regal = 13, Reihe = 4, Verlag = "Rowohlt", AnzahlExemplare = 4 }, new Buch { ISBN = "978-3704321206", Titel = "Krieg und Frieden", Autor = "Leo N Tolstoi", Erscheinungsjahr = 2005, Regal = 20, Reihe = 4, Verlag = "Neuer Kaiser", AnzahlExemplare = 3 }, new Buch { ISBN = "978-3491961968", Titel = "Anna Karenina", Autor = "Leo N. Tolstoi", Erscheinungsjahr = 2007, Regal = 3, Reihe = 1, Verlag = "Patmos", AnzahlExemplare = 4 }, new Buch { ISBN = "978-3821807331", Titel = "Leben und Ansichten von Tristram Shandy, Gentleman", Autor = "Laurence Sterne", Erscheinungsjahr = 2006, Regal = 21, Reihe = 1, Verlag = "Anaconda", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3499134852", Titel = "Zeno Cosini", Autor = "Italo Svevo", Erscheinungsjahr = 1990, Regal = 5, Reihe = 2, Verlag = "Rowohlt", AnzahlExemplare = 3 }, new Buch { ISBN = "978-3458347583", Titel = "Gullivers Reisen", Autor = "Jonathan Swift", Erscheinungsjahr = 2004, Regal = 12, Reihe = 2, Verlag = "Insel", AnzahlExemplare = 3 }, new Buch { ISBN = "978-3458341277", Titel = "Der Tod des Iwan Iljitsch", Autor = "Lew Tolstoj", Erscheinungsjahr = 2002, Regal = 13, Reihe = 3, Verlag = "Insel", AnzahlExemplare = 4 }, new Buch { ISBN = "978-3257217025", Titel = "Meistererzählungen", Autor = "Anton Cechov, Anton Tschechow", Erscheinungsjahr = 2000, Regal = 4, Reihe = 1, Verlag = "Diogenes", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3899055788", Titel = "Tausend und eine Nacht", Autor = "K.A.", Erscheinungsjahr = 2007, Regal = 4, Reihe = 1, Verlag = "ADAC", AnzahlExemplare = 3 }, new Buch { ISBN = "978-3866471771", Titel = "Die Abenteuer des Huckleberry Finn", Autor = "Mark Twain, Samuel Clemens", Erscheinungsjahr = 2007, Regal = 4, Reihe = 1, Verlag = "Anaconda", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3938484081", Titel = "Aeneis", Autor = "Vergil", Erscheinungsjahr = 2005, Regal = 4, Reihe = 1, Verlag = "Anaconda", AnzahlExemplare = 3 }, new Buch { ISBN = "978-3257213515", Titel = "Grashalme", Autor = "Walt Whitman", Erscheinungsjahr = 1985, Regal = 4, Reihe = 1, Verlag = "Diogenes", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3596140022", Titel = "Mrs Dalloway", Autor = "Virginia Woolf", Erscheinungsjahr = 1997, Regal = 4, Reihe = 1, Verlag = "Fischer", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3648065174", Titel = "Agiles Projektmanagement: Scrum, Use Cases, Task Boards & Co.", Autor = "Jörg Preußig", Erscheinungsjahr = 2015, Regal = 4, Reihe = 1, Verlag = "Haufe Lexware", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3864902611", Titel = "Scrum - verstehen und erfolgreich einsetzen", Autor = "Stefan Roock,Henning Wolf", Erscheinungsjahr = 2015, Regal = 4, Reihe = 1, Verlag = "dpunkt", AnzahlExemplare = 1 }, new Buch { ISBN = "978-3648073278", Titel = "Projektmanagement", Autor = "Hans-D. Litke,Ilonka Kunow,Heinz Schulz-Wimmer", Erscheinungsjahr = 2015, Regal = 4, Reihe = 1, Verlag = "CreateSpace", AnzahlExemplare = 4 }, new Buch { ISBN = "978-3636012913", Titel = "Überleben im Projekt", Autor = "Klaus D. Tumuscheit", Erscheinungsjahr = 2007, Regal = 15, Reihe = 4, Verlag = "Redline", AnzahlExemplare = 5 }, new Buch { ISBN = "978-3658082833", Titel = "Intensivtraining Projektmanagement", Autor = "Walter Jakoby", Erscheinungsjahr = 2015, Regal = 12, Reihe = 6, Verlag = "van Ons", AnzahlExemplare = 3 }, new Buch { ISBN = "978-3895784538", Titel = "Tools für Projektmanagement, Workshops und Consulting", Autor = "Nicolai Andler", Erscheinungsjahr = 2015, Regal = 17, Reihe = 3, Verlag = "van Ons", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3000543401", Titel = "PROJEKT-INSZENATOR", Autor = "Alexander Mereien", Erscheinungsjahr = 2017, Regal = 4, Reihe = 1, Verlag = "van Ons", AnzahlExemplare = 1 }, new Buch { ISBN = "978-3636012050", Titel = "Projektcontrolling leicht gemacht", Autor = "Ulrich Ch Füting, Ingo Hahn", Erscheinungsjahr = 2005, Regal = 15, Reihe = 2, Verlag = "REDLINE", AnzahlExemplare = 1 }, new Buch { ISBN = "978-3446447974", Titel = "Projektmanagement mit Excel", Autor = "Ignatz Schels, Uwe M. Seidel", Erscheinungsjahr = 2016, Regal = 8, Reihe = 3, Verlag = "Carl Hanser", AnzahlExemplare = 4 }, new Buch { ISBN = "978-3446440746", Titel = "Handbuch IT-Projektmanagement", Autor = "Ernst Tiemeyer", Erscheinungsjahr = 2014, Regal = 9, Reihe = 3, Verlag = "Carl Hanser", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3110335286", Titel = "Wirtschaftsinformatik", Autor = "Hans Robert Hansen", Erscheinungsjahr = 2015, Regal = 11, Reihe = 1, Verlag = "De Gruyter Oldenbourg", AnzahlExemplare = 3 }, new Buch { ISBN = "978-3849700881", Titel = "Einführung in die Teamarbeit", Autor = "Cornelia Edding,Karl Schattenhofer", Erscheinungsjahr = 2015, Regal = 14, Reihe = 3, Verlag = "Carl-Auer", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3658098025", Titel = "Marketing: Grundlagen für Studium und Praxis", Autor = "Manfred Bruhn", Erscheinungsjahr = 2016, Regal = 19, Reihe = 3, Verlag = "Springer Gabler", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3658136550", Titel = "Marketingmanagement", Autor = "Christian Homburg", Erscheinungsjahr = 2016, Regal = 10, Reihe = 4, Verlag = "Springer Gabler", AnzahlExemplare = 4 }, new Buch { ISBN = "978-3658086886", Titel = "Kundenzufriedenheit", Autor = "Christian Homburg", Erscheinungsjahr = 2015, Regal = 18, Reihe = 1, Verlag = "Springer Gabler", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3642371158", Titel = "Erfolgsfaktor Kundenzufriedenheit", Autor = "Hansjörg Künzel", Erscheinungsjahr = 2013, Regal = 7, Reihe = 2, Verlag = "Springer Gabler", AnzahlExemplare = 3 }, new Buch { ISBN = "978-1539744986", Titel = "Online-Marketing-Konzeption - 2017", Autor = "Erwin Lammenett", Erscheinungsjahr = 2017, Regal = 4, Reihe = 1, Verlag = "CreateSpace", AnzahlExemplare = 4 }, new Buch { ISBN = "978-3658154936", Titel = "Praxiswissen Online-Marketing", Autor = "Erwin Lammenett", Erscheinungsjahr = 2017, Regal = 16, Reihe = 2, Verlag = "Springer Gabler", AnzahlExemplare = 2 }, new Buch { ISBN = "978-3658163785", Titel = "Grundkurs Wirtschaftsinformatik", Autor = "Dietmar Abts, Wilhelm Mülder", Erscheinungsjahr = 2017, Regal = 6, Reihe = 1, Verlag = "Springer Vieweg", AnzahlExemplare = 8 }, new Buch { ISBN = "978-3834800022", Titel = "Masterkurs Wirtschaftsinformatik", Autor = "Dietmar Abts, Wilhelm Mülder", Erscheinungsjahr = 2009, Regal = 4, Reihe = 1, Verlag = "Vieweg+Teubner", AnzahlExemplare = 6 }, }; // Erstelle die zugehörigen Exemplare foreach (Buch buch in buecher) { bibContext.Buch.Add(buch); for (int i = 1; i <= buch.AnzahlExemplare; i++) { var exemplar = new Exemplar { ExemplarId = i, ISBN = buch.ISBN, Verfügbarkeit = true }; bibContext.Exemplar.Add(exemplar); } } await bibContext.SaveChangesAsync(); // Erstelle Leihaufträge if (!bibContext.Leihauftrag.Any()) { // 1. Buch verleihen var buch1 = bibContext.Buch.SingleOrDefault(e => e.ISBN.Equals("978-3648073278")); var exemplar1 = bibContext.Exemplar.SingleOrDefault(e => e.ISBN.Equals("978-3648073278") && e.ExemplarId == 1); var leihauftrag1 = new Leihauftrag { Benutzer = "member", ISBN = exemplar1.ISBN, BuchTitel = buch1.Titel, ExemplarId = exemplar1.ExemplarId, IstVerliehen = true }; bibContext.Leihauftrag.Add(leihauftrag1); exemplar1.Verfügbarkeit = false; exemplar1.EntliehenBis = DateTime.Now.AddDays(-2); bibContext.Exemplar.Update(exemplar1); // 2. Buch verleihen var buch2 = bibContext.Buch.SingleOrDefault(e => e.ISBN.Equals("978-3864902611")); var exemplar2 = bibContext.Exemplar.SingleOrDefault(e => e.ISBN.Equals("978-3864902611") && e.ExemplarId == 1); var leihauftrag2 = new Leihauftrag { Benutzer = "member", ISBN = exemplar2.ISBN, BuchTitel = buch2.Titel, ExemplarId = exemplar2.ExemplarId, IstVerliehen = true }; bibContext.Leihauftrag.Add(leihauftrag2); exemplar2.Verfügbarkeit = false; exemplar2.EntliehenBis = DateTime.Now.AddDays(5); bibContext.Exemplar.Update(exemplar2); // 3. Buch verleihen var buch3 = bibContext.Buch.SingleOrDefault(e => e.ISBN.Equals("978-3938484081")); var exemplar3 = bibContext.Exemplar.SingleOrDefault(e => e.ISBN.Equals("978-3938484081") && e.ExemplarId == 1); var leihauftrag3 = new Leihauftrag { Benutzer = "misch001", ISBN = exemplar3.ISBN, BuchTitel = buch3.Titel, ExemplarId = exemplar3.ExemplarId, IstVerliehen = true }; bibContext.Leihauftrag.Add(leihauftrag3); exemplar3.Verfügbarkeit = false; exemplar3.EntliehenBis = DateTime.Now.AddDays(15); bibContext.Exemplar.Update(exemplar3); // 4. Buch verleihen var buch4 = bibContext.Buch.SingleOrDefault(e => e.ISBN.Equals("978-3596135103")); var exemplar4 = bibContext.Exemplar.SingleOrDefault(e => e.ISBN.Equals("978-3596135103") && e.ExemplarId == 1); var leihauftrag4 = new Leihauftrag { Benutzer = "misch001", ISBN = exemplar4.ISBN, BuchTitel = buch4.Titel, ExemplarId = exemplar4.ExemplarId, IstVerliehen = true }; bibContext.Leihauftrag.Add(leihauftrag4); exemplar4.Verfügbarkeit = false; exemplar4.EntliehenBis = DateTime.Now.AddDays(4); bibContext.Exemplar.Update(exemplar4); // 5. Buch verleihen var buch5 = bibContext.Buch.SingleOrDefault(e => e.ISBN.Equals("978-3866472976")); var exemplar5 = bibContext.Exemplar.SingleOrDefault(e => e.ISBN.Equals("978-3866472976") && e.ExemplarId == 1); var leihauftrag5 = new Leihauftrag { Benutzer = "readl001", ISBN = exemplar5.ISBN, BuchTitel = buch5.Titel, ExemplarId = exemplar5.ExemplarId, IstVerliehen = true }; bibContext.Leihauftrag.Add(leihauftrag5); exemplar5.Verfügbarkeit = false; exemplar5.EntliehenBis = DateTime.Now.AddDays(-4); bibContext.Exemplar.Update(exemplar5); // 6. Buch verleihen var buch6 = bibContext.Buch.SingleOrDefault(e => e.ISBN.Equals("978-3446440746")); var exemplar6 = bibContext.Exemplar.SingleOrDefault(e => e.ISBN.Equals("978-3446440746") && e.ExemplarId == 1); var leihauftrag6 = new Leihauftrag { Benutzer = "member", ISBN = exemplar6.ISBN, BuchTitel = buch6.Titel, ExemplarId = exemplar6.ExemplarId, IstVerliehen = true }; bibContext.Leihauftrag.Add(leihauftrag6); exemplar6.Verfügbarkeit = false; exemplar6.EntliehenBis = DateTime.Now.AddDays(28); bibContext.Exemplar.Update(exemplar6); // 7. Buch verleihen var buch7 = bibContext.Buch.SingleOrDefault(e => e.ISBN.Equals("978-3446447974")); var exemplar7 = bibContext.Exemplar.SingleOrDefault(e => e.ISBN.Equals("978-3446447974") && e.ExemplarId == 1); var leihauftrag7 = new Leihauftrag { Benutzer = "member", ISBN = exemplar7.ISBN, BuchTitel = buch7.Titel, ExemplarId = exemplar7.ExemplarId, IstVerliehen = true }; bibContext.Leihauftrag.Add(leihauftrag7); exemplar7.Verfügbarkeit = false; exemplar7.EntliehenBis = DateTime.Now.AddDays(26); bibContext.Exemplar.Update(exemplar7); } await bibContext.SaveChangesAsync(); } }