From tchemit@users.forge.codelutin.com Tue Oct 15 11:24:24 2013 From: tchemit@users.forge.codelutin.com To: tutti-commits@list.forge.codelutin.com Subject: [Tutti-commits] r1306 - in trunk/tutti-ui-swing/src/main: =?utf-8?q?java/fr/ifremer/tutti/ui/swing/content/operation/catches/individu?= =?utf-8?q?alobservation=09java/fr/ifremer/tutti/ui/swing/content/operation/?= =?utf-8?q?catches/individualobservation/create?= resources/i18n Date: Tue, 15 Oct 2013 11:24:23 +0200 Message-ID: <20131015092423.E4EE718E728@nuiton.codelutin.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============3076924806227434342==" --===============3076924806227434342== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Author: tchemit Date: 2013-10-15 11:24:23 +0200 (Tue, 15 Oct 2013) New Revision: 1306 Url: http://forge.codelutin.com/projects/tutti/repository/revisions/1306 Log: fixes #3506: [DONNEES INDIVIDUELLES] Ajouter un warning si pas de mensuration= ?\195?\160 recopier dans les observations individuelles fixes #3510: [DONNEES INDIVIDUELLES] Ajouter une confirmation lors de la cr?\= 195?\169ation de donn?\195?\169es individuelles sur une esp?\195?\168ce d?\19= 5?\169j?\195?\160 renseign?\195?\169e Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/opera= tion/catches/individualobservation/IndividualObservationBatchUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/opera= tion/catches/individualobservation/IndividualObservationBatchUIModel.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/opera= tion/catches/individualobservation/create/CreateIndividualObservationBatchUIM= odel.java trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properti= es trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properti= es Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/conten= t/operation/catches/individualobservation/IndividualObservationBatchUIHandler= .java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/oper= ation/catches/individualobservation/IndividualObservationBatchUIHandler.java = 2013-10-15 09:23:49 UTC (rev 1305) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/oper= ation/catches/individualobservation/IndividualObservationBatchUIHandler.java = 2013-10-15 09:24:23 UTC (rev 1306) @@ -468,12 +468,53 @@ IndividualObservationBatchTableModel tableModel =3D getTableMode= l(); =20 if (model.isCreateFromBatch()) { + + Species species =3D model.getSpecies(); + + String speciesStr =3D decorate(species); + + // check if there is some rows to create + + if (!model.isSpeciesFromBatchWithCount()) { + + String htmlMessage =3D String.format("%s", + _("tutti.createIndivi= dualObservationBatch.warn.nocount", speciesStr)); + JOptionPane.showMessageDialog(getContext().getMainUI(), + htmlMessage, + _("tutti.createIndividualO= bservationBatch.warn.nocount.title"), + JOptionPane.WARNING_MESSAG= E); + return; + } + + // check if there is already some indivudal data for this sp= ecies + + Set speciesUsed =3D getModel().getSpeciesUsed(); + if (speciesUsed.contains(species)) { + + String htmlMessage =3D String.format( + CONFIRMATION_FORMAT, + _("tutti.createIndividualObservationBatch.confir= m.alreadyUsedSpecies.message", speciesStr), + _("tutti.createIndividualObservationBatch.confir= m.alreadyUsedSpecies.help")); + int response =3D JOptionPane.showConfirmDialog( + getTopestUI(), + htmlMessage, + _("tutti.createIndividualObservationBatch.confir= m.alreadyUsedSpecies.title"), + JOptionPane.OK_CANCEL_OPTION, + JOptionPane.WARNING_MESSAGE); + + + boolean create =3D response =3D=3D JOptionPane.OK_OPTION; + + if (!create) { + return; + } + } EditCatchesUI parent =3D SwingUtil.getParentContainer(ui, Ed= itCatchesUI.class); =20 SpeciesBatchUIModel speciesBatchUIModel =3D parent.getSpecie= sTabContent().getModel(); =20 // get species rows to use (all leafs for the given species) - Species species =3D model.getSpecies(); + List leafs =3D speciesBatchUIModel.getLeafs(species); =20 @@ -608,8 +649,6 @@ sb.append("").append(_("tutti.createIndividualObservatio= nBatch.field.individualObservationLengthStepCaracteristic")).append(""); sb.append(""); =20 - String speciesStr =3D decorate(species); - for (IndividualObservationBatchRowModel rowModel : rowsToCre= ate) { sb.append(""); sb.append("").append(speciesStr).append(""); Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/conten= t/operation/catches/individualobservation/IndividualObservationBatchUIModel.j= ava =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/oper= ation/catches/individualobservation/IndividualObservationBatchUIModel.java 20= 13-10-15 09:23:49 UTC (rev 1305) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/oper= ation/catches/individualobservation/IndividualObservationBatchUIModel.java 20= 13-10-15 09:24:23 UTC (rev 1306) @@ -23,6 +23,7 @@ */ =20 import com.google.common.collect.Lists; +import com.google.common.collect.Sets; import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.ui.swing.content.operation.AbstractTuttiBatchUIModel; @@ -31,6 +32,7 @@ import org.apache.commons.collections.CollectionUtils; =20 import java.util.List; +import java.util.Set; =20 import static org.nuiton.i18n.I18n.n_; =20 @@ -93,6 +95,14 @@ return result; } =20 + public Set getSpeciesUsed() { + Set result =3D Sets.newHashSet(); + for (IndividualObservationBatchRowModel row : getRows()) { + result.add(row.getSpecies()); + } + return result; + } + //----------------------------------------------------------------------= --// //-- TabContentModel = --// //----------------------------------------------------------------------= --// Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/conten= t/operation/catches/individualobservation/create/CreateIndividualObservationB= atchUIModel.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/oper= ation/catches/individualobservation/create/CreateIndividualObservationBatchUI= Model.java 2013-10-15 09:23:49 UTC (rev 1305) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/oper= ation/catches/individualobservation/create/CreateIndividualObservationBatchUI= Model.java 2013-10-15 09:24:23 UTC (rev 1306) @@ -186,6 +186,10 @@ return isSpeciesFromBatch() && batchSpecies.get(getSpecies()) =3D=3D= 1; } =20 + public boolean isSpeciesFromBatchWithCount() { + return isSpeciesFromBatch() && batchSpecies.get(getSpecies()) >0; + } + public void setBatchSpecies(Map batchSpecies) { this.batchSpecies =3D batchSpecies; firePropertyChange(PROPERTY_BATCH_SPECIES, null, batchSpecies); Modified: trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.p= roperties =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.propert= ies 2013-10-15 09:23:49 UTC (rev 1305) +++ trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.propert= ies 2013-10-15 09:24:23 UTC (rev 1306) @@ -236,6 +236,9 @@ tutti.createIndividualObservationBatch.action.saveAndContinue=3D tutti.createIndividualObservationBatch.action.saveAndContinue.mnemonic=3D tutti.createIndividualObservationBatch.action.saveAndContinue.tip=3D +tutti.createIndividualObservationBatch.confirm.alreadyUsedSpecies.help=3D +tutti.createIndividualObservationBatch.confirm.alreadyUsedSpecies.message=3D +tutti.createIndividualObservationBatch.confirm.alreadyUsedSpecies.title=3D tutti.createIndividualObservationBatch.confirm.help=3D tutti.createIndividualObservationBatch.confirm.message=3D tutti.createIndividualObservationBatch.confirm.title=3D @@ -250,6 +253,8 @@ tutti.createIndividualObservationBatch.field.individualObservationWeight=3D tutti.createIndividualObservationBatch.field.individualObservationWeight.tip= =3D tutti.createIndividualObservationBatch.title=3D +tutti.createIndividualObservationBatch.warn.nocount=3D +tutti.createIndividualObservationBatch.warn.nocount.title=3D tutti.createMarineLitterBatch.action.cancel=3D tutti.createMarineLitterBatch.action.cancel.mnemonic=3D tutti.createMarineLitterBatch.action.cancel.tip=3D Modified: trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.p= roperties =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.propert= ies 2013-10-15 09:23:49 UTC (rev 1305) +++ trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.propert= ies 2013-10-15 09:24:23 UTC (rev 1306) @@ -234,7 +234,10 @@ tutti.createIndividualObservationBatch.action.saveAndContinue=3DCr=C3=A9er e= t Continuer tutti.createIndividualObservationBatch.action.saveAndContinue.mnemonic=3DC tutti.createIndividualObservationBatch.action.saveAndContinue.tip=3DCr=C3=A9= er et saisir une nouvelle observation indidivuelle -tutti.createIndividualObservationBatch.confirm.help=3DQue voulez-vous faire?=
  • Annuler pour rester sur cet =C3=A9cran et annuler la= cr=C3=A9ation
  • Ok pour confirmer la cr=C3=A9ation de= s donn=C3=A9es individuellesd
