private List <NatureArea> GetNatureAreaInfos(SqlConnection sqlConnection, SqlBuilder builder, SqlBuilder.Template template, int infoLevel) { var natureAreas = new List <NatureArea>(); builder.Select("na.id AS Id, na.localId AS LocalId, na.naturnivå_id AS NaturnivaId, na.kartlagt AS Kartlagt, na.institusjon AS Institusjon" + (infoLevel == 2 ? ", na.kartlegger_id AS KartleggerId" : string.Empty)); string sql = template.RawSql; var infos = sqlConnection.Query <NatureAreaInfoDto>(sql, template.Parameters).ToList(); foreach (var info in infos) { var natureArea = new NatureAreaExport { Id = info.Id, UniqueId = new Identification { LocalId = info.LocalId }, Nivå = (NatureLevel)info.NaturnivaId, Surveyed = info.Kartlagt, Institution = info.Institusjon }; if (infoLevel == 2 && info.KartleggerId.HasValue) { natureArea.Surveyer = new Contact { Id = info.KartleggerId.Value }; } natureAreas.Add(natureArea); } if (infoLevel == 1) { natureAreas = SqlServer.SetParameters(sql.Contains("WHERE"), natureAreas).ToList(); } else if (infoLevel == 2) { SqlServer.SetMetadata(natureAreas); } return(natureAreas); }
private static Collection <NatureAreaExport> FindNatureAreasBySearchFilter( SearchFilterRequest searchFilterRequest) { var metadatas = FindMetadatasBySearchFilter(searchFilterRequest); var natureAreaExports = new Collection <NatureAreaExport>(); foreach (var metadata in metadatas) { foreach (var natureArea in metadata.NatureAreas) { var natureAreaExport = new NatureAreaExport(natureArea) { MetadataContractor = metadata.Contractor.Company, MetadataProgram = metadata.Program, MetadataSurveyScale = metadata.SurveyScale }; natureAreaExports.Add(natureAreaExport); } } return(natureAreaExports); }