r1567 - in trunk/wao-business/src/main: java/fr/ifremer/wao/entity java/fr/ifremer/wao/service resources/i18n
Author: bleny Date: 2012-03-16 16:53:26 +0100 (Fri, 16 Mar 2012) New Revision: 1567 Url: http://forge.codelutin.com/repositories/revision/wao/1567 Log: Evolution #813 mise ?\195?\160 jour des r?\195?\169f?\195?\169rentiels DCF5 : selon les CSV Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/entity/FishingGearDCFImpl.java trunk/wao-business/src/main/java/fr/ifremer/wao/entity/TargetSpeciesDCFImpl.java trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceReferentialImpl.java trunk/wao-business/src/main/resources/i18n/wao-business_en_GB.properties trunk/wao-business/src/main/resources/i18n/wao-business_fr_FR.properties Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/entity/FishingGearDCFImpl.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/entity/FishingGearDCFImpl.java 2012-03-15 15:22:28 UTC (rev 1566) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/entity/FishingGearDCFImpl.java 2012-03-16 15:53:26 UTC (rev 1567) @@ -24,6 +24,7 @@ package fr.ifremer.wao.entity; import fr.ifremer.wao.WaoUtils; +import org.apache.commons.lang3.builder.ReflectionToStringBuilder; /** * @author bleny @@ -48,4 +49,9 @@ public String getFullDescription() { return String.format("%s (%s)", getCode(), getDescription()); } + + @Override + public String toString() { + return ReflectionToStringBuilder.toString(this); + } } Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/entity/TargetSpeciesDCFImpl.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/entity/TargetSpeciesDCFImpl.java 2012-03-15 15:22:28 UTC (rev 1566) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/entity/TargetSpeciesDCFImpl.java 2012-03-16 15:53:26 UTC (rev 1567) @@ -24,6 +24,7 @@ package fr.ifremer.wao.entity; import fr.ifremer.wao.WaoUtils; +import org.apache.commons.lang3.builder.ReflectionToStringBuilder; /** * @author bleny @@ -48,4 +49,9 @@ public String getFullDescription() { return String.format("%s (%s)", getCode(), getDescription()); } + + @Override + public String toString() { + return ReflectionToStringBuilder.toString(this); + } } Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceReferentialImpl.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceReferentialImpl.java 2012-03-15 15:22:28 UTC (rev 1566) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceReferentialImpl.java 2012-03-16 15:53:26 UTC (rev 1567) @@ -41,6 +41,7 @@ import fr.ifremer.wao.entity.BoatGroup; import fr.ifremer.wao.entity.ContactStateMotif; import fr.ifremer.wao.entity.ContactStateMotifDAO; +import fr.ifremer.wao.entity.DCF5Code; import fr.ifremer.wao.entity.FishingGearDCF; import fr.ifremer.wao.entity.FishingGearDCFDAO; import fr.ifremer.wao.entity.FishingZone; @@ -54,6 +55,8 @@ import fr.ifremer.wao.entity.ReferentialMeta; import fr.ifremer.wao.entity.ReferentialMetaDAO; import fr.ifremer.wao.entity.ReferentialMetaImpl; +import fr.ifremer.wao.entity.SampleRow; +import fr.ifremer.wao.entity.SampleRowDAO; import fr.ifremer.wao.entity.TargetSpeciesDCF; import fr.ifremer.wao.entity.TargetSpeciesDCFDAO; import fr.ifremer.wao.entity.TerrestrialDivision; @@ -71,6 +74,7 @@ import fr.ifremer.wao.io.csv2.models.TerrestrialDivisionImportModel; import fr.ifremer.wao.io.csv2.models.TerrestrialLocationImportModel; import org.apache.commons.io.IOUtils; +import org.apache.commons.lang3.ArrayUtils; import org.apache.commons.lang3.StringUtils; import org.nuiton.topia.TopiaContext; import org.nuiton.topia.TopiaException; @@ -676,18 +680,18 @@ FishingGearDCFDAO fishingGearDCFDAO = WaoDAOHelper.getFishingGearDCFDAO(transaction); TargetSpeciesDCFDAO targetSpeciesDCFDAO = WaoDAOHelper.getTargetSpeciesDCFDAO(transaction); + + final String[] gearCodesBase = {"DRB", "DRH", + "FPN", "FPO", "FSN", "FWR", "FYK", "GES", "GNC", + "GND", "GNF", "GNS", "GTN", "GTR", "HAR", "HMD", "HMP", + "LA", "LHM", "LHP", "LLD", "LLS", "LNB", "LNP", "LNS", + "LTL", "LX", "OTB", "OTM", "OTT", "PS", + "PTB", "PTM", "RG", "SB", "SDN", "SPR", "SSC", "SV", + "TBB", "TBN", "TBS", "TMS"}; - final String[] gearCodesBase = {"DRB", "DRH", "FAR", "FCN", "FG", - "FIX", "FPN", "FPO", "FSN", "FWR", "FYK", "GEN", "GES", "GN", "GNC", - "GND", "GNF", "GNS", "GT", "GTN", "GTR", "HAR", "HMD", "HMP", "HMX", - "LA", "LHM", "LHP", "LL", "LLD", "LLS", "LN", "LNB", "LNP", "LNS", - "LTL", "LX", "MIS", "NK", "OT", "OTB", "OTM", "OTT", "PS", "PS1", - "PS2", "PT", "PTB", "PTM", "RG", "SB", "SDN", "SPR", "SSC", "SV", - "SW", "TB", "TBB", "TBN", "TBS", "TM", "TMS", "TX"}; + final String[] speciesCodesBase = {"ALG", "ANA", "CAT", "CRU", + "DEF", "DWS", "LPF", "MOL", "SPF"}; - final String[] speciesCodesBase = {"ALG", "CAT", "CRU", "CSJ", - "DEF", "DWS", "FIN", "LPF", "MOL", "SPF", "CRW"}; - long nbCodes = fishingGearDCFDAO.count() + targetSpeciesDCFDAO.count(); if (nbCodes == 0) { @@ -726,6 +730,37 @@ } } + // on supprime ce qu'il y a en trop + for (FishingGearDCF fishingGearDCF : fishingGearDCFDAO.findAll()) { + if ( ! ArrayUtils.contains(gearCodesBase, fishingGearDCF.getCode())) { + List<DCF5Code> usages = fishingGearDCFDAO.findUsages(DCF5Code.class, fishingGearDCF); + if (usages.isEmpty()) { + log.info("will delete code " + fishingGearDCF); + fishingGearDCFDAO.delete(fishingGearDCF); + } else { + log.warn("will not delete " + fishingGearDCF); + SampleRowDAO sampleRowDAO = WaoDAOHelper.getSampleRowDAO(transaction); + for (DCF5Code usage : usages) { + List<SampleRow> sampleRows = sampleRowDAO.findAllContainsdCF5Code(usage); + for (SampleRow sampleRow : sampleRows) { + log.warn("sampleRow " + sampleRow.getCode() + " use " + usage); + } + } + } + } + } + + for (TargetSpeciesDCF targetSpeciesDCF : targetSpeciesDCFDAO.findAll()) { + if ( ! ArrayUtils.contains(speciesCodesBase, targetSpeciesDCF.getCode())) { + List<DCF5Code> usages = targetSpeciesDCFDAO.findUsages(DCF5Code.class, targetSpeciesDCF); + if (usages.isEmpty()) { + log.info("will delete code " + targetSpeciesDCF); + targetSpeciesDCFDAO.delete(targetSpeciesDCF); + } else { + log.warn("will not delete " + targetSpeciesDCF); + } + } + } } transaction.commitTransaction(); Modified: trunk/wao-business/src/main/resources/i18n/wao-business_en_GB.properties =================================================================== --- trunk/wao-business/src/main/resources/i18n/wao-business_en_GB.properties 2012-03-15 15:22:28 UTC (rev 1566) +++ trunk/wao-business/src/main/resources/i18n/wao-business_en_GB.properties 2012-03-16 15:53:26 UTC (rev 1567) @@ -125,6 +125,7 @@ fr.ifremer.wao.entity.ObsDebCode=ObsDeb codes fr.ifremer.wao.entity.TargetSpeciesDCF.=Not specified fr.ifremer.wao.entity.TargetSpeciesDCF.ALG=Algae +fr.ifremer.wao.entity.TargetSpeciesDCF.ANA=Espèces anadromes fr.ifremer.wao.entity.TargetSpeciesDCF.CAT=Catadromous species fr.ifremer.wao.entity.TargetSpeciesDCF.CRU=Crustacean fr.ifremer.wao.entity.TargetSpeciesDCF.CRW=Langouste Modified: trunk/wao-business/src/main/resources/i18n/wao-business_fr_FR.properties =================================================================== --- trunk/wao-business/src/main/resources/i18n/wao-business_fr_FR.properties 2012-03-15 15:22:28 UTC (rev 1566) +++ trunk/wao-business/src/main/resources/i18n/wao-business_fr_FR.properties 2012-03-16 15:53:26 UTC (rev 1567) @@ -85,8 +85,8 @@ fr.ifremer.wao.entity.FishingGearDCF.HMP=Pompes fr.ifremer.wao.entity.FishingGearDCF.HMX=Engins de récolte (non spécifiés) fr.ifremer.wao.entity.FishingGearDCF.LA=Filets tournants sans coulisse (filet lamparo) -fr.ifremer.wao.entity.FishingGearDCF.LHM=Lignes à main et lignes avec cannes -fr.ifremer.wao.entity.FishingGearDCF.LHP=Lignes à main et lignes à cannes +fr.ifremer.wao.entity.FishingGearDCF.LHM=Lignes à main et lignes avec cannes (mécanisées) +fr.ifremer.wao.entity.FishingGearDCF.LHP=Lignes à main et lignes à cannes (manœuvrées à la main) fr.ifremer.wao.entity.FishingGearDCF.LL=Palangres (non spécifiées) fr.ifremer.wao.entity.FishingGearDCF.LLD=Palangres dérivantes fr.ifremer.wao.entity.FishingGearDCF.LLS=Palangres calées ou semi-flottantes @@ -120,12 +120,13 @@ fr.ifremer.wao.entity.FishingGearDCF.TBN=Chalut à langoustines fr.ifremer.wao.entity.FishingGearDCF.TBS=Chalut à crevettes fr.ifremer.wao.entity.FishingGearDCF.TM=Chalut pélagique (non spécifié) -fr.ifremer.wao.entity.FishingGearDCF.TMS=Chalut à crevettes +fr.ifremer.wao.entity.FishingGearDCF.TMS=Chalut pélagique à crevettes fr.ifremer.wao.entity.FishingGearDCF.TX=Autre chalut (non spécifié) fr.ifremer.wao.entity.FishingZone=Zones de pêche fr.ifremer.wao.entity.ObsDebCode=Codes métiers ObsDeb fr.ifremer.wao.entity.TargetSpeciesDCF.=Non spécifié fr.ifremer.wao.entity.TargetSpeciesDCF.ALG=Algues +fr.ifremer.wao.entity.TargetSpeciesDCF.ANA=Espèces anadromes fr.ifremer.wao.entity.TargetSpeciesDCF.CAT=Espèces catadromes fr.ifremer.wao.entity.TargetSpeciesDCF.CRU=Crustacés fr.ifremer.wao.entity.TargetSpeciesDCF.CRW=Langouste
participants (1)
-
bleny@users.forge.codelutin.com