+tutti.createIndividualObservationBatch.confirm.alreadyUsedSpecies.help=3DQue= voulez-vous faire?
  • Annuler pour annuler la cr=C3=A9a= tion des donn=C3=A9es individuelles
  • Ok pour confirme= r la cr=C3=A9ation des donn=C3=A9es individuellesd
+tutti.createIndividualObservationBatch.confirm.alreadyUsedSpecies.message=3D= Il existe d=C3=A9j=C3=A0 des donn=C3=A9es individuelles pour l'esp=C3=A8ce %s
=C3=8Ates-vous s=C3=BBr de vouloir r=C3=A9cup=C3=A9rer = les donn=C3=A9es depuis l'onglet Esp=C3=A8ces? +tutti.createIndividualObservationBatch.confirm.alreadyUsedSpecies.title=3DCo= nfirmer la cr=C3=A9ation des donn=C3=A9es individuelles sur une esp=C3=A8ce d= =C3=A9j=C3=A0 utilis=C3=A9e +tutti.createIndividualObservationBatch.confirm.help=3DQue voulez-vous faire?=
  • Annuler pour ne pas cr=C3=A9er les donn=C3=A9es indi= viduelles
  • Ok pour confirmer la cr=C3=A9ation des don= n=C3=A9es individuellesd
