Index: Riskeer/Integration/src/Riskeer.Integration.IO/Importers/HydraulicBoundaryDatabaseImporter.cs =================================================================== diff -u -r0485f51ed136b0e7e261f9bb4ab3cbb20f867d8d -r9fb3ebcd24b5891b4c6518621b9b9b5554911c8e --- Riskeer/Integration/src/Riskeer.Integration.IO/Importers/HydraulicBoundaryDatabaseImporter.cs (.../HydraulicBoundaryDatabaseImporter.cs) (revision 0485f51ed136b0e7e261f9bb4ab3cbb20f867d8d) +++ Riskeer/Integration/src/Riskeer.Integration.IO/Importers/HydraulicBoundaryDatabaseImporter.cs (.../HydraulicBoundaryDatabaseImporter.cs) (revision 9fb3ebcd24b5891b4c6518621b9b9b5554911c8e) @@ -93,6 +93,9 @@ return false; } + IEnumerable hydraulicBoundaryLocationsToAdd = GetHydraulicBoundaryLocationsToAdd( + readHydraulicBoundaryDatabase, readHydraulicLocationConfigurationDatabase, readExcludedLocationIds.ToArray()); + AddHydraulicBoundaryDatabaseToDataModel(readHydraulicBoundaryDatabase, readHydraulicLocationConfigurationDatabase, readExcludedLocationIds); return true; @@ -248,6 +251,25 @@ return readExcludedLocationIdsResult.Items.Single(); } + private static IEnumerable GetHydraulicBoundaryLocationsToAdd(ReadHydraulicBoundaryDatabase readHydraulicBoundaryDatabase, + ReadHydraulicLocationConfigurationDatabase readHydraulicLocationConfigurationDatabase, + long[] readExcludedLocationIds) + { + foreach (ReadHydraulicBoundaryLocation readHydraulicBoundaryLocation in readHydraulicBoundaryDatabase.Locations) + { + long hydraulicBoundaryLocationId = readHydraulicLocationConfigurationDatabase.ReadHydraulicLocations + .Where(m => m.HrdLocationId == readHydraulicBoundaryLocation.Id) + .Select(m => m.HlcdLocationId) + .FirstOrDefault(); + + if (hydraulicBoundaryLocationId != 0 && !readExcludedLocationIds.Contains(hydraulicBoundaryLocationId)) + { + yield return new HydraulicBoundaryLocation(hydraulicBoundaryLocationId, readHydraulicBoundaryLocation.Name, + readHydraulicBoundaryLocation.CoordinateX, readHydraulicBoundaryLocation.CoordinateY); + } + } + } + private void AddHydraulicBoundaryDatabaseToDataModel(ReadHydraulicBoundaryDatabase readHydraulicBoundaryDatabase, ReadHydraulicLocationConfigurationDatabase readHydraulicLocationConfigurationDatabase, IEnumerable excludedLocationIds)