private void CreateStudiefasen(ModuleGecreeerd @event, long moduleId) => _studiefaseService.CreateStudiefasen(new CreateStudiefasenCommand { ModuleId = moduleId, PeriodenNummers = @event.Studiefase.Perioden, VerplichtVoor = @event.VerplichtVoor, AanbevolenVoor = @event.AanbevolenVoor });
private long CreateModule(ModuleGecreeerd @event, long cohortId) => _moduleRepository.CreateModule(new Module { ModuleCode = @event.ModuleCode, ModuleNaam = @event.ModuleNaam, CohortId = cohortId, Studiepunten = @event.AantalEc });
private void CreateAuditLogEntry(ModuleGecreeerd @event, long moduleId) { _auditLogRepository.Create(new AuditLogEntry { ModuleId = moduleId, Omschrijving = $"{@event.Type} on {@event.ModuleCode} in cohort {@event.Cohort}", Timestamp = new DateTime(@event.Timestamp) }); }
public void CreateModule(ModuleGecreeerd @event) { var cohortId = EnsureCohortExist(@event.Cohort); var moduleId = CreateModule(@event, cohortId); CreateStudiefasen(@event, moduleId); CreateCompetenties(@event, moduleId); CreateEindeisen(@event, moduleId); CreateAuditLogEntry(@event, moduleId); }
private void When(ModuleGecreeerd @event) { _naam = @event.ModuleNaam; _code = @event.ModuleCode; _aantalEc = @event.AantalEc; _cohort = @event.Cohort; _studiefase = @event.Studiefase; _competenties = @event.Competenties; _eindEisen = new EindEisen(@event.Eindeisen); _status = new Status(@event.VerplichtVoor, @event.AanbevolenVoor); }
public void FromDomainEvent_Should_Have_A_Json_Object_Of_DomainEvent() { // Arrange var stream = new Stream("streamId", 1); var domainEvent = new ModuleGecreeerd(); // Act var result = Event.FromDomainEvent(stream, domainEvent); // Assert Assert.AreEqual("ModuleGecreeerd", result.Type); }
public void FromDomainEvent_Should_Have_A_Version_From_Stream() { // Arrange var stream = new Stream("streamId", 1); var domainEvent = new ModuleGecreeerd(); // Act var result = Event.FromDomainEvent(stream, domainEvent); // Assert Assert.AreEqual(1, result.Stream.Version); }
public void ToDomainEvent_Should_Return_Instanceof_Type_ModuleGecreeerd() { // Arrange var stream = new Stream("streamId", 1); var domainEvent = new ModuleGecreeerd { ModuleCode = "IOPR", ModuleNaam = "Object oriented programming", AantalEc = 3, Cohort = "2019/2020", VerplichtVoor = new List <Specialisatie>(), AanbevolenVoor = new List <Specialisatie>(), Competenties = new Matrix { XHeaders = new List <string> { "software" }, YHeaders = new List <string> { "analyseren" }, Cells = new int[][] { new[] { 1 } } }, Studiefase = new Studiefase("", new List <int> { 1, 2 }), Eindeisen = new List <string> { "Test", "Test" } }; // Act var result = Event.FromDomainEvent(stream, domainEvent).ToDomainEvent(); // Assert Assert.IsInstanceOfType(result, typeof(ModuleGecreeerd)); }
private void CreateCompetenties(ModuleGecreeerd @event, long moduleId) => _competentieService.CreateCompetenties(new CreateCompetentiesCommand { ModuleId = moduleId, Competenties = @event.Competenties.ToMatrix() });
private void CreateEindeisen(ModuleGecreeerd @event, long moduleId) => _eindeisService.CreateEindeisen(new CreateEindeisenCommand { ModuleId = moduleId, Beschrijvingen = @event.Eindeisen });
public void Handles(ModuleGecreeerd @event) { _moduleEventsDeserializer.CreateModule(@event); _logger.LogInformation($"{nameof(Handles)} triggerd"); }