This is an automated email from the git hooks/post-receive script. New commit to branch feature/6116 in repository tutti. See http://git.codelutin.com/tutti.git commit 9989c2e8d16d54994e01faf9bfd270c91037641c Author: Kevin Morin <morin@codelutin.com> Date: Tue Jan 12 18:24:04 2016 +0100 ajout de la conf dans l'ui (fixes #6116) --- .../java/fr/ifremer/tutti/TuttiConfiguration.java | 4 ++ .../fr/ifremer/tutti/TuttiConfigurationOption.java | 8 +++ .../i18n/tutti-persistence_en_GB.properties | 1 + .../i18n/tutti-persistence_fr_FR.properties | 1 + .../service/pupitri/PupitriSpeciesContext.java | 34 ++++----- .../swing/content/config/TuttiConfigUIHandler.java | 4 ++ .../catches/species/ImportPupitriPopupUI.css | 9 +++ .../catches/species/ImportPupitriPopupUI.jaxx | 24 +++++-- .../species/ImportPupitriPopupUIHandler.java | 82 +++++++++++++--------- .../catches/species/ImportPupitriPopupUIModel.java | 54 ++++++++++++++ .../species/actions/ImportPupitriAction.java | 16 +++-- .../resources/i18n/tutti-ui-swing_en_GB.properties | 4 ++ .../resources/i18n/tutti-ui-swing_fr_FR.properties | 4 ++ 13 files changed, 185 insertions(+), 60 deletions(-) diff --git a/tutti-persistence/src/main/java/fr/ifremer/tutti/TuttiConfiguration.java b/tutti-persistence/src/main/java/fr/ifremer/tutti/TuttiConfiguration.java index 905245c..4d95ce7 100644 --- a/tutti-persistence/src/main/java/fr/ifremer/tutti/TuttiConfiguration.java +++ b/tutti-persistence/src/main/java/fr/ifremer/tutti/TuttiConfiguration.java @@ -580,6 +580,10 @@ public class TuttiConfiguration extends ApplicationConfiguration { return applicationConfig.getOptionAsFloat(TuttiConfigurationOption.TOTAL_SORTED_WEIGHTS_DIFFERENCE_RATE.getKey()); } + public boolean getPupitriImportMissingBatches() { + return applicationConfig.getOptionAsBoolean(TuttiConfigurationOption.PUPITRI_IMPORT_MISSING_BATCHES.getKey()); + } + public String getTremieCarousselVesselId() { return applicationConfig.getOption(TuttiConfigurationOption.TREMIE_CAROUSSEL_VESSEL_ID.getKey()); } diff --git a/tutti-persistence/src/main/java/fr/ifremer/tutti/TuttiConfigurationOption.java b/tutti-persistence/src/main/java/fr/ifremer/tutti/TuttiConfigurationOption.java index 7b406a8..9cdb4f7 100644 --- a/tutti-persistence/src/main/java/fr/ifremer/tutti/TuttiConfigurationOption.java +++ b/tutti-persistence/src/main/java/fr/ifremer/tutti/TuttiConfigurationOption.java @@ -391,6 +391,14 @@ public enum TuttiConfigurationOption implements ConfigOptionDef { false ), + PUPITRI_IMPORT_MISSING_BATCHES( + "tutti.pupitriImportMissingBatches", + n("tutti.config.option.pupitriImportMissingBatches.description"), + "false", + Boolean.class, + false + ), + TREMIE_CAROUSSEL_VESSEL_ID( "tutti.tremieCarousselVessel", n("tutti.config.option.tremieCarousselVessel.description"), diff --git a/tutti-persistence/src/main/resources/i18n/tutti-persistence_en_GB.properties b/tutti-persistence/src/main/resources/i18n/tutti-persistence_en_GB.properties index 0d2bf90..5a20bce 100644 --- a/tutti-persistence/src/main/resources/i18n/tutti-persistence_en_GB.properties +++ b/tutti-persistence/src/main/resources/i18n/tutti-persistence_en_GB.properties @@ -45,6 +45,7 @@ tutti.config.option.persistence.showBatchLog.description= tutti.config.option.persistence.showMemoryUsage.description= tutti.config.option.programId.description= tutti.config.option.protocolId.description= +tutti.config.option.pupitriImportMissingBatches.description= tutti.config.option.report.backup.directory.description= tutti.config.option.report.directory.description= tutti.config.option.report.home.directory.description= diff --git a/tutti-persistence/src/main/resources/i18n/tutti-persistence_fr_FR.properties b/tutti-persistence/src/main/resources/i18n/tutti-persistence_fr_FR.properties index 935293d..d817e42 100644 --- a/tutti-persistence/src/main/resources/i18n/tutti-persistence_fr_FR.properties +++ b/tutti-persistence/src/main/resources/i18n/tutti-persistence_fr_FR.properties @@ -41,6 +41,7 @@ tutti.config.option.persistence.showBatchLog.description=Pour afficher dans les tutti.config.option.persistence.showMemoryUsage.description=Voir l'utilisation de la mémoire tutti.config.option.programId.description=Identifiant de la dernière série de campagne utilisée tutti.config.option.protocolId.description=Identifiant du dernier protocole utilisé +tutti.config.option.pupitriImportMissingBatches.description=Créer les lots mâle, femelle et indéterminé ou petit, gros s'ils ne sont pas présents dans l'import Pupitri tutti.config.option.report.backup.directory.description=Répertoire contenant les rapports générés tutti.config.option.report.directory.description=Répertoire contenant les modèles de rapports tutti.config.option.report.home.directory.description=Répertoire contenant la structure nécessaire pour les rapport diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/pupitri/PupitriSpeciesContext.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/pupitri/PupitriSpeciesContext.java index 0735f5e..ec1e0b1 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/pupitri/PupitriSpeciesContext.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/pupitri/PupitriSpeciesContext.java @@ -160,22 +160,24 @@ public class PupitriSpeciesContext implements Serializable { } // cf #6116 - switch (sign) { - case MALE: - getOrCreateSignContext(Signs.FEMALE); - getOrCreateSignContext(Signs.DEFAULT); - break; - case FEMALE: - getOrCreateSignContext(Signs.MALE); - getOrCreateSignContext(Signs.DEFAULT); - break; - - case SMALL: - getOrCreateSignContext(Signs.BIG); - break; - case BIG: - getOrCreateSignContext(Signs.SMALL); - break; + if (createMissingSigns) { + switch (sign) { + case MALE: + getOrCreateSignContext(Signs.FEMALE); + getOrCreateSignContext(Signs.DEFAULT); + break; + case FEMALE: + getOrCreateSignContext(Signs.MALE); + getOrCreateSignContext(Signs.DEFAULT); + break; + + case SMALL: + getOrCreateSignContext(Signs.BIG); + break; + case BIG: + getOrCreateSignContext(Signs.SMALL); + break; + } } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/TuttiConfigUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/TuttiConfigUIHandler.java index 8592b5b..9914e08 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/TuttiConfigUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/TuttiConfigUIHandler.java @@ -157,6 +157,10 @@ public class TuttiConfigUIHandler extends AbstractTuttiUIHandler<TuttiUIContext, .addOption(TuttiConfigurationOption.IMPORT_DB_SKIP_BACKUP) .setOptionShortLabel(t("tutti.config.option.ui.db.import.skipBackup.shortLabel")) + .addOption(TuttiConfigurationOption.PUPITRI_IMPORT_MISSING_BATCHES) + .setOptionShortLabel(t("tutti.config.option.pupitriImportMissingBatches.shortLabel")) + + ; TuttiUIContext context = getContext(); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUI.css index 3b0de25..7fa4b71 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUI.css @@ -39,6 +39,7 @@ FileEditor { #trunkFile { exts: {t("tutti.importPupitri.trunkFile.extension")}; extsDescription: {t("tutti.importPupitri.trunkFile.extension.description")}; + selectedFile: { model.getTrunkFile() }; } #carrouselFileLabel { @@ -49,6 +50,14 @@ FileEditor { #carrouselFile { exts: {t("tutti.importPupitri.carrouselFile.extension")}; extsDescription: {t("tutti.importPupitri.carrouselFile.extension.description")}; + selectedFile: { model.getCarrouselFile() }; +} + +#importMissingBatches { + text: "tutti.importPupitri.importMissingBatches"; + toolTipText: "tutti.importPupitri.importMissingBatches.tip"; + i18nMnemonic: "tutti.importPupitri.importMissingBatches.mnemonic"; + selected: { model.isImportMissingBatches() }; } #cancelButton { diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUI.jaxx index 1e88b04..44e518d 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUI.jaxx @@ -19,10 +19,12 @@ <http://www.gnu.org/licenses/gpl-3.0.html>. #L% --> -<JDialog id='importPupitriDialog' layout='{new BorderLayout()}'> +<JDialog id='importPupitriDialog' layout='{new BorderLayout()}' + implements='fr.ifremer.tutti.ui.swing.util.TuttiUI<ImportPupitriPopupUIModel, ImportPupitriPopupUIHandler>'> <import> fr.ifremer.tutti.ui.swing.TuttiUIContext + fr.ifremer.tutti.ui.swing.util.TuttiUI fr.ifremer.tutti.ui.swing.util.TuttiUIUtil jaxx.runtime.swing.editor.FileEditor @@ -30,9 +32,9 @@ <script><![CDATA[ -public ImportPupitriPopupUI(TuttiUIContext context) { - super(context.getMainUI()); - TuttiUIUtil.setApplicationContext(this, context); + +public ImportPupitriPopupUI(TuttiUI<?,?> parentUI) { + TuttiUIUtil.setParentUI(this, parentUI); } public void open() { @@ -40,6 +42,9 @@ public void open() { } ]]></script> + <ImportPupitriPopupUIModel id='model' + initializer='getContextValue(ImportPupitriPopupUIModel.class)'/> + <Table id='mainPanel' fill='both'> <row> @@ -47,7 +52,7 @@ public void open() { <JLabel id='trunkFileLabel'/> </cell> <cell weightx='1'> - <FileEditor id='trunkFile' onActionPerformed='handler.updateCarrouselFile()'/> + <FileEditor id='trunkFile' onActionPerformed='handler.setFile(event, ImportPupitriPopupUIModel.PROPERTY_TRUNK_FILE)'/> </cell> </row> @@ -56,7 +61,14 @@ public void open() { <JLabel id='carrouselFileLabel'/> </cell> <cell weightx='1'> - <FileEditor id='carrouselFile' onActionPerformed='handler.updateTrunkFile()'/> + <FileEditor id='carrouselFile' onActionPerformed='handler.setFile(event, ImportPupitriPopupUIModel.PROPERTY_CARROUSEL_FILE)'/> + </cell> + </row> + + <row> + <cell columns='2'> + <JCheckBox id='importMissingBatches' + onItemStateChanged='handler.setBoolean(event, ImportPupitriPopupUIModel.PROPERTY_IMPORT_MISSING_BATCHES)'/> </cell> </row> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUIHandler.java index d4a6cf1..869ba20 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUIHandler.java @@ -23,13 +23,16 @@ package fr.ifremer.tutti.ui.swing.content.operation.catches.species; */ import com.google.common.io.Files; -import fr.ifremer.tutti.ui.swing.TuttiUIContext; +import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil; import jaxx.runtime.SwingUtil; -import jaxx.runtime.spi.UIHandler; +import jaxx.runtime.validator.swing.SwingValidator; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import javax.swing.JComponent; +import java.beans.PropertyChangeEvent; +import java.beans.PropertyChangeListener; import java.io.File; /** @@ -37,39 +40,65 @@ import java.io.File; * @author tchemit <chemit@codelutin.com> * @since 0.2 */ -public class ImportPupitriPopupUIHandler implements UIHandler<ImportPupitriPopupUI> { +public class ImportPupitriPopupUIHandler extends AbstractTuttiUIHandler<ImportPupitriPopupUIModel, ImportPupitriPopupUI> { /** Logger. */ private static final Log log = LogFactory.getLog(ImportPupitriPopupUIHandler.class); - protected ImportPupitriPopupUI ui; - @Override public void beforeInit(ImportPupitriPopupUI ui) { - this.ui = ui; + super.beforeInit(ui); + + ImportPupitriPopupUIModel model = new ImportPupitriPopupUIModel(); + boolean pupitriImportMissingBatches = getConfig().getPupitriImportMissingBatches(); + model.setImportMissingBatches(pupitriImportMissingBatches); + + ui.setContextValue(model); } @Override public void afterInit(ImportPupitriPopupUI ui) { + initUI(ui); ui.getTrunkFile().setDialogOwner(ui); ui.getCarrouselFile().setDialogOwner(ui); ui.pack(); ui.setResizable(true); - TuttiUIUtil.initButton(TuttiUIContext.getApplicationContext(), ui, ui.getCancelButton()); - TuttiUIUtil.initButton(TuttiUIContext.getApplicationContext(), ui, ui.getValidateButton()); + getModel().addPropertyChangeListener(ImportPupitriPopupUIModel.PROPERTY_TRUNK_FILE, new PropertyChangeListener() { + + @Override + public void propertyChange(PropertyChangeEvent evt) { + updateCarrouselFile(); + } + }); + + getModel().addPropertyChangeListener(ImportPupitriPopupUIModel.PROPERTY_CARROUSEL_FILE, new PropertyChangeListener() { + @Override + public void propertyChange(PropertyChangeEvent evt) { + updateTrunkFile(); + } + }); } - private boolean objectIsAdjusting; + @Override + protected JComponent getComponentToFocus() { + return ui.getTrunkFile(); + } - public void updateTrunkFile() { + @Override + public void onCloseUI() { + resetFields(); + } - if (objectIsAdjusting) { - // avoid re-entrant code - return; - } - File carrouselFile = ui.getCarrouselFile().getSelectedFile(); + @Override + public SwingValidator<ImportPupitriPopupUIModel> getValidator() { + return null; + } + + protected void updateTrunkFile() { + + File carrouselFile = getModel().getCarrouselFile(); if (carrouselFile != null) { String nameWithoutExtension = Files.getNameWithoutExtension(carrouselFile.getName()); @@ -80,12 +109,7 @@ public class ImportPupitriPopupUIHandler implements UIHandler<ImportPupitriPopup log.info("Select from carrousel file, trunk file: " + trunkFile); } - objectIsAdjusting = true; - try { - ui.getTrunkFile().setSelectedFile(trunkFile); - } finally { - objectIsAdjusting = false; - } + getModel().setTrunkFile(trunkFile); } else { if (log.isDebugEnabled()) { @@ -96,14 +120,9 @@ public class ImportPupitriPopupUIHandler implements UIHandler<ImportPupitriPopup } - public void updateCarrouselFile() { + protected void updateCarrouselFile() { - if (objectIsAdjusting) { - // avoid re-entrant code - return; - } - - File trunkFile = ui.getTrunkFile().getSelectedFile(); + File trunkFile = getModel().getTrunkFile(); if (trunkFile != null) { String nameWithoutExtension = Files.getNameWithoutExtension(trunkFile.getName()); File carrouselFile = new File(trunkFile.getParentFile(), nameWithoutExtension + ".car"); @@ -113,12 +132,7 @@ public class ImportPupitriPopupUIHandler implements UIHandler<ImportPupitriPopup log.info("Select from trunk file, carrousel file: " + carrouselFile); } - objectIsAdjusting = true; - try { - ui.getCarrouselFile().setSelectedFile(carrouselFile); - } finally { - objectIsAdjusting = false; - } + getModel().setCarrouselFile(carrouselFile); } else { if (log.isDebugEnabled()) { diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUIModel.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUIModel.java new file mode 100644 index 0000000..8fb0586 --- /dev/null +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUIModel.java @@ -0,0 +1,54 @@ +package fr.ifremer.tutti.ui.swing.content.operation.catches.species; + +import org.jdesktop.beans.AbstractSerializableBean; + +import java.io.File; + +/** + * @author Kevin Morin (Code Lutin) + * @since 4.3 + */ +public class ImportPupitriPopupUIModel extends AbstractSerializableBean { + + public static final String PROPERTY_TRUNK_FILE = "trunkFile"; + + public static final String PROPERTY_CARROUSEL_FILE = "carrouselFile"; + + public static final String PROPERTY_IMPORT_MISSING_BATCHES = "importMissingBatches"; + + protected File trunkFile; + + protected File carrouselFile; + + protected boolean importMissingBatches; + + public File getTrunkFile() { + return trunkFile; + } + + public void setTrunkFile(File trunkFile) { + Object oldValue = getTrunkFile(); + this.trunkFile = trunkFile; + firePropertyChange(PROPERTY_TRUNK_FILE, oldValue, trunkFile); + } + + public File getCarrouselFile() { + return carrouselFile; + } + + public void setCarrouselFile(File carrouselFile) { + Object oldValue = getCarrouselFile(); + this.carrouselFile = carrouselFile; + firePropertyChange(PROPERTY_CARROUSEL_FILE, oldValue, carrouselFile); + } + + public boolean isImportMissingBatches() { + return importMissingBatches; + } + + public void setImportMissingBatches(boolean importMissingBatches) { + Object oldValue = isImportMissingBatches(); + this.importMissingBatches = importMissingBatches; + firePropertyChange(PROPERTY_IMPORT_MISSING_BATCHES, oldValue, importMissingBatches); + } +} diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportPupitriAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportPupitriAction.java index fc9fc6e..319bede 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportPupitriAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportPupitriAction.java @@ -31,6 +31,7 @@ import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModel; import fr.ifremer.tutti.service.PersistenceService; import fr.ifremer.tutti.service.pupitri.PupitriImportResult; import fr.ifremer.tutti.service.pupitri.PupitriImportService; +import fr.ifremer.tutti.ui.swing.content.operation.catches.species.ImportPupitriPopupUIModel; import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.fishing.actions.EditFishingOperationAction; import fr.ifremer.tutti.ui.swing.content.operation.FishingOperationsUI; @@ -68,6 +69,8 @@ public class ImportPupitriAction extends LongActionSupport<SpeciesBatchUIModel, protected File importedCarrouselFile; + protected boolean importMissingBatches; + protected PersistenceService persistenceService; protected EditFishingOperationAction editAction; @@ -136,10 +139,14 @@ public class ImportPupitriAction extends LongActionSupport<SpeciesBatchUIModel, if (result) { - ImportPupitriPopupUI importPupitriDialog = new ImportPupitriPopupUI(handler.getContext()); + ImportPupitriPopupUI importPupitriDialog = new ImportPupitriPopupUI(getUI()); importPupitriDialog.open(); - importedTrunkFile = importPupitriDialog.getTrunkFile().getSelectedFile(); - importedCarrouselFile = importPupitriDialog.getCarrouselFile().getSelectedFile(); + + ImportPupitriPopupUIModel importPupitriDialogModel = importPupitriDialog.getModel(); + importedTrunkFile = importPupitriDialogModel.getTrunkFile(); + importedCarrouselFile = importPupitriDialogModel.getCarrouselFile(); + importMissingBatches = importPupitriDialogModel.isImportMissingBatches(); + result = importedTrunkFile != null && importedCarrouselFile != null; } @@ -161,7 +168,7 @@ public class ImportPupitriAction extends LongActionSupport<SpeciesBatchUIModel, importedCarrouselFile, operation, catchBatch, - true); + importMissingBatches); if (importResult.isFishingOperationFound()) { @@ -174,6 +181,7 @@ public class ImportPupitriAction extends LongActionSupport<SpeciesBatchUIModel, public void releaseAction() { importedTrunkFile = null; importedCarrouselFile = null; + importMissingBatches = false; super.releaseAction(); } diff --git a/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties b/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties index 0f46a3f..81e5e18 100644 --- a/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties +++ b/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties @@ -142,6 +142,7 @@ tutti.config.option.persistence.db.directory.shortLabel= tutti.config.option.persistence.db.enumerationPath.shortLabel= tutti.config.option.persistence.db.protocol.directory.shortLabel= tutti.config.option.persistence.jdbc.url.shortLabel= +tutti.config.option.pupitriImportMissingBatches.shortLabel= tutti.config.option.service.export.backup.directory.shortLabel= tutti.config.option.service.genericFormat.export.backup.directory.shortLabel= tutti.config.option.service.report.backup.directory.shortLabel= @@ -1669,6 +1670,9 @@ tutti.importPupitri.error.fileMissing.message= tutti.importPupitri.error.fileMissing.title= tutti.importPupitri.field.carrouselFile= tutti.importPupitri.field.trunkFile= +tutti.importPupitri.importMissingBatches= +tutti.importPupitri.importMissingBatches.mnemonic= +tutti.importPupitri.importMissingBatches.tip= tutti.importPupitri.title= tutti.importPupitri.trunkFile.extension= tutti.importPupitri.trunkFile.extension.description= diff --git a/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties b/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties index 04f079d..d1febd0 100644 --- a/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties +++ b/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties @@ -124,6 +124,7 @@ tutti.config.option.persistence.db.directory.shortLabel=Répertoire de la base d tutti.config.option.persistence.db.enumerationPath.shortLabel=Chemin vers le fichier constantes adagio tutti.config.option.persistence.db.protocol.directory.shortLabel=Répertoire des protocoles tutti.config.option.persistence.jdbc.url.shortLabel=Url jdbc de connexion +tutti.config.option.pupitriImportMissingBatches.shortLabel=Créer les lots manquants lors de l'import Pupitri tutti.config.option.service.export.backup.directory.shortLabel=Répertoire des sauvegardes d'export générique tutti.config.option.service.genericFormat.export.backup.directory.shortLabel=Répertoire des sauvegardes de rapport d'import générique tutti.config.option.service.report.backup.directory.shortLabel=Répertoire des sauvegardes de rapport @@ -1585,6 +1586,9 @@ tutti.importPupitri.error.fileMissing.message=Vous devez sélectionner un fichie tutti.importPupitri.error.fileMissing.title=Fichier non renseigné tutti.importPupitri.field.carrouselFile=Fichier du carrousel tutti.importPupitri.field.trunkFile=Fichier du trémie +tutti.importPupitri.importMissingBatches=Créer les lots de sexe ou de classe de tri manquants +tutti.importPupitri.importMissingBatches.mnemonic=l +tutti.importPupitri.importMissingBatches.tip=Créer les lots mâle, femelle et indéterminé ou petit, gros s'ils ne sont pas présents dans l'import tutti.importPupitri.title=Import Pupitri tutti.importPupitri.trunkFile.extension=tnk tutti.importPupitri.trunkFile.extension.description=Fichier du trémie (.tnk) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.