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());
        }
Exemple #2
0
        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));
                }
            }
        }