/// <summary> /// /// </summary> /// <param name="e"></param> public void HandlerApkEvent(ApkAfgemeldEvent e) { using (var context = new OnderhoudBeheerContext(_options)) using (var repository = new OnderhoudsopdrachtRepository(context)) { var opdracht = repository.Find(e.OnderhoudsBeurtId); OpdrachtStatus newState = e.HasSteekProef ? OpdrachtStatussen.Klaargemeld() : OpdrachtStatussen.Afgemeld(); opdracht.OpdrachtStatus = newState.StatusId; opdracht.OpdrachtStatusBeschrijving = newState.Beschrijving; repository.Update(opdracht); var updateEvent = new OnderhoudsopdrachtUpdatedEvent() { RoutingKey = "Minor.Case2.MaRoWo.OnderhoudsBeheer.OnderhoudsopdrachtUpdated", TimeStamp = DateTime.UtcNow, CorrelationID = Guid.NewGuid(), OnderhoudsBeurtId = opdracht.Id, HasApk = opdracht.HasApk, Kenteken = opdracht.Kenteken, Kilometerstand = opdracht.Kilometerstand, OnderhoudsBeschrijving = opdracht.OnderhoudsBeschrijving, OpdrachtAangemaakt = opdracht.OpdrachtAangemaakt, OpdrachtStatus = opdracht.OpdrachtStatus, OpdrachtStatusBeschrijving = opdracht.OpdrachtStatusBeschrijving, Bestuurder = opdracht.Bestuurder, TelefoonNrBestuurder = opdracht.TelefoonNrBestuurder }; _publisher.Publish(updateEvent); } }
public void OpdrachtStatusConstructorTest() { // Arrange var expectedStatusId = 1; var expectedBeschrijving = "Aangemeld"; // Act var opdrachtStatus = new OpdrachtStatus(expectedStatusId, expectedBeschrijving); // Assert Assert.IsNotNull(opdrachtStatus); Assert.AreEqual(expectedStatusId, opdrachtStatus.StatusId); Assert.AreEqual(expectedBeschrijving, opdrachtStatus.Beschrijving); }