@@ -29,6 +29,7 @@ |
import java.sql.SQLException; |
import java.sql.Statement; |
import java.util.ArrayList; |
+import java.util.Collections; |
import javax.ws.rs.Path; |
import oms3.annotations.Description; |
import oms3.annotations.Name; |
@@ -101,7 +102,7 @@ |
ArrayList<EcologicalSite> ecoList = new ArrayList<>(); |
for (soils.Coecoclass coEcoClass : component.ecoClasses().values()) { |
String ecoclassid = coEcoClass.ecoclassid(); |
- if (ecoclassid != null) { |
+ if (ecoclassid != null && ecoclassid.startsWith("R")) { |
try (Connection esdConnection = getResourceJDBC(DBResources.ESD); |
Statement esdStmt = esdConnection.createStatement(); |
ResultSet resultSet = esdStmt.executeQuery(DBQueries.RHEM03Query04(ecoclassid));) { |
@@ -116,17 +117,19 @@ |
|
ArrayList<SurfaceTexture> surfaceTextureList = new ArrayList<>(); |
for (soils.Horizon horizon : component.horizons.values()) { |
- for (soils.TextureGroup textureGroup : horizon.textureGroups.values()) { |
- for (soils.Texture texture : textureGroup.textures.values()) { |
- String texcl = texture.texcl(); |
- try (Statement statement = crdb.createStatement(); |
- ResultSet resultSet = statement.executeQuery(DBQueries.RHEM03Query06(texcl));) { |
- while (resultSet.next()) { |
- int textureId = resultSet.getInt("texture_subclass_id"); |
- String textureClass = resultSet.getString("text_abreviation"); |
- String textureClassLabel = resultSet.getString("text_label"); |
- surfaceTextureList.add(new SurfaceTexture(texcl, |
- textureId, textureClass, textureClassLabel)); |
+ if (horizon.hzdept_r() == 0) { |
+ for (soils.TextureGroup textureGroup : horizon.textureGroups.values()) { |
+ for (soils.Texture texture : textureGroup.textures.values()) { |
+ String texcl = texture.texcl(); |
+ try (Statement statement = crdb.createStatement(); |
+ ResultSet resultSet = statement.executeQuery(DBQueries.RHEM03Query06(texcl));) { |
+ while (resultSet.next()) { |
+ int textureId = resultSet.getInt("texture_subclass_id"); |
+ String textureClass = resultSet.getString("text_abreviation"); |
+ String textureClassLabel = resultSet.getString("text_label"); |
+ surfaceTextureList.add(new SurfaceTexture(texcl, |
+ textureId, textureClass, textureClassLabel)); |
+ } |
} |
} |
} |
@@ -135,6 +138,7 @@ |
comp.setSurfaceTextureList(surfaceTextureList); |
componentList.add(comp); |
} |
+ componentList.sort((o1, o2) -> Double.compare(o2.getComppctR(), o1.getComppctR())); |
mapunitList.add(new Mapunit(mapUnit.musym(), mapUnit.muname(), componentList)); |
} |
} |