tutti.createIndividualObservationBatch.confirm.message=3DVous avez demand=C3= =A9 la cr=C3=A9ation des donn=C3=A9es individuelles pour l'esp=C3=A8ce %s dep= uis les captures saisies.
%s donn=C3=A9es vont =C3=AAtre cr=C3=A9=C3=A9es= \: %s tutti.createIndividualObservationBatch.confirm.title=3DConfirmer la cr=C3=A9= ation des donn=C3=A9es individuelles tutti.createIndividualObservationBatch.field.createFromBatch=3DCr=C3=A9er le= s donn=C3=A9es depuis les captures @@ -248,6 +251,8 @@ tutti.createIndividualObservationBatch.field.individualObservationWeight=3DP= oids tutti.createIndividualObservationBatch.field.individualObservationWeight.tip= =3DPoids tutti.createIndividualObservationBatch.title=3DCr=C3=A9er une observation +tutti.createIndividualObservationBatch.warn.nocount=3DAucune donn=C3=A9e ind= ividuelle pour l'esp=C3=A8ce %s ne sera remplie pour la rais= on suivante\:
Aucune mensuration (ou d=C3=A9nombrement) renseign=C3=A9 po= ur cette esp=C3=A8ce dans l'onglet Esp=C3=A8ces. +tutti.createIndividualObservationBatch.warn.nocount.title=3DPas de mensurati= on pour l'=C3=A9esp=C3=A8ce s=C3=A9lectionn=C3=A9e tutti.createMarineLitterBatch.action.cancel=3DAnnuler tutti.createMarineLitterBatch.action.cancel.mnemonic=3DA tutti.createMarineLitterBatch.action.cancel.tip=3DAnnuler la cr=C3=A9ation d= u lot macro-d=C3=A9chet --===============3076924806227434342==--