public ActionResult <IEnumerable <BevestigdeBestelling> > GetBestellingen([FromQuery] string status = null) { if (status == null) { return(_bestellingDataMapper.GetAll().ToList()); } Enum.TryParse <BffWebshopBestelStatus>(status, out var bestelStatus); return(_bestellingDataMapper.Find(b => b.BestelStatus == bestelStatus).ToList()); }
private void ProcessBestellingVerwerken(long klantnummer) { var bestellingen = _bestellingDataMapper.Find(b => b.Klantnummer == klantnummer && b.BestelStatus < BestelStatus.Betaald); decimal total = 0; DateTime dateTime = DateTime.Now; foreach (var bestelling in bestellingen) { total += bestelling.FactuurTotaalInclBtw; if (dateTime > bestelling.Besteldatum) { dateTime = bestelling.Besteldatum; } } var betalingen = _betalingDataMapper.Find(b => b.Klantnummer == klantnummer); var betaald = 0.0m; foreach (var betaling in betalingen) { if (betaling.BetaalDatum > dateTime) { betaald += betaling.Bedrag; } } if (total - betaald <= 500) { foreach (var item in bestellingen) { _eventPublisher.Publish(new BestellingGeaccrediteerdEvent(item.Factuurnummer, NameConstants.BetaalServiceBetalingGeaccrediteerdEvent)); } } }