public void EntferneKategorie(string kategorie) { if (String.IsNullOrWhiteSpace(kategorie)) { throw new ArtikelException("Kategorie darf nicht leer sein."); } if (!Kategorien.Any(k => k.Name.Equals(kategorie, StringComparison.InvariantCultureIgnoreCase))) { throw new ArtikelException("Kategorie existiert nicht"); } var evt = new ArtikelKategorieEntferntEvent() { TimeStamp = DateTime.UtcNow, Version = 1, Type = nameof(ArtikelKategorieEntferntEvent), AggregateId = ArtikelNummer, Kategorie = kategorie, }; ApplyEvent(evt); OnEventRaised(new EventRaisedEventArgs(evt)); }
public AdminI18nKategorienModel(int typId, int kategorieId, int kategorieArt) { using (GastroEntities _db = new GastroEntities()) { // 1 - Deutsch // 2 - Italienisch // 3 - Spanisch // 4 - Russisch // 5 - Englisch Kategorien all = (from Kategorien al in _db.Kategorien where al.id == kategorieId && al.Kategorieart == kategorieArt select al).FirstOrDefault(); Deutsch_Bezeichnung = all.Bezeichnung; liste = (from I18n i18n in _db.I18n where i18n.Typ == typId && i18n.AllergenId == kategorieId select i18n).ToList(); Englisch_Bezeichnung = (from I18n x in liste where x.SprachId == 5 select x.Bezeichnung).FirstOrDefault(); Englisch_Header = (from I18n x in liste where x.SprachId == 5 select x.Header).FirstOrDefault(); Englisch_Footer = (from I18n x in liste where x.SprachId == 5 select x.Footer).FirstOrDefault(); Italienisch_Bezeichnung = (from I18n x in liste where x.SprachId == 2 select x.Bezeichnung).FirstOrDefault(); Italienisch_Header = (from I18n x in liste where x.SprachId == 2 select x.Header).FirstOrDefault(); Italienisch_Footer = (from I18n x in liste where x.SprachId == 2 select x.Footer).FirstOrDefault(); Spanisch_Bezeichnung = (from I18n x in liste where x.SprachId == 3 select x.Bezeichnung).FirstOrDefault(); Spanisch_Header = (from I18n x in liste where x.SprachId == 3 select x.Header).FirstOrDefault(); Spanisch_Footer = (from I18n x in liste where x.SprachId == 3 select x.Footer).FirstOrDefault(); Russisch_Bezeichnung = (from I18n x in liste where x.SprachId == 4 select x.Bezeichnung).FirstOrDefault(); Russisch_Header = (from I18n x in liste where x.SprachId == 4 select x.Header).FirstOrDefault(); Russisch_Footer = (from I18n x in liste where x.SprachId == 4 select x.Footer).FirstOrDefault(); KategorieId = kategorieId; KategorieArt = kategorieArt; } }
private void Apply(ArtikelKategorieAngelegtEvent evt) { Kategorien.Add(new ArtikelKategorie() { Artikel = this, ArtikelNummer = ArtikelNummer, Name = evt.Kategorie }); }
/// <summary> /// Initialisiert die Datenbank mit dem Musterdatengenerator Bogus. /// Erfordert das NuGet Paket Bogus. /// </summary> public void Seed() { // Damit immer die gleichen Werte generiert werden, wird ein fixes Seed verwendet. Randomizer.Seed = new Random(201227); Faker f = new Faker(); var kategorien = (from k in f.Commerce.Categories(20).Distinct() select new Kategorie { Name = k }).Take(10).ToList(); Kategorien.AddRange(kategorien); SaveChanges(); var kunden = new Faker <Kunde>() .Rules((f, k) => { k.Vorname = f.Name.FirstName(); k.Zuname = f.Name.LastName(); k.Adresse = f.Address.StreetAddress(); k.Plz = f.Random.Int(1000, 9999); k.Ort = f.Address.City(); }) .Generate(20); Kunden.AddRange(kunden); SaveChanges(); var artikel = new Faker <Artikel>() .Rules((f, a) => { a.Ean = f.Commerce.Ean13(); a.Name = f.Commerce.ProductName(); a.Preis = Math.Round(f.Random.Decimal(10, 1000), 4); a.Hersteller = f.Company.CompanyName(); a.ProduziertAb = new DateTime(2018, 1, 1).AddDays(f.Random.Int(0, 2 * 365)); a.EingestelltAb = a.ProduziertAb.AddDays(f.Random.Int(100, 365)).OrNull(f, 0.5f); a.Kategorie = f.Random.ListItem(kategorien); }) .Generate(200).GroupBy(a => a.Name).Select(a => a.First()) .ToList(); Artikel.AddRange(artikel); SaveChanges(); var bestellungen = new Faker <Bestellung>() .Rules((f, b) => { b.Artikel = f.Random.ListItem(artikel); b.Kunde = f.Random.ListItem(kunden); b.Datum = b.Artikel.ProduziertAb.AddSeconds(f.Random.Long(0, 1L * 365 * 86400)); b.BezahltAm = b.Datum.AddSeconds(f.Random.Int(1 * 86400, 10 * 86400)).OrNull(f, 0.1f); b.Menge = f.Random.Int(1, 5); }).Generate(200); Bestellungen.AddRange(bestellungen); SaveChanges(); }
private void Apply(ArtikelKategorieEntferntEvent evt) { var kat = Kategorien.FirstOrDefault(k => k.Name.Equals(evt.Kategorie, StringComparison.InvariantCultureIgnoreCase)); if (kat != null) { Kategorien.Remove(kat); } }
public void AddCategoryToDatabase(Kategorien kategorien) { DAOKategorie dAOKategorie = new DAOKategorie(); var db = new SQLiteConnection(pathToDb); dAOKategorie.title = kategorien.titel; dAOKategorie.description = kategorien.beschreibung; db.Insert(dAOKategorie); }
private void Apply(ArtikelAngelegtEvent evt) { Bezeichnung = evt.Artikelbezeichnung; foreach (var kategorie in evt.Kategorien) { Kategorien.Add(new ArtikelKategorie() { ArtikelNummer = ArtikelNummer, Name = kategorie, Artikel = this }); } }
public void Seed() { Randomizer.Seed = new Random(3858); Faker f = new Faker("de"); var bundeslaender = new string[] { "N", "W", "B" }; var kunden = new Faker <Kunde>() .RuleFor(k => k.Vorname, f => f.Name.FirstName()) .RuleFor(k => k.Zuname, f => f.Name.LastName()) .RuleFor(k => k.Bundesland, f => f.Random.ListItem(bundeslaender)) .Generate(16) .ToList(); Kunden.AddRange(kunden); SaveChanges(); var kategorien = new Faker <Kategorie>() .RuleFor(k => k.Name, f => f.Commerce.ProductMaterial()) .Generate(4) .ToList(); Kategorien.AddRange(kategorien); SaveChanges(); var artikel = new Faker <Artikel>() .RuleFor(a => a.EAN, f => f.Commerce.Ean13()) .RuleFor(a => a.Name, f => f.Commerce.ProductName()) .RuleFor(a => a.Preis, f => Math.Round(Math.Min(226, f.Random.GaussianDecimal(200, 30)), 2)) .RuleFor(a => a.Kategorie, f => f.Random.ListItem(kategorien)) .Generate(16) .ToList(); Artikel.AddRange(artikel); SaveChanges(); var bestellungen = new Faker <Bestellung>() .RuleFor(b => b.Datum, f => new DateTime(2020, 1, 1).AddSeconds(f.Random.Double(0, 20 * 86400))) .RuleFor(b => b.Kunde, f => f.Random.ListItem(kunden)) .Generate(64); Bestellungen.AddRange(bestellungen); var positionen = new Faker <Position>() .RuleFor(p => p.Bestellung, f => f.Random.ListItem(bestellungen)) .RuleFor(p => p.Artikel, f => f.Random.ListItem(artikel)) .RuleFor(p => p.Menge, f => f.Random.Int(1, 10)) .Generate(128); Positionen.AddRange(positionen); SaveChanges(); }
public Collection <Kategorien> getAllKategorien() { Collection <Kategorien> kategorien = new Collection <Kategorien>(); var db = new SQLiteConnection(pathToDb); var tableOfKategorien = db.Table <DAOKategorie>(); foreach (DAOKategorie daoKategorie in tableOfKategorien) { Kategorien newKategorie = new Kategorien(daoKategorie.title, daoKategorie.description); newKategorie.id = daoKategorie.Id; kategorien.Add(newKategorie); } return(kategorien); }
private void buttonSaveCategoryClicked(object sender, EventArgs e) { //Prüft ob alle Felder gefüllt sind if (entryCategoryTitel.Text != null && !entryCategoryTitel.Text.Trim().Equals("")) { if (entryCategoryTitel.Text.Length <= 50) { Kategorien categorie = new Kategorien(); categorie.titel = entryCategoryTitel.Text; categorie.beschreibung = entryCategoryDescribtion.Text; Kategorien.kategorien.Add(categorie); SQLiteHelper db = new SQLiteHelper(); db.AddCategoryToDatabase(categorie); Navigation.PushAsync(new MainPage()); } } }
public HomeGetränkeModel() { AlleKategorien = new List <KategorienFuerModel>(); using (GastroEntities _db = new GastroEntities()) { List <Kategorien> alleKategorien = KategorienHelper.LoadKategorien(2); List <Getränke> AlleGetränke = (from Getränke mt in _db.Getränke where mt.IstAktiv orderby mt.Sortierung ascending select mt).ToList(); foreach (Kategorien kat in alleKategorien) { KategorienFuerModel kfm = new KategorienFuerModel(); kfm.Kategorie = kat; kfm.SelectedKategorieHasChilds = (from Kategorien k in _db.Kategorien where k.Oberkategorie == kat.id select k).Any(); kfm.SelectedKategorieHasItems = (from Getränke mt in _db.Getränke where mt.KategorieId == kat.id select mt).Any(); bool checker = true; int levelCounter = 0; int oberkategorie = (int)kat.Oberkategorie; while (checker) { Kategorien _kat = (from Kategorien k in _db.Kategorien where k.id == oberkategorie select k).FirstOrDefault(); if (_kat != null) { levelCounter++; kfm.Level = levelCounter; oberkategorie = (int)_kat.Oberkategorie; } else { checker = false; } } AlleKategorien.Add(kfm); //Internationalisieren int sprachId = CultureHelper.GetCurrentCultureId(); if (sprachId != 1) { foreach (KategorienFuerModel all in AlleKategorien) { var element = (from I18n i18n in _db.I18n where i18n.Typ == 3 && i18n.AllergenId == all.Kategorie.id && i18n.SprachId == sprachId select i18n).FirstOrDefault(); if (element != null) { all.Kategorie.Bezeichnung = element.Bezeichnung; all.Kategorie.Header = element.Header; all.Kategorie.Footer = element.Footer; } } } List <Getränke> TempSpeisen = new List <Getränke>(); foreach (Getränke mt in AlleGetränke) { if (mt.KategorieId == kat.id) { //Internationalisieren var element = (from I18n i18n in _db.I18n where i18n.Typ == 2 && i18n.AllergenId == mt.id && i18n.SprachId == sprachId select i18n).FirstOrDefault(); if (element != null) { mt.Bezeichnung = element.Bezeichnung; mt.Ergänzung1 = element.Ergänzung1; mt.Ergänzung2 = element.Ergänzung2; } List <string> liste = (from AllergeneGetränkeIdSpeiseId amsid in _db.AllergeneGetränkeIdSpeiseId join Allergene al in _db.Allergene on amsid.aid equals al.id where amsid.sid == mt.id select al.Nummer).ToList(); StringBuilder sb = new StringBuilder(); string txt = ""; if (liste.Count > 0) { sb.Append("("); foreach (string item in liste) { sb.Append(item + ", "); } sb.Append(")"); txt = sb.ToString().Replace(", )", ")"); AllergeneZuSpeisen.Add(mt.id, txt); } TempSpeisen.Add(mt); } } AlleSpeisenZuDenKategorien.Add(kat.id, TempSpeisen); } } }
public static Collection <Fragen> getAllFragen() { Collection <Fragen> fragen = new Collection <Fragen>(); var db = new SQLiteConnection(pathToDb); var tableOfFragen = db.Table <DAOFrage>(); var tableOfAntworten = db.Table <DAOAntwort>(); var tableOfFrageAntwort = db.Table <DAOFrageAntwort>(); var tableOfFrageKategorie = db.Table <DAOFrageKategorie>(); var tableOfKategorien = db.Table <DAOKategorie>(); foreach (DAOFrage daoFrage in tableOfFragen) { Fragen newFrage = new Fragen(); //set id erstmal ausgelassen newFrage.setText(daoFrage.text); newFrage.setErklärung(daoFrage.explanation); newFrage.setId(daoFrage.Id); //add Antwort foreach (DAOAntwort daoAntwort in tableOfAntworten) { foreach (DAOFrageAntwort fa in tableOfFrageAntwort) { if (fa.FID == daoFrage.Id && fa.AID == daoAntwort.Id) { Antworten newAntwort = new Antworten(daoAntwort.text, daoAntwort.isCorrect); newFrage.setAntworten(newAntwort); } if (fa.id > DAOFrageAntwort.lastId) { DAOFrageAntwort.lastId = fa.id; } } if (daoAntwort.Id > DAOAntwort.lastId) { DAOAntwort.lastId = daoAntwort.Id; } } //add Kategorie foreach (DAOKategorie daoKategorie in tableOfKategorien) { foreach (DAOFrageKategorie fk in tableOfFrageKategorie) { if (fk.FID == daoFrage.Id && fk.KID == daoKategorie.Id) { Kategorien newKategorie = new Kategorien(daoKategorie.title, daoKategorie.description); newFrage.setKategorie(newKategorie); } if (fk.id > DAOFrageKategorie.lastId) { DAOFrageKategorie.lastId = fk.id; } } if (daoKategorie.Id > DAOKategorie.lastId) { DAOKategorie.lastId = daoKategorie.Id; } } if (newFrage.getId() > DAOFrage.lastId) { DAOFrage.lastId = newFrage.getId(); } fragen.Add(newFrage); } return(fragen); }
private void Apply(ArtikelGeloeschtEvent evt) { ArtikelNummer = -1; Bezeichnung = null; Kategorien.Clear(); }
internal void Seed() { Randomizer.Seed = new Random(8675309); Faker f = new Faker(); var kategorien = new List <Kategorie> { new Kategorie { Name = "Pizza" }, new Kategorie { Name = "Pasti" }, new Kategorie { Name = "Pesce" }, }; Kategorien.AddRange(kategorien); SaveChanges(); var produkte = new List <Produkt> { new Produkt { Name = "Marinara", Kategorie = kategorien[0], Preis = 5.00M }, new Produkt { Name = "Margherita", Kategorie = kategorien[0], Preis = 6.00M }, new Produkt { Name = "Cipolla", Kategorie = kategorien[0], Preis = 7.00M }, new Produkt { Name = "Alla Napoletana", Kategorie = kategorien[1], Preis = 6.50M }, new Produkt { Name = "All Arabiata", Kategorie = kategorien[1], Preis = 7.50M }, new Produkt { Name = "Alla Bolognese", Kategorie = kategorien[1], Preis = 7.50M }, new Produkt { Name = "Schollenfilet gebacken", Kategorie = kategorien[2], Preis = 9.50M }, new Produkt { Name = "Natur gebratenes Schollenfilet", Kategorie = kategorien[2], Preis = 9.50M }, new Produkt { Name = "Miesmuscheln", Kategorie = kategorien[2], Preis = 11.50M }, }; Produkte.AddRange(produkte); SaveChanges(); var liefergebiete = new List <Liefergebiet> { new Liefergebiet { Plz = 1040, Ort = "Wien", Lieferzuschlag = 5M }, new Liefergebiet { Plz = 1050, Ort = "Wien", Lieferzuschlag = 5M }, new Liefergebiet { Plz = 1060, Ort = "Wien", Lieferzuschlag = 5M }, new Liefergebiet { Plz = 1160, Ort = "Wien", Lieferzuschlag = 8M }, new Liefergebiet { Plz = 1170, Ort = "Wien", Lieferzuschlag = 8M }, new Liefergebiet { Plz = 1180, Ort = "Wien", Lieferzuschlag = 8M } }; Liefergebiete.AddRange(liefergebiete); SaveChanges(); var kunden = new List <Kunde> { new Kunde { Vorname = "Lukas", Zuname = "Müller", Email = "*****@*****.**" }, new Kunde { Vorname = "Konstantin", Zuname = "Schmidt", Email = "*****@*****.**" }, new Kunde { Vorname = "Ben", Zuname = "Schneider", Email = "*****@*****.**" }, new Kunde { Vorname = "Jonas", Zuname = "Fischer", Email = "*****@*****.**" }, new Kunde { Vorname = "Elias", Zuname = "Weber", Email = "*****@*****.**" }, new Kunde { Vorname = "Niklas", Zuname = "Meyer", Email = "*****@*****.**" }, new Kunde { Vorname = "David", Zuname = "Wagner", Email = "*****@*****.**" }, new Kunde { Vorname = "Oskar", Zuname = "Becker", Email = "*****@*****.**" }, new Kunde { Vorname = "Philipp", Zuname = "Schulz", Email = "*****@*****.**" } }; foreach (var k in f.Random.ListItems(kunden, (int)(0.8 * kunden.Count))) { var bestellungen = new Faker <Bestellung>().Rules((f, b) => { b.Adresse = f.Address.StreetAddress(); b.Liefergebiet = f.Random.ListItem(liefergebiete); b.Kunde = f.Random.ListItem(kunden); b.Bestellzeit = new DateTime(2020, 5, 1, 0, 0, 0).AddSeconds(f.Random.Int(0, 5 * 86400)); }).Generate(f.Random.Int(1, 3)); foreach (var b in bestellungen) { var produktBestellungen = new Faker <ProduktBestellung>().Rules((f, p) => { p.Menge = f.Random.Int(1, 3); p.Produkt = f.Random.ListItem(produkte); p.Bestellung = b; }).Generate(f.Random.Int(1, 5)); b.ProduktBestellungen = produktBestellungen .GroupBy(pb => new { pb.Bestellung, pb.Produkt }) .Select(g => g.FirstOrDefault()) .ToList(); } k.Bestellungen = bestellungen; } Kunden.AddRange(kunden); SaveChanges(); }