Author: tchemit Date: 2012-04-06 18:36:29 +0200 (Fri, 06 Apr 2012) New Revision: 504 Url: http://forge.codelutin.com/repositories/revision/echobase/504 Log: fixes #1098: Utilisation des round et units dans l'import des subsamples Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/CatchesImportService.java trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/csv/SubSampleImportModel.java trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/csv/SubSampleImportRow.java Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/CatchesImportService.java =================================================================== --- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/CatchesImportService.java 2012-04-06 16:05:03 UTC (rev 503) +++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/CatchesImportService.java 2012-04-06 16:36:29 UTC (rev 504) @@ -348,6 +348,10 @@ SampleDataType sampleDataTypeNumberAtLength = findByProperties(sampleDataTypeDAO, SampleDataType.PROPERTY_NAME, "NumberAtLength"); Preconditions.checkNotNull(sampleDataTypeNumberAtLength); + SampleDataType sampleDataTypeNumberAtLength05cm = findByProperties(sampleDataTypeDAO, SampleDataType.PROPERTY_NAME, "LTcm0.5"); + Preconditions.checkNotNull(sampleDataTypeNumberAtLength05cm); + SampleDataType sampleDataTypeNumberAtLength1cm = findByProperties(sampleDataTypeDAO, SampleDataType.PROPERTY_NAME, "LTcm1"); + Preconditions.checkNotNull(sampleDataTypeNumberAtLength1cm); SampleDataType sampleDataTypeWeightAtLength = findByProperties(sampleDataTypeDAO, SampleDataType.PROPERTY_NAME, "WeightAtLengthkg"); Preconditions.checkNotNull(sampleDataTypeWeightAtLength); @@ -393,9 +397,20 @@ importResult); } + Integer round = row.getRound(); + SampleDataType dataType = sampleDataTypeNumberAtLength; + + if (round == null) { + dataType = sampleDataTypeNumberAtLength; + } else if (round == 5) { + dataType = sampleDataTypeNumberAtLength05cm; + } else if (round == 1) { + dataType = sampleDataTypeNumberAtLength1cm; + } + //create numberAtLength data addSampleData(sampleDataDAO, - sampleDataTypeNumberAtLength, + dataType, "" + row.getLengthClass(), row.getNumberAtLength(), sample, Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/csv/SubSampleImportModel.java =================================================================== --- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/csv/SubSampleImportModel.java 2012-04-06 16:05:03 UTC (rev 503) +++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/csv/SubSampleImportModel.java 2012-04-06 16:36:29 UTC (rev 504) @@ -50,8 +50,6 @@ super(separator); newIgnoredColumn("subHaul"); - newIgnoredColumn("units"); - newIgnoredColumn("round"); newForeignKeyColumn(OPERATION_ID, SubSampleImportRow.PROPERTY_OPERATION, Operation.class, Operation.PROPERTY_ID, operationMap); newForeignKeyColumn(Species.PROPERTY_BARACOUDA_CODE, SubSampleImportRow.PROPERTY_SPECIES, Species.class, Species.PROPERTY_BARACOUDA_CODE, speciesMap); @@ -64,6 +62,8 @@ newMandatoryColumn(SubSampleImportRow.PROPERTY_NUMBER_AT_LENGTH, EchobaseCsvUtil.PRIMITIVE_FLOAT); newMandatoryColumn(SubSampleImportRow.PROPERTY_WEIGHT_AT_LENGTH, EchobaseCsvUtil.NA_TO_FLOAT_PARSER); newMandatoryColumn(SubSampleImportRow.PROPERTY_LENGTH_CLASS); + newMandatoryColumn(SubSampleImportRow.PROPERTY_UNITS); + newMandatoryColumn(SubSampleImportRow.PROPERTY_ROUND, EchobaseCsvUtil.NA_TO_INTEGER_PARSER); } @Override Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/csv/SubSampleImportRow.java =================================================================== --- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/csv/SubSampleImportRow.java 2012-04-06 16:05:03 UTC (rev 503) +++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/csv/SubSampleImportRow.java 2012-04-06 16:36:29 UTC (rev 504) @@ -54,6 +54,10 @@ public static final String PROPERTY_LENGTH_CLASS = "lengthClass"; + public static final String PROPERTY_UNITS = "units"; + + public static final String PROPERTY_ROUND = "round"; + protected Operation operation; protected Species species; @@ -70,6 +74,10 @@ protected String lengthClass; + protected Integer round; + + protected String units; + public SubSampleImportRow() { sample = new SampleImpl(); } @@ -102,6 +110,22 @@ this.sizeCategory = sizeCategory; } + public Integer getRound() { + return round; + } + + public void setRound(Integer round) { + this.round = round; + } + + public String getUnits() { + return units; + } + + public void setUnits(String units) { + this.units = units; + } + public void setNumberSampled(Integer numberSampled) { sample.setNumberSampled(numberSampled); }