public void ReceiveBestelStatusBijgewerktEvent(BestelStatusBijgewerktEvent bestelStatusBijgewerktEvent)
        {
            var bestelling = _bestellingDataMapper.GetById(bestelStatusBijgewerktEvent.Bestelling.Id);

            bestelling.BestelStatus = (BestelStatus)Enum.ToObject(typeof(BestelStatus), (int)bestelStatusBijgewerktEvent.Bestelling.BestelStatus);

            _bestellingDataMapper.Update(bestelling);
        }
        public void HandleBetalingGeaccrediteerdEvent(BestellingGeaccrediteerdEvent message)
        {
            var bestelling = _bestellingDataMapper.GetByFactuurnummer(message.Factuurnummer);

            var status = bestelling.BestelStatus;

            bestelling.BestelStatus = status < BestelStatus.Betaald && status != BestelStatus.Verzonden
                ? BestelStatus.Goedgekeurd
                : BestelStatus.Afgerond;

            _bestellingDataMapper.Update(bestelling);

            var statusBijGewerktEvent = new BestelStatusBijgewerktEvent(bestelling, NameConstants.BestelServiceBestelStatusUpgedateEvent);

            _eventPublisher.Publish(statusBijGewerktEvent);
        }
Ejemplo n.º 3
0
        public void ReceiveUpdateBestelling_WithCompleteBestelling_ShouldUpdateBestelling()
        {
            // Arrange
            long bestellingId = 10;
            BevestigdeBestelling bestelling = new BevestigdeBestellingBuilder()
                                              .SetDummy()
                                              .SetId(bestellingId)
                                              .SetBestelRegels(new List <BevestigdeBestelRegel>
            {
                new BevestigdeBestelRegel
                {
                    PrijsExclBtw = 10m,
                    PrijsInclBtw = 10.10m
                }
            })
                                              .SetFactuurTotaalExclBtw(42m)
                                              .SetFactuurTotaalInclBtw(42.42m)
                                              .Create();

            var mock        = new Mock <IBestellingDataMapper>();
            var artikelMock = new Mock <IArtikelDataMapper>();

            BevestigdeBestelling result = null;

            mock.Setup(repo => repo.GetById(bestellingId)).Returns(bestelling);
            mock.Setup(repo => repo.Update(It.IsAny <BevestigdeBestelling>()))
            .Callback <BevestigdeBestelling>(b => result = b);

            var updatedBestelling = new DsBestelServiceBestelling {
                Id = bestellingId, BestelStatus = DsBestelServiceBestelStatus.Goedgekeurd
            };
            var eventmessage = new BestelStatusBijgewerktEvent(updatedBestelling, "");

            var listener = new EventListener(artikelMock.Object, null, mock.Object);

            // Act
            listener.ReceiveBestelStatusBijgewerktEvent(eventmessage);

            // Assert
            mock.VerifyAll();
            Assert.AreEqual(bestelling, result);
        }