public void Process(PhoneNumberAdded @event) { //TODO: How to handle if datacollector does not exist? SHould not occur since that mean error in event sequence var dataCollector = _dataCollectors.GetById(@event.DataCollectorId); dataCollector.PhoneNumbers.Add(@event.PhoneNumber); _dataCollectors.Save(dataCollector); }
public async Task Process(PhoneNumberAdded @event) { var unknownReports = await this.unknownReports.GetByPhoneNumber(@event.PhoneNumber); foreach (var item in unknownReports) { var repo = caseReportingAggregateRootRepository.Get(item.Id); repo.Report( @event.DataCollectorId, item.HealthRiskId, item.NumberOfMalesUnder5, item.NumberOfMalesOver5, item.NumberOfFemalesUnder5, item.NumberOfFemalesOver5, item.Location.Longitude, item.Location.Latitude, item.Timestamp ); repo.ReportFromUnknownDataCollectorIdentiefied(@event.DataCollectorId); } }