Author: tchemit Date: 2013-01-11 17:17:12 +0100 (Fri, 11 Jan 2013) New Revision: 176 Url: http://forge.codelutin.com/projects/tutti/repository/revisions/176 Log: use last stable of eugene refs #1807: [Persistence] Adagio r?\195?\169f?\195?\169rentiel (doc + continue) add missing svn properties + license header Added: trunk/tutti-persistence-adagio/src/main/site/ trunk/tutti-persistence-adagio/src/main/site/rst/ trunk/tutti-persistence-adagio/src/main/site/rst/referential.rst trunk/tutti-persistence-adagio/src/main/site/site_fr.xml Modified: trunk/pom.xml trunk/src/site/site_fr.xml trunk/tutti-persistence-adagio/src/main/java/fr/ifremer/tutti/persistence/TuttiPersistenceAdagioImpl.java trunk/tutti-persistence-adagio/src/main/resources/queries-override.hbm.xml trunk/tutti-persistence-adagio/src/main/resources/tutti-db-enumerations.properties trunk/tutti-persistence-adagio/src/test/java/fr/ifremer/tutti/persistence/ReferentialTest.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/SwingValidatorMessageWidget.java trunk/tutti-ui-swing/src/main/resources/icons/action-table-error.png Modified: trunk/pom.xml =================================================================== --- trunk/pom.xml 2013-01-11 14:50:40 UTC (rev 175) +++ trunk/pom.xml 2013-01-11 16:17:12 UTC (rev 176) @@ -125,7 +125,7 @@ <nuitonUtilsVersion>2.7-SNAPSHOT</nuitonUtilsVersion> <nuitonI18nVersion>2.5</nuitonI18nVersion> - <eugenePluginVersion>2.6.1-SNAPSHOT</eugenePluginVersion> + <eugenePluginVersion>2.6.1</eugenePluginVersion> <hibernateVersion>3.6.10.Final</hibernateVersion> <h2Version>1.3.168</h2Version> <postgresqlVersion>9.1-901-1.jdbc4</postgresqlVersion> Modified: trunk/src/site/site_fr.xml =================================================================== --- trunk/src/site/site_fr.xml 2013-01-11 14:50:40 UTC (rev 175) +++ trunk/src/site/site_fr.xml 2013-01-11 16:17:12 UTC (rev 176) @@ -94,7 +94,7 @@ href="${project.url}/index.html"/> </breadcrumbs> - <menu name="Sammoa"> + <menu name="Tutti"> <item name="Accueil" href="index.html"/> <item name="Configuration" href="./application-config-report.html"/> <item name="Téléchargement" Modified: trunk/tutti-persistence-adagio/src/main/java/fr/ifremer/tutti/persistence/TuttiPersistenceAdagioImpl.java =================================================================== --- trunk/tutti-persistence-adagio/src/main/java/fr/ifremer/tutti/persistence/TuttiPersistenceAdagioImpl.java 2013-01-11 14:50:40 UTC (rev 175) +++ trunk/tutti-persistence-adagio/src/main/java/fr/ifremer/tutti/persistence/TuttiPersistenceAdagioImpl.java 2013-01-11 16:17:12 UTC (rev 176) @@ -171,13 +171,7 @@ List<Vessel> result = Lists.newArrayList(); while (list.hasNext()) { Object[] source = list.next(); - Vessel target = new Vessel(); - target.setScientificVessel(true); - target.setId((String) source[0]); - target.setRegistrationCode((String) source[1]); - target.setInternalRegistrationCode((String) source[2]); - target.setName((String) source[3]); - setStatus((fr.ifremer.adagio.core.dao.referential.Status) source[4], target); + Vessel target = loadVessel(source); result.add(target); } return result; @@ -199,16 +193,6 @@ return result; } - protected Vessel loadVessel(Object[] source) { - Vessel target = new Vessel(); - target.setId((String) source[0]); - target.setRegistrationCode((String) source[1]); - target.setInternalRegistrationCode((String) source[2]); - target.setName((String) source[3]); - setStatus((fr.ifremer.adagio.core.dao.referential.Status) source[4], target); - return target; - } - @Override public List<Gear> getAllScientificGear() { @@ -218,11 +202,7 @@ List<Gear> result = Lists.newArrayList(); while (sources.hasNext()) { Object[] source = sources.next(); - Gear target = new Gear(); - target.setId(String.valueOf(source[0])); - target.setName(String.valueOf(source[1])); - target.setLabel(String.valueOf(source[2])); - setStatus((fr.ifremer.adagio.core.dao.referential.Status) source[3], target); + Gear target = loadGear(source); result.add(target); } return result; @@ -236,11 +216,7 @@ List<Gear> result = Lists.newArrayList(); while (sources.hasNext()) { Object[] source = sources.next(); - Gear target = new Gear(); - target.setId(String.valueOf(source[0])); - target.setName(String.valueOf(source[1])); - target.setLabel(String.valueOf(source[2])); - setStatus((fr.ifremer.adagio.core.dao.referential.Status) source[3], target); + Gear target = loadGear(source); result.add(target); } return result; @@ -249,7 +225,11 @@ @Override public List<Person> getAllPerson() { Iterator<Object[]> list = queryList( - "allPersons"); + "allPersons", + "observerProfilId", IntegerType.INSTANCE, getEnumerationIntegerCode("UserProfilId.OBSERVER"), + "projectMemberProfilId", IntegerType.INSTANCE, getEnumerationIntegerCode("UserProfilId.PROJECT_MEMBER"), + "userProfilId", IntegerType.INSTANCE, getEnumerationIntegerCode("UserProfilId.USER") + ); List<Person> result = Lists.newArrayList(); while (list.hasNext()) { @@ -318,7 +298,10 @@ public List<Caracteristic> getAllSpeciesLengthStepCaracteristic() { Iterator<Object[]> sources = queryList( "allLengthStepCaracteristics", - "matrixId", IntegerType.INSTANCE, getEnumerationIntegerCode("MatrixId.BATCH")); + "matrixId", IntegerType.INSTANCE, getEnumerationIntegerCode("MatrixId.INDIVIDUAL"), + "ageParameterCode", StringType.INSTANCE, getEnumerationStringCode("ParameterCode.AGE"), + "weightParameterCode", StringType.INSTANCE, getEnumerationStringCode("ParameterCode.WEIGHT"), + "methodDeclarationId", IntegerType.INSTANCE, getEnumerationIntegerCode("MethodId.DECLARATION")); List<Caracteristic> result = Lists.newArrayList(); while (sources.hasNext()) { Object[] source = sources.next(); @@ -1000,4 +983,23 @@ setStatus((fr.ifremer.adagio.core.dao.referential.Status) source[3], target); return target; } + + protected Vessel loadVessel(Object[] source) { + Vessel target = new Vessel(); + target.setId((String) source[0]); + target.setRegistrationCode((String) source[1]); + target.setInternalRegistrationCode((String) source[2]); + target.setName((String) source[3]); + setStatus((fr.ifremer.adagio.core.dao.referential.Status) source[4], target); + return target; + } + + protected Gear loadGear(Object[] source) { + Gear result = new Gear(); + result.setId(String.valueOf(source[0])); + result.setName(String.valueOf(source[1])); + result.setLabel(String.valueOf(source[2])); + setStatus((fr.ifremer.adagio.core.dao.referential.Status) source[3], result); + return result; + } } Modified: trunk/tutti-persistence-adagio/src/main/resources/queries-override.hbm.xml =================================================================== --- trunk/tutti-persistence-adagio/src/main/resources/queries-override.hbm.xml 2013-01-11 14:50:40 UTC (rev 175) +++ trunk/tutti-persistence-adagio/src/main/resources/queries-override.hbm.xml 2013-01-11 16:17:12 UTC (rev 176) @@ -233,26 +233,37 @@ <!-- Get all persons [REF-07] --> <query cacheable="true" name="allPersons"> <![CDATA[ - SELECT DISTINCT + SELECT DISTINCT p.id, + p.lastname, p.firstname, - p.lastname, - p.department.name, + p.department.code, p.status - FROM + FROM PersonImpl p - WHERE p.status.code IN (1, 2) + LEFT OUTER JOIN p.profils pp + WHERE + p.status.code in (1,2) + AND pp.id IN ( + :observerProfilId, + :projectMemberProfilId, + :userProfilId + ) + AND p.department.code LIKE 'PDG-%' ]]> + <query-param name="observerProfilId" type="java.lang.Integer"/> + <query-param name="projectMemberProfilId" type="java.lang.Integer"/> + <query-param name="userProfilId" type="java.lang.Integer"/> </query> - <!-- Get one persons [REF-07] --> + <!-- Get one persons [REF-07-1] --> <query cacheable="true" name="person"> <![CDATA[ SELECT DISTINCT p.id, p.firstname, p.lastname, - p.department, + p.department.code, p.status FROM PersonImpl p @@ -291,10 +302,10 @@ <query-param name="speciesId" type="java.lang.Integer"/> </query> - <!-- TODO Fix it! Get all length step catacteristics [REF-09] --> + <!-- Get all length step catacteristics [REF-09] --> <query cacheable="true" name="allLengthStepCaracteristics"> <![CDATA[ - SELECT + SELECT p.id AS pmfmId, p.parameter.name AS parameterName, p.matrix.name AS matrixName, @@ -302,13 +313,24 @@ p.method.name AS methodName, p.parameter.isAlphanumeric AS isAlphanumeric, p.parameter.isQualitative AS isQualitative, + p.signifFiguresNumber, + p.maximumNumberDecimals, + p.precision, p.unit.symbol AS symbol, p.status AS status - FROM PmfmImpl p - WHERE p.status.code IN (1, 2) - AND p.parameter.code LIKE 'LENGTH_%' AND p.matrix.id = :matrixId + FROM PmfmImpl p + WHERE p.status.code IN (1, 2) + AND p.matrix.id = :matrixId + AND p.parameter.isQualitative=false + AND p.parameter.isAlphanumeric=false + AND p.parameter.isCalculated=false + AND p.parameter.code not in (:ageParameterCode, :weightParameterCode) + AND p.method.id <> :methodDeclarationId ]]> <query-param name="matrixId" type="java.lang.Integer"/> + <query-param name="ageParameterCode" type="java.lang.String"/> + <query-param name="weightParameterCode" type="java.lang.String"/> + <query-param name="methodDeclarationId" type="java.lang.Integer"/> </query> <!-- Get all gear caracteristics [REF-10] (use allPmfmsByMatrixId) --> @@ -382,7 +404,7 @@ l.status as status FROM LocationImpl l WHERE l.status.code IN (1, 2) - AND l.locationLevel.id = :locationLevelId + AND l.locationLevel.id = :locationLevelId ]]> <query-param name="locationLevel" type="java.lang.Integer"/> </query> @@ -398,22 +420,22 @@ l.status as status FROM LocationImpl l WHERE l.status.code IN (1, 2) - AND l.locationLevel.id = :locationLevelId + AND l.locationLevel.id = :locationLevelId ]]> </query> - <!-- Get all fishing operation locaties [REF-15] --> + <!-- Get all fishing operation localites [REF-15] --> <query cacheable="true" name="allFishingOperationLocalites"> <![CDATA[ - SELECT + SELECT l.id as locationId, l.label as locationLabel, l.name as locationName, l.locationLevel.id as locationLevelId, l.status as status - FROM LocationImpl l - WHERE l.status.code IN (1, 2) - AND l.locationLevel.id = :locationLevelId + FROM LocationImpl l + WHERE l.status.code IN (1, 2) + AND l.locationLevel.id = :locationLevelId ]]> </query> @@ -469,7 +491,7 @@ <!-- Get a pmfm caracteristics by this id [REF-24] --> <query cacheable="true" name="pmfmById"> <![CDATA[ - SELECT + SELECT p.id AS pmfmId, p.parameter.name AS parameterName, p.matrix.name AS matrixName, @@ -482,9 +504,9 @@ p.precision, p.unit.symbol AS symbol, p.status AS status - FROM PmfmImpl p - WHERE p.status.code IN (1, 2) - AND p.id= :pmfmId + FROM PmfmImpl p + WHERE p.status.code IN (1, 2) + AND p.id= :pmfmId ]]> <query-param name="pmfmId" type="java.lang.Integer"/> </query> @@ -507,7 +529,7 @@ <!-- Get all pmfms using a same matrix Id --> <query cacheable="true" name="allPmfmsByMatrixId"> <![CDATA[ - SELECT + SELECT p.id AS pmfmId, p.parameter.name AS parameterName, p.matrix.name AS matrixName, @@ -520,9 +542,9 @@ p.precision, p.unit.symbol AS symbol, p.status AS status - FROM PmfmImpl p - WHERE p.status.code IN (1, 2) - AND p.matrix.id= :matrixId + FROM PmfmImpl p + WHERE p.status.code IN (1, 2) + AND p.matrix.id= :matrixId ]]> <query-param name="matrixId" type="java.lang.Integer"/> </query> @@ -530,7 +552,7 @@ <!-- Get all pmfms using a same parameter group id --> <query cacheable="true" name="allPmfmsByParameterGroudId"> <![CDATA[ - SELECT + SELECT p.id AS pmfmId, p.parameter.name AS parameterName, p.matrix.name AS matrixName, @@ -543,9 +565,9 @@ p.precision, p.unit.symbol AS symbol, p.status AS status - FROM PmfmImpl p - WHERE p.status.code IN (1, 2) - AND p.parameter.parameterGroup.id= :parameterGroupId + FROM PmfmImpl p + WHERE p.status.code IN (1, 2) + AND p.parameter.parameterGroup.id= :parameterGroupId ]]> <query-param name="parameterGroupId" type="java.lang.Integer"/> </query> Modified: trunk/tutti-persistence-adagio/src/main/resources/tutti-db-enumerations.properties =================================================================== --- trunk/tutti-persistence-adagio/src/main/resources/tutti-db-enumerations.properties 2013-01-11 14:50:40 UTC (rev 175) +++ trunk/tutti-persistence-adagio/src/main/resources/tutti-db-enumerations.properties 2013-01-11 16:17:12 UTC (rev 176) @@ -305,7 +305,10 @@ #TODO Mettre la bonne valeur LocationLevelId.PROGRAM=111 +MethodId.DECLARATION=1 + MatrixId.BATCH=1 +MatrixId.INDIVIDUAL=2 ParameterGroupId.ENVIRONEMENT_MEASUREMENT=3 #TODO Mettre la bonne valeur Added: trunk/tutti-persistence-adagio/src/main/site/rst/referential.rst =================================================================== --- trunk/tutti-persistence-adagio/src/main/site/rst/referential.rst (rev 0) +++ trunk/tutti-persistence-adagio/src/main/site/rst/referential.rst 2013-01-11 16:17:12 UTC (rev 176) @@ -0,0 +1,435 @@ +.. - +.. * #%L +.. * Tutti :: Persistence Adagio (impl) +.. * $Id$ +.. * $HeadURL$ +.. * %% +.. * Copyright (C) 2012 - 2013 Ifremer +.. * %% +.. * This program is free software: you can redistribute it and/or modify +.. * it under the terms of the GNU General Public License as +.. * published by the Free Software Foundation, either version 3 of the +.. * License, or (at your option) any later version. +.. * +.. * This program is distributed in the hope that it will be useful, +.. * but WITHOUT ANY WARRANTY; without even the implied warranty of +.. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +.. * GNU General Public License for more details. +.. * +.. * You should have received a copy of the GNU General Public +.. * License along with this program. If not, see +.. * <http://www.gnu.org/licenses/gpl-3.0.html>. +.. * #L% +.. - + +=================== +Tutti - Référentiel +=================== + +Présentation +~~~~~~~~~~~~ + +Ce document décrit comment sont récupérer les données du référentiel. + +Chaque requète a un nom du style **[REF-XXX]**. + +[REF-01] Liste des zones d'une série de campagne +------------------------------------------------ + +:: + SELECT + l.id, + l.label, + l.name, + l.status + FROM LocationImpl l + WHERE + l.locationLevel.id = :locationLevelId + AND l.status.code IN (1, 2) + + +Paramètres : + +- :locationLevelId = *LocationLevelId.PROGRAM* + +*État:* À Valider et définir la valeur de la constante. + +[REF-02] Liste des pays +----------------------- + +:: + + SELECT + l.id, + l.label, + l.name, + l.status + FROM LocationImpl l + WHERE + l.locationLevel.id = :locationLevelId + AND l.status.code IN (1, 2) + + +Paramètres : + +- :locationLevelId = *LocationLevelId.PAYS_ISO3* + +*État:* Valide. + +[REF-03] liste des navires (scientifique) +----------------------------------------- + +:: + + SELECT + v.code AS vesselCode, + vrp.registrationCode AS nationalRegistrationCode, + vrp.internationalRegistrationCode as internationalRegistrationCode, + vf.name AS vesselName, + v.status AS status + FROM + VesselImpl v + INNER JOIN v.vesselRegistrationPeriods AS vrp + LEFT OUTER JOIN v.vesselFeatures AS vf + WHERE v.vesselType.id = :vesselTypeId + AND v.status.code IN (1, 2) + AND vrp.vesselRegistrationPeriodPk.startDateTime = + ( + SELECT MAX(vrp2.vesselRegistrationPeriodPk.startDateTime) + FROM VesselRegistrationPeriodImpl vrp2 WHERE + vrp2.vesselRegistrationPeriodPk.vessel.code = v.code + AND (vrp2.vesselRegistrationPeriodPk.startDateTime <= :refDate OR :refDate IS NULL) + GROUP BY vrp2.vesselRegistrationPeriodPk.vessel.code + ) + AND vf.startDateTime = + ( + SELECT MAX(vf2.startDateTime) + FROM VesselFeaturesImpl vf2 WHERE + vf2.vessel.code = v.code + AND (vf2.startDateTime <= :refDate OR :refDate IS NULL) + GROUP BY vf2.vessel.code + ) + + +Paramètres : + +- :gearClassificiationId = *VesselTypeId.SCIENTIFIC_RESEARCH_VESSEL* +- :refDate = date (ou null) + +*État:* Valide mais à optimiser. + +[REF-04] liste des navires (pro) +-------------------------------- + +:: + + SELECT + v.code AS vesselCode, + vrp.registrationCode AS nationalRegistrationCode, + vrp.internationalRegistrationCode as internationalRegistrationCode, + vf.name AS vesselName, + v.status AS status + FROM + VesselImpl v + INNER JOIN v.vesselRegistrationPeriods AS vrp + LEFT OUTER JOIN v.vesselFeatures AS vf + WHERE v.vesselType.id = :vesselTypeId + AND v.status.code IN (1, 2) + AND vrp.vesselRegistrationPeriodPk.startDateTime = + ( + SELECT MAX(vrp2.vesselRegistrationPeriodPk.startDateTime) + FROM VesselRegistrationPeriodImpl vrp2 WHERE + vrp2.vesselRegistrationPeriodPk.vessel.code = v.code + AND (vrp2.vesselRegistrationPeriodPk.startDateTime <= :refDate OR :refDate IS NULL) + GROUP BY vrp2.vesselRegistrationPeriodPk.vessel.code + ) + AND vf.startDateTime = + ( + SELECT MAX(vf2.startDateTime) + FROM VesselFeaturesImpl vf2 WHERE + vf2.vessel.code = v.code + AND (vf2.startDateTime <= :refDate OR :refDate IS NULL) + GROUP BY vf2.vessel.code + ) + + +Paramètres : + +- :gearClassificiationId = *VesselTypeId.FISHING_VESSEL* +- :refDate = date (ou null) + +*État:* Valide mais à optimiser. + +[REF-05] liste des engins (scientifique) +---------------------------------------- + +:: + + SELECT + g.id, + g.label, + g.name, + g.status AS status + FROM GearImpl g + WHERE + g.gearClassification.id= :gearClassificiationId + AND g.status.code IN (1, 2) + + +Paramètres : + +- :gearClassificiationId = *GearClassificationId.SCIENTIFIC_CRUISE* + +*État:* Valide. + +[REF-06] liste des engins (scientifique) +---------------------------------------- + +:: + + SELECT + g.id, + g.label, + g.name, + g.status AS status + FROM GearImpl g + WHERE + g.gearClassification.id= :gearClassificiationId + AND g.status.code IN (1, 2) + +Paramètres : + +- :gearClassificiationId = *GearClassificationId.FAO* + +*État:* Valide. + + +[REF-07] Liste des utilisateurs +------------------------------- + +:: + + SELECT DISTINCT + p.id, + p.lastname, + p.firstname, + p.department.code, + p.status + FROM + PersonImpl p + LEFT OUTER JOIN p.profils pp + WHERE + p.status.code in (1,2) + AND pp.id IN ( + :observerProfilId, + :projectMemberProfilId, + :userProfilId + ) + AND p.department.code LIKE 'PDG-%' + +Paramètres : + +- :observerProfilId = *UserProfilId.OBSERVER* +- :projectMemberProfilId = *UserProfilId.PROJECT_MEMBER* +- :userProfilId = *UserProfilId.USER* + +*État:* Valide. + + +[REF-08] Liste des espèces +-------------------------- + +:: + + voir TaxonSpecificDao.getAllTaxonRefTax() + +*État:* Valide. + +[REF-09] liste des mesures de classes de taille +----------------------------------------------- + +:: + + SELECT + p.id AS pmfmId, + p.parameter.name AS parameterName, + p.matrix.name AS matrixName, + p.fraction.name AS fractionName, + p.method.name AS methodName, + p.parameter.isAlphanumeric AS isAlphanumeric, + p.parameter.isQualitative AS isQualitative, + p.signifFiguresNumber, + p.maximumNumberDecimals, + p.precision, + p.unit.symbol AS symbol, + p.status AS status + FROM PmfmImpl p + WHERE p.status.code IN (1, 2) + AND p.matrix.id = :matrixId + AND p.parameter.isQualitative=false + AND p.parameter.isAlphanumeric=false + AND p.parameter.isCalculated=false + AND p.parameter.code not in (:ageParameterCode, :weightParameterCode) + AND p.method.id <> :methodDeclarationId + +Paramètres : + +- :matrixId = *MatrixId.INDIVIDUAL* +- :ageParameterCode = *ParameterCode.AGE* +- :weightParameterCode= *ParameterCode.WEIGHT* +- :methodDeclarationId = *MethodId.DECLARATION* + +*État:* Valide. + +[REF-10] Liste des pmfm (mise en oeuvre de l'engin) +--------------------------------------------------- + +:: + + SELECT + p.id AS pmfmId, + p.parameter.name AS parameterName, + p.matrix.name AS matrixName, + p.fraction.name AS fractionName, + p.method.name AS methodName, + p.parameter.isAlphanumeric AS isAlphanumeric, + p.parameter.isQualitative AS isQualitative, + p.signifFiguresNumber, + p.maximumNumberDecimals, + p.precision, + p.unit.symbol AS symbol, + p.status AS status + FROM PmfmImpl p + WHERE p.status.code IN (1, 2) + AND p.matrix.id= :matrixId + +Paramètres : + +- :matrixId = *MatrixId.GEAR* + +*État:* Valide. + +[REF-11] liste des pmfm (environnement) +--------------------------------------- + +:: + + SELECT + p.id AS pmfmId, + p.parameter.name AS parameterName, + p.matrix.name AS matrixName, + p.fraction.name AS fractionName, + p.method.name AS methodName, + p.parameter.isAlphanumeric AS isAlphanumeric, + p.parameter.isQualitative AS isQualitative, + p.signifFiguresNumber, + p.maximumNumberDecimals, + p.precision, + p.unit.symbol AS symbol, + p.status AS status + FROM PmfmImpl p + WHERE p.status.code IN (1, 2) + AND p.parameter.parameterGroup.id= :parameterGroupId + +Paramètres : + +- :parameterGroupId = *ParameterGroupId.ENVIRONEMENT_MEASUREMENT* + +*État:* Valide. + +[REF-12] liste des pmfm (environnement) +--------------------------------------- + +:: + + SELECT + p.id AS pmfmId, + p.parameter.name AS parameterName, + p.matrix.name AS matrixName, + p.fraction.name AS fractionName, + p.method.name AS methodName, + p.parameter.isAlphanumeric AS isAlphanumeric, + p.parameter.isQualitative AS isQualitative, + p.signifFiguresNumber, + p.maximumNumberDecimals, + p.precision, + p.unit.symbol AS symbol, + p.status AS status + FROM PmfmImpl p + WHERE p.status.code IN (1, 2) + AND p.parameter.parameterGroup.id= :parameterGroupId + +Paramètres : + +- :parameterGroupId = *ParameterGroupId.HYDROLOGIC_MEASUREMENT* + +*État:* Données non présentes en base. + +[REF-13] liste des strates +-------------------------- + +:: + + SELECT + l.id as locationId, + l.label as locationLabel, + l.name as locationName, + l.locationLevel.id as locationLevelId, + l.status as status + FROM LocationImpl l + WHERE l.status.code IN (1, 2) + AND l.locationLevel.id = :locationLevelId + +Paramètres : + +- :locationLevelId = *LocationLevelId.STRATA* + +*État:* Valide. + +[REF-14] liste des sous-strates +-------------------------------- + +:: + + SELECT + l.id as locationId, + l.label as locationLabel, + l.name as locationName, + l.locationLevel.id as locationLevelId, + l.status as status + FROM LocationImpl l + WHERE l.status.code IN (1, 2) + AND l.locationLevel.id = :locationLevelId + +Paramètres : + +- :locationLevelId = *LocationLevelId.SUBSTRATA* + +*État:* A valider, il faut trouver comment récupérer les valeurs par rapport +à une strate. + +[REF-15] liste des localités +---------------------------- + +:: + + SELECT + l.id as locationId, + l.label as locationLabel, + l.name as locationName, + l.locationLevel.id as locationLevelId, + l.status as status + FROM LocationImpl l + WHERE l.status.code IN (1, 2) + AND l.locationLevel.id = :locationLevelId + +Paramètres : + +- :locationLevelId = *LocationLevelId.LOCALITE* + +*État:* A valider, il faut trouver comment récupérer les valeurs par rapport +à une strate, sous-strate. + + + + Property changes on: trunk/tutti-persistence-adagio/src/main/site/rst/referential.rst ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision HeadURL Added: svn:eol-style + native Copied: trunk/tutti-persistence-adagio/src/main/site/site_fr.xml (from rev 168, trunk/src/site/site_fr.xml) =================================================================== --- trunk/tutti-persistence-adagio/src/main/site/site_fr.xml (rev 0) +++ trunk/tutti-persistence-adagio/src/main/site/site_fr.xml 2013-01-11 16:17:12 UTC (rev 176) @@ -0,0 +1,114 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + #%L + Tutti + $Id$ + $HeadURL$ + %% + Copyright (C) 2012 Ifremer + %% + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public + License along with this program. If not, see + <http://www.gnu.org/licenses/gpl-3.0.html>. + #L% + --> + +<project name="${project.name}"> + + <skin> + <groupId>org.apache.maven.skins</groupId> + <artifactId>maven-fluido-skin</artifactId> + <version>1.3.0</version> + </skin> + + <custom> + <fluidoSkin> + <topBarEnabled>false</topBarEnabled> + <googleSearch/> + <sideBarEnabled>true</sideBarEnabled> + <searchEnabled>true</searchEnabled> + <sourceLineNumbersEnabled>true</sourceLineNumbersEnabled> + </fluidoSkin> + </custom> + + <bannerLeft> + <name>${project.name}</name> + <href>./index.html</href> + </bannerLeft> + + <bannerRight> + <src>http://www.codelutin.com/images/lutinorange-codelutin.png</src> + <href>http://www.codelutin.com</href> + </bannerRight> + + <publishDate position="right"/> + <version position="right"/> + + <poweredBy> + <logo href="http://maven.apache.org" name="Maven" + img="${project.url}/images/logos/maven-feather.png"/> + + <logo href="http://docutils.sourceforge.net/rst.html" + name="ReStructuredText" + img="http://maven-site.nuiton.org/public/images/logos/restructuredtext-logo.png"/> + + <logo href="http://maven-site.nuiton.org/jrst" name="JRst" + img="http://maven-site.nuiton.org/public/images/logos/jrst-logo.png"/> + + <logo href="http://maven-site.nuiton.org/jaxx" name="JAXX" + img="http://maven-site.nuiton.org/public/images/logos/jaxx-logo.png"/> + + <logo href="http://argouml.tigris.org/" name="ArgoUML" + img="http://maven-site.nuiton.org/public/images/logos/argouml-logo.png"/> + + </poweredBy> + + <body> + + <head> + <script type="text/javascript" + src="http://maven-site.nuiton.org/public/js/mavenpom-site.js"> + </script> + + <link rel="stylesheet" type="text/css" + href="http://maven-site.nuiton.org/public/css/mavenpom-site.css"/> + </head> + + <breadcrumbs> + <item name="${project.name}" + href="${project.url}/index.html"/> + </breadcrumbs> + + <menu name="Tutti"> + <item name="Accueil" href="index.html"/> + <item name="Réferentiel" href="./referantial.html"/> + </menu> + + <menu ref="reports"/> + + <footer> + + <div id='projectMetas' locale='fr' + projectversion='${project.version}' + platform='${project.platform}' + projectid='${project.projectId}' + scm='${project.scm.developerConnection}' + scmwebeditorenabled='${project.scmwebeditorEnabled}' + scmwebeditorurl='${project.scmwebeditorUrl}' + siteSourcesType='${project.siteSourcesType}' + piwikEnabled='${project.piwikEnabled}' + piwikId='${project.piwikId}'> + </div> + </footer> + </body> +</project> Modified: trunk/tutti-persistence-adagio/src/test/java/fr/ifremer/tutti/persistence/ReferentialTest.java =================================================================== --- trunk/tutti-persistence-adagio/src/test/java/fr/ifremer/tutti/persistence/ReferentialTest.java 2013-01-11 14:50:40 UTC (rev 175) +++ trunk/tutti-persistence-adagio/src/test/java/fr/ifremer/tutti/persistence/ReferentialTest.java 2013-01-11 16:17:12 UTC (rev 176) @@ -98,7 +98,7 @@ public void getAllPerson() { List<Person> result = dbResource.getDriver().getAllPerson(); Assert.assertNotNull(result); - Assert.assertEquals(226, result.size()); + Assert.assertEquals(123, result.size()); } @@ -164,7 +164,7 @@ public void getAllSpeciesLengthStepCaracteristic() { List<Caracteristic> result = dbResource.getDriver().getAllSpeciesLengthStepCaracteristic(); Assert.assertNotNull(result); - Assert.assertEquals(0, result.size()); + Assert.assertEquals(24, result.size()); } @Test Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/SwingValidatorMessageWidget.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/SwingValidatorMessageWidget.java 2013-01-11 14:50:40 UTC (rev 175) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/SwingValidatorMessageWidget.java 2013-01-11 16:17:12 UTC (rev 176) @@ -1,6 +1,30 @@ package fr.ifremer.tutti.ui.swing.util; +/* + * #%L + * Tutti :: UI + * $Id$ + * $HeadURL$ + * %% + * Copyright (C) 2012 - 2013 Ifremer + * %% + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this program. If not, see + * <http://www.gnu.org/licenses/gpl-3.0.html>. + * #L% + */ + import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyEvent; Property changes on: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/SwingValidatorMessageWidget.java ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision HeadURL Added: svn:eol-style + native Property changes on: trunk/tutti-ui-swing/src/main/resources/icons/action-table-error.png ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision HeadURL