Author: tchemit Date: 2014-04-05 18:58:54 +0200 (Sat, 05 Apr 2014) New Revision: 1005 Url: http://forge.codelutin.com/projects/echobase/repository/revisions/1005 Log: refs #4704 fix species code Added: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/SpeciesExportRow.java Modified: trunk/echobase-domain/src/main/java/fr/ifremer/echobase/csv/EchoBaseCsvUtil.java trunk/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/SpeciesImpl.java trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/CommunityIndicatorExportModel.java trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/CommunityIndicatorExportRow.java trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/ExportCoserService.java trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/PopulationIndicatorExportModel.java trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/PopulationIndicatorExportRow.java trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/RawDataCatchExportModel.java trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/RawDataCatchExportRow.java trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/RawDataSizeExportModel.java trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/RawDataSizeExportRow.java trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/SpeciesExportModel.java trunk/echobase-ui/src/main/resources/struts.xml Modified: trunk/echobase-domain/src/main/java/fr/ifremer/echobase/csv/EchoBaseCsvUtil.java =================================================================== --- trunk/echobase-domain/src/main/java/fr/ifremer/echobase/csv/EchoBaseCsvUtil.java 2014-04-05 13:02:18 UTC (rev 1004) +++ trunk/echobase-domain/src/main/java/fr/ifremer/echobase/csv/EchoBaseCsvUtil.java 2014-04-05 16:58:54 UTC (rev 1005) @@ -25,6 +25,8 @@ import fr.ifremer.echobase.entities.data.Voyage; import fr.ifremer.echobase.entities.references.DataMetadata; import fr.ifremer.echobase.entities.references.DataQuality; +import fr.ifremer.echobase.entities.references.Species; +import org.nuiton.csv.ValueFormatter; import org.nuiton.csv.ValueParser; import org.nuiton.csv.ValueParserFormatter; import org.nuiton.csv.ValueSetter; @@ -48,6 +50,12 @@ public static final ValueParser<Date> IMPORT_DAY_TIME_ECHOBASE2 = new DateValue("dd/MM/yyyy HH:mm:ss.SSSS"); + public static final ValueFormatter<Species> SPECIES_TO_COSER_CODE = new ValueFormatter<Species>() { + @Override + public String format(Species value) { + return value.getBaracoudaCode().replaceAll("_", ""); + } + }; public static final ValueParser<Boolean> INT_TO_BOOLEAN_PARSER = new ValueParser<Boolean>() { @@ -124,9 +132,6 @@ public static final String DEPTH_STRATUM_ID = "depthStratumId"; - public static final ValueParserFormatter<Date> YEAR = - new DateValue("yyyy"); - protected EchoBaseCsvUtil() { // avoid instanciation on helper class } Modified: trunk/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/SpeciesImpl.java =================================================================== --- trunk/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/SpeciesImpl.java 2014-04-05 13:02:18 UTC (rev 1004) +++ trunk/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/SpeciesImpl.java 2014-04-05 16:58:54 UTC (rev 1005) @@ -25,8 +25,4 @@ private static final long serialVersionUID = 1L; - // used for coser species export - public String getTaxaCode() { - return ""; - } } Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/CommunityIndicatorExportModel.java =================================================================== --- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/CommunityIndicatorExportModel.java 2014-04-05 13:02:18 UTC (rev 1004) +++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/CommunityIndicatorExportModel.java 2014-04-05 16:58:54 UTC (rev 1005) @@ -36,7 +36,7 @@ super(separator); newColumnForExport("Campagne", EchoBaseCsvUtil.<CommunityIndicatorExportRow, String>newBeanProperty(CommunityIndicatorExportRow.PROPERTY_MISSION_NAME)); newColumnForExport("Indicateur", EchoBaseCsvUtil.<CommunityIndicatorExportRow, String>newBeanProperty(CommunityIndicatorExportRow.PROPERTY_INDICATOR_NAME)); - newColumnForExport("Espece", EchoBaseCsvUtil.<CommunityIndicatorExportRow, String>newBeanProperty(CommunityIndicatorExportRow.PROPERTY_SPECIES_NAME)); + newColumnForExport("Espece", CommunityIndicatorExportRow.PROPERTY_SPECIES, EchoBaseCsvUtil.SPECIES_TO_COSER_CODE); newColumnForExport("Strate", CommunityIndicatorExportRow.PROPERTY_STRATUM); newColumnForExport("Annee", CommunityIndicatorExportRow.PROPERTY_DATE, EchoBaseCsvUtil.YEAR); newColumnForExport("Estimation", CommunityIndicatorExportRow.PROPERTY_ESTIMATION); Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/CommunityIndicatorExportRow.java =================================================================== --- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/CommunityIndicatorExportRow.java 2014-04-05 13:02:18 UTC (rev 1004) +++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/CommunityIndicatorExportRow.java 2014-04-05 16:58:54 UTC (rev 1005) @@ -35,11 +35,11 @@ */ public class CommunityIndicatorExportRow { - public static final String PROPERTY_MISSION_NAME = "mission.name"; + public static final String PROPERTY_MISSION_NAME = "mission." + Mission.PROPERTY_NAME; - public static final String PROPERTY_INDICATOR_NAME = "indicator.name"; + public static final String PROPERTY_INDICATOR_NAME = "indicator." + DataMetadata.PROPERTY_NAME; - public static final String PROPERTY_SPECIES_NAME = "species.codeMemo"; + public static final String PROPERTY_SPECIES = "species"; public static final String PROPERTY_STRATUM = "stratum"; Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/ExportCoserService.java =================================================================== --- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/ExportCoserService.java 2014-04-05 13:02:18 UTC (rev 1004) +++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/ExportCoserService.java 2014-04-05 16:58:54 UTC (rev 1005) @@ -513,12 +513,17 @@ //------------------------------------------------------------------------// protected void extractSpeciesFile(EchoBaseProject project) { - File speciesFile = project.getSpeciesDefinitionFile(); - SpeciesExportModel speciesExportModel = new SpeciesExportModel(getCsvSeparator()); + File file = project.getSpeciesDefinitionFile(); + if (log.isInfoEnabled()) { + log.info("generate " + file); + } + SpeciesExportModel exportModel = new SpeciesExportModel(getCsvSeparator()); + List<Species> speciesList = persistenceService.getSpecies(); + List<SpeciesExportRow> rows = exportModel.toRows(speciesList); try { - Export.exportToFile(speciesExportModel, persistenceService.getSpecies(), speciesFile); + Export.exportToFile(exportModel, rows, file); } catch (Exception e) { - throw new EchoBaseTechnicalException("Could not export species list to " + speciesFile, e); + throw new EchoBaseTechnicalException("Could not export species list to " + file, e); } } } Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/PopulationIndicatorExportModel.java =================================================================== --- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/PopulationIndicatorExportModel.java 2014-04-05 13:02:18 UTC (rev 1004) +++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/PopulationIndicatorExportModel.java 2014-04-05 16:58:54 UTC (rev 1005) @@ -36,7 +36,7 @@ super(separator); newColumnForExport("Campagne", EchoBaseCsvUtil.<PopulationIndicatorExportRow, String>newBeanProperty(PopulationIndicatorExportRow.PROPERTY_MISSION_NAME)); newColumnForExport("Indicateur", EchoBaseCsvUtil.<PopulationIndicatorExportRow, String>newBeanProperty(PopulationIndicatorExportRow.PROPERTY_INDICATOR_NAME)); - newColumnForExport("Espece", EchoBaseCsvUtil.<PopulationIndicatorExportRow, String>newBeanProperty(PopulationIndicatorExportRow.PROPERTY_SPECIES_NAME)); + newColumnForExport("Espece", PopulationIndicatorExportRow.PROPERTY_SPECIES, EchoBaseCsvUtil.SPECIES_TO_COSER_CODE); newColumnForExport("Strate", PopulationIndicatorExportRow.PROPERTY_STRATUM); newColumnForExport("Annee", PopulationIndicatorExportRow.PROPERTY_DATE, EchoBaseCsvUtil.YEAR); newColumnForExport("Estimation", PopulationIndicatorExportRow.PROPERTY_ESTIMATION); Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/PopulationIndicatorExportRow.java =================================================================== --- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/PopulationIndicatorExportRow.java 2014-04-05 13:02:18 UTC (rev 1004) +++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/PopulationIndicatorExportRow.java 2014-04-05 16:58:54 UTC (rev 1005) @@ -35,11 +35,11 @@ */ public class PopulationIndicatorExportRow { - public static final String PROPERTY_MISSION_NAME = "mission.name"; + public static final String PROPERTY_MISSION_NAME = "mission." + Mission.PROPERTY_NAME; - public static final String PROPERTY_INDICATOR_NAME = "indicator.name"; + public static final String PROPERTY_INDICATOR_NAME = "indicator." + DataMetadata.PROPERTY_NAME; - public static final String PROPERTY_SPECIES_NAME = "species.codeMemo"; + public static final String PROPERTY_SPECIES = "species"; public static final String PROPERTY_STRATUM = "stratum"; Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/RawDataCatchExportModel.java =================================================================== --- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/RawDataCatchExportModel.java 2014-04-05 13:02:18 UTC (rev 1004) +++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/RawDataCatchExportModel.java 2014-04-05 16:58:54 UTC (rev 1005) @@ -83,7 +83,7 @@ newColumnForExport("Campagne", EchoBaseCsvUtil.<RawDataCatchExportRow, String>newBeanProperty(RawDataCatchExportRow.PROPERTY_VOYAGE_NAME)); newColumnForExport("Annee", EchoBaseCsvUtil.<RawDataCatchExportRow, Date>newBeanProperty(RawDataCatchExportRow.PROPERTY_VOYAGE_YEAR), EchoBaseCsvUtil.YEAR); newColumnForExport("Trait", EchoBaseCsvUtil.<RawDataCatchExportRow, String>newBeanProperty(RawDataCatchExportRow.PROPERTY_OPERATION_ID)); - newColumnForExport("Espece", EchoBaseCsvUtil.<RawDataCatchExportRow, String>newBeanProperty(RawDataCatchExportRow.PROPERTY_SPECIES_CODE)); + newColumnForExport("Espece", RawDataCatchExportRow.PROPERTY_SPECIES,EchoBaseCsvUtil.SPECIES_TO_COSER_CODE); newColumnForExport("Nombre", RawDataCatchExportRow.PROPERTY_OPERATION_NUMBER, EchoBaseCsvUtil.PRIMITIVE_INTEGER); newColumnForExport("Poids", RawDataCatchExportRow.PROPERTY_OPERATION_WEIGHT, EchoBaseCsvUtil.PRIMITIVE_FLOAT); } Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/RawDataCatchExportRow.java =================================================================== --- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/RawDataCatchExportRow.java 2014-04-05 13:02:18 UTC (rev 1004) +++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/RawDataCatchExportRow.java 2014-04-05 16:58:54 UTC (rev 1005) @@ -33,15 +33,13 @@ */ public class RawDataCatchExportRow { - public static final String PROPERTY_VOYAGE = "voyage"; + public static final String PROPERTY_SPECIES = "species"; - public static final String PROPERTY_SPECIES_CODE = "species." + Species.PROPERTY_CODE_MEMO; - public static final String PROPERTY_OPERATION_ID = "operation." + Operation.PROPERTY_ID; - public static final String PROPERTY_VOYAGE_NAME = PROPERTY_VOYAGE + "." + Voyage.PROPERTY_NAME; + public static final String PROPERTY_VOYAGE_NAME = "voyage." + Voyage.PROPERTY_NAME; - public static final String PROPERTY_VOYAGE_YEAR = PROPERTY_VOYAGE + "." + Voyage.PROPERTY_START_DATE; + public static final String PROPERTY_VOYAGE_YEAR = "voyage." + Voyage.PROPERTY_START_DATE; public static final String PROPERTY_OPERATION_NUMBER = "number"; Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/RawDataSizeExportModel.java =================================================================== --- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/RawDataSizeExportModel.java 2014-04-05 13:02:18 UTC (rev 1004) +++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/RawDataSizeExportModel.java 2014-04-05 16:58:54 UTC (rev 1005) @@ -104,7 +104,7 @@ newColumnForExport("Campagne", EchoBaseCsvUtil.<RawDataSizeExportRow, String>newBeanProperty(RawDataSizeExportRow.PROPERTY_VOYAGE_NAME)); newColumnForExport("Annee", EchoBaseCsvUtil.<RawDataSizeExportRow, Date>newBeanProperty(RawDataSizeExportRow.PROPERTY_VOYAGE_YEAR), EchoBaseCsvUtil.YEAR); newColumnForExport("Trait", EchoBaseCsvUtil.<RawDataSizeExportRow, String>newBeanProperty(RawDataSizeExportRow.PROPERTY_OPERATION_ID)); - newColumnForExport("Espece", EchoBaseCsvUtil.<RawDataSizeExportRow, String>newBeanProperty(RawDataSizeExportRow.PROPERTY_SPECIES_CODE)); + newColumnForExport("Espece", RawDataSizeExportRow.PROPERTY_SPECIES, EchoBaseCsvUtil.SPECIES_TO_COSER_CODE); newColumnForExport("Sexe", RawDataSizeExportRow.PROPERTY_SEX_CATEGORY, new ValueFormatter<SexCategory>() { @Override public String format(SexCategory value) { Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/RawDataSizeExportRow.java =================================================================== --- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/RawDataSizeExportRow.java 2014-04-05 13:02:18 UTC (rev 1004) +++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/RawDataSizeExportRow.java 2014-04-05 16:58:54 UTC (rev 1005) @@ -35,15 +35,13 @@ */ public class RawDataSizeExportRow { - public static final String PROPERTY_VOYAGE = "voyage"; + public static final String PROPERTY_SPECIES = "species"; - public static final String PROPERTY_SPECIES_CODE = "species." + Species.PROPERTY_CODE_MEMO; - public static final String PROPERTY_OPERATION_ID = "operation." + Operation.PROPERTY_ID; - public static final String PROPERTY_VOYAGE_NAME = PROPERTY_VOYAGE + "." + Voyage.PROPERTY_NAME; + public static final String PROPERTY_VOYAGE_NAME = "voyage." + Voyage.PROPERTY_NAME; - public static final String PROPERTY_VOYAGE_YEAR = PROPERTY_VOYAGE + "." + Voyage.PROPERTY_START_DATE; + public static final String PROPERTY_VOYAGE_YEAR = "voyage." + Voyage.PROPERTY_START_DATE; public static final String PROPERTY_SEX_CATEGORY = "sexCategory"; Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/SpeciesExportModel.java =================================================================== --- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/SpeciesExportModel.java 2014-04-05 13:02:18 UTC (rev 1004) +++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/SpeciesExportModel.java 2014-04-05 16:58:54 UTC (rev 1005) @@ -21,27 +21,40 @@ * #L% */ +import com.google.common.collect.Lists; +import fr.ifremer.echobase.csv.EchoBaseCsvUtil; import fr.ifremer.echobase.entities.references.Species; import org.nuiton.csv.ext.AbstractExportModel; +import java.util.List; + /** * Created on 3/5/14. * * @author Tony Chemit <chemit@codelutin.com> - * @since XXX + * @since 2.6 */ -public class SpeciesExportModel extends AbstractExportModel<Species> { +public class SpeciesExportModel extends AbstractExportModel<SpeciesExportRow> { public SpeciesExportModel(char separator) { super(separator); newColumnForExport("C_Perm", Species.PROPERTY_TAXON_CODE); newColumnForExport("NumSys", Species.PROPERTY_TAXON_SYSTEMATIC_ORDER); newColumnForExport("NivSys", Species.PROPERTY_TAXON_SYSTEMATIC_LEVEL); - newColumnForExport("C_VALIDE", Species.PROPERTY_CODE_MEMO); + newColumnForExport("C_VALIDE", EchoBaseCsvUtil.<SpeciesExportRow, Species>newBeanProperty(SpeciesExportRow.PROPERTY_SPECIES), EchoBaseCsvUtil.SPECIES_TO_COSER_CODE); newColumnForExport("L_VALIDE", Species.PROPERTY_GENUS_SPECIES); newColumnForExport("AA_VALIDE", Species.PROPERTY_AUTHOR_REFERENCE); newColumnForExport("C_TxPère", Species.PROPERTY_TAXON_FATHER_MEMOCODE); newColumnForExport("Taxa", "taxaCode"); } + public List<SpeciesExportRow> toRows(List<Species> speciesList) { + List<SpeciesExportRow> rows = Lists.newArrayList(); + for (Species species : speciesList) { + SpeciesExportRow row = new SpeciesExportRow(); + row.setSpecies(species); + rows.add(row); + } + return rows; + } } Added: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/SpeciesExportRow.java =================================================================== --- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/SpeciesExportRow.java (rev 0) +++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/SpeciesExportRow.java 2014-04-05 16:58:54 UTC (rev 1005) @@ -0,0 +1,52 @@ +package fr.ifremer.echobase.services.service.exportCoser; + +import fr.ifremer.echobase.entities.references.Species; + +/** + * Created on 4/5/14. + * + * @author Tony Chemit <chemit@codelutin.com> + * @since 2.6 + */ +public class SpeciesExportRow { + + public static final String PROPERTY_SPECIES = "species"; + + protected Species species; + + public Species getSpecies() { + return species; + } + + public String getTaxaCode() { + return ""; + } + + public String getGenusSpecies() { + return species.getGenusSpecies(); + } + + public String getTaxonCode() { + return species.getTaxonCode(); + } + + public String getTaxonSystematicOrder() { + return species.getTaxonSystematicOrder(); + } + + public String getTaxonSystematicLevel() { + return species.getTaxonSystematicLevel(); + } + + public String getTaxonFatherMemocode() { + return species.getTaxonFatherMemocode(); + } + + public String getAuthorReference() { + return species.getAuthorReference(); + } + + public void setSpecies(Species species) { + this.species = species; + } +} Property changes on: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/service/exportCoser/SpeciesExportRow.java ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Modified: trunk/echobase-ui/src/main/resources/struts.xml =================================================================== --- trunk/echobase-ui/src/main/resources/struts.xml 2014-04-05 13:02:18 UTC (rev 1004) +++ trunk/echobase-ui/src/main/resources/struts.xml 2014-04-05 16:58:54 UTC (rev 1005) @@ -124,8 +124,8 @@ <interceptor-ref name="exception"/> <interceptor-ref name="alias"/> <interceptor-ref name="servletConfig"/> + <interceptor-ref name="i18n"/> <interceptor-ref name="echobaseInjector"/> - <interceptor-ref name="i18n"/> <interceptor-ref name="prepare"/> <interceptor-ref name="chain"/> <interceptor-ref name="scopedModelDriven"/>
participants (1)
-
tchemit@users.forge.codelutin.com