private void Handle(Command command, NachbestellungBeauftragen aktion) { var repo = new ProduktRepository(aktion.ProduktId, _eventStore); var produkt = repo.Retrieve(); produkt.Nachbestellen(aktion.BestellteMenge); repo.Commit(); }
private void Handle(Command command, WareneingangVerbuchen aktion) { var repo = new ProduktRepository(aktion.ProduktId, _eventStore); var produkt = repo.Retrieve(); produkt.Wareneingang(); repo.Commit(); }
private void Handle(Command command, ProduktEinlisten aktion) { var repo = new ProduktRepository(aktion.ProduktId, _eventStore); var produkt = repo.Retrieve(); produkt.Einlisten(aktion.Bezeichnung); repo.Commit(); }
private void Handle(Command command, AuftragAusfuehren aktion) { var repo = new AuftragRepository(aktion.AuftragId, _eventStore); var auftrag = repo.Retrieve(); var produktrepo = new ProduktRepository(auftrag.Produkt, _eventStore); auftrag.Ausfuehren(produktrepo.Retrieve()); produktrepo.Commit(); repo.Commit(); }
private void Handle(Command command, AuftragErfassen aktion) { var repo = new AuftragRepository(aktion.AuftragsId, _eventStore); var auftrag = repo.Retrieve(); var produktrepo = new ProduktRepository(aktion.Produkt, _eventStore); var kunderepo = new KundeRepository(aktion.Kunde, _eventStore); auftrag.Erfassen(produktrepo.Retrieve(), aktion.Menge, kunderepo.Retrieve()); produktrepo.Commit(); repo.Commit(); }
private void Handle(Command command, AutomatischeNachbestellungenDeaktivieren aktion) { var repo = new ProduktRepository(aktion.ProduktId, _eventStore); var produkt = repo.Retrieve(); produkt.AutomatischeNachbestellungenDeaktivieren(); repo.Commit(); }
private void Handle(Command command, MindestVerfuegbarkeitDefinieren aktion) { var repo = new ProduktRepository(aktion.ProduktId, _eventStore); var produkt = repo.Retrieve(); produkt.MindestVerfuegbarkeitDefinieren(aktion.MindestVerfuegbarkeit, aktion.MindestBestellmenge); repo.Commit(); }
private void Handle(CommandEnvelope commandEnvelope, ProduktEinlisten aktion, UnitOfWork unitOfWork) { var produkt = new ProduktRepository(unitOfWork).Retrieve(aktion.ProduktId); produkt.Einlisten(aktion.Bezeichnung); }
private void Handle(CommandEnvelope commandEnvelope, WarenkorbBestellen aktion, UnitOfWork unitOfWork) { var warenkorb = new WarenkorbRepository(unitOfWork).Retrieve(aktion.Warenkorb); var auftrags_repo = new AuftragRepository(unitOfWork); var produkt_repo = new ProduktRepository(unitOfWork); var kunde_repo = new KundeRepository(unitOfWork); warenkorb.Bestellen((produkt, menge, kunde) => { var id = Guid.NewGuid(); var auftrag = auftrags_repo.Retrieve(id); auftrag.Erfassen(id, produkt, menge, kunde_repo.Retrieve(kunde)); }); }