예제 #1
0
 public Lagerposten(Guid lager, Guid produkt, LagerProjektion zustand, Action<Ereignis> eventsink)
     : base(eventsink)
 {
     _lager = lager;
     Produkt = produkt;
     _zustand = zustand;
 }
예제 #2
0
 private LagerbestandInfo LagerbestandInfo(Guid lager, Guid produkt, LagerProjektion projektor)
 {
     return new LagerbestandInfo()
     {
         Lager = lager,
         Produkt = produkt,
         Produktbezeichnung = _joinProdukte(produkt).Bezeichnung,
         LagerBestand = projektor.Lagerbestand(produkt),
         Nachbestellt = projektor.Nachbestellt(produkt),
         MengeImZulauf = projektor.MengeImZulauf(produkt),
         AutomatischeNachbestellungen = projektor.AutomatischeNachbestellungen(produkt)
     };
 }
예제 #3
0
 public List<LagerbestandInfo> Alle(Guid lager, List<Guid> produktIDs)
 {
     var history = _history(lager).ToList();
     var projektor = new LagerProjektion(() => history);
     return produktIDs.Select(produkt => LagerbestandInfo(lager, produkt, projektor)).ToList();
 }
예제 #4
0
 public LagerbestandInfo Access(Guid lager, Guid produkt)
 {
     var history = _history(lager).ToList();
     var projektor = new LagerProjektion(() => history);
     return LagerbestandInfo(lager, produkt, projektor);
 }