This is an automated email from the git hooks/post-receive script. New commit to branch feature/5931 in repository tutti. See http://git.codelutin.com/tutti.git commit d4c39d111cfa14ddf98c25b1b2ae838a13155e58 Author: Kevin Morin <morin@codelutin.com> Date: Mon Jan 4 18:24:40 2016 +0100 deplacement des modifs de modele et d'ui dans le postsuccessaction + ajout de fixme quand les modifs sont un peu douloureuses (refs #5931) --- .../ui/swing/content/actions/ShowAboutAction.java | 2 ++ .../actions/SaveSampleCategoryModelAction.java | 20 +++++++---- .../actions/EditGearCaracteristicsAction.java | 16 ++++++--- .../content/cruise/actions/ResetCruiseAction.java | 5 ++- .../content/cruise/actions/SaveCruiseAction.java | 41 ++++++++++++++++------ .../actions/ViewGearCaracteristicsAction.java | 35 +++++++++++++----- .../actions/GenericFormatExportAction.java | 8 +++-- .../SaveGenericFormatImportReportAction.java | 8 ++++- .../SaveGenericFormatValidateReportAction.java | 8 ++++- .../content/home/actions/DeleteProtocolAction.java | 28 ++++++++------- .../actions/CancelEditCatchBatchAction.java | 1 + .../catches/actions/CleanBatchWeightsAction.java | 15 ++++---- .../actions/ImportMultiPostActionSupport.java | 2 ++ .../catches/actions/SaveCatchBatchAction.java | 29 ++++++++++----- .../benthos/actions/CreateBenthosMelagAction.java | 1 + .../benthos/actions/RemoveBenthosBatchAction.java | 2 +- .../benthos/actions/RenameBenthosBatchAction.java | 26 +++++++++----- .../SelectSpeciesForBenthosBatchAction.java | 1 + ...SpeciesForIndividualObservationBatchAction.java | 1 + .../actions/RemoveMarineLitterBatchAction.java | 6 ++-- .../species/actions/CreateSpeciesMelagAction.java | 1 + .../species/actions/ImportBigfinAction.java | 1 + .../catches/species/actions/ImportPsionAction.java | 2 ++ .../species/actions/ImportPupitriAction.java | 1 + .../species/actions/RemoveSpeciesBatchAction.java | 2 +- .../species/actions/RenameSpeciesBatchAction.java | 27 ++++++++------ .../SelectSpeciesForSpeciesBatchAction.java | 1 + .../actions/DeleteFishingOperationAction.java | 18 ++++++++-- .../actions/EditFishingOperationAction.java | 2 ++ .../actions/SaveFishingOperationAction.java | 20 ++++++++--- .../program/actions/ResetProgramAction.java | 5 ++- .../content/program/actions/SaveProgramAction.java | 40 +++++++++++++++------ .../protocol/actions/AddBenthosProtocolAction.java | 3 +- .../actions/AddCaracteristicMappingAction.java | 4 +-- .../protocol/actions/AddSpeciesProtocolAction.java | 19 +++++----- .../actions/ExportAllCaracteristicAction.java | 5 +++ .../actions/ExportProtocolBenthosAction.java | 9 +++-- .../actions/ExportProtocolCaracteristicAction.java | 9 +++-- .../actions/ExportProtocolSpeciesAction.java | 9 +++-- .../actions/ImportProtocolBenthosAction.java | 39 ++++++++++++++------ .../actions/ImportProtocolCaracteristicAction.java | 14 ++++++-- .../actions/ImportProtocolSpeciesAction.java | 35 ++++++++++++------ .../actions/LoadProtocolImportColumnsAction.java | 14 ++++++-- .../actions/RemoveBenthosProtocolAction.java | 12 ++++--- .../actions/RemoveSpeciesProtocolAction.java | 1 + .../protocol/actions/SaveProtocolAction.java | 38 +++++++++++++++----- .../protocol/actions/SelectOtherBenthosAction.java | 9 ++++- .../protocol/actions/SelectOtherSpeciesAction.java | 9 ++++- .../actions/EditCruiseInValidationUIAction.java | 2 ++ .../EditFishingOperationInValidationUIAction.java | 2 ++ .../attachment/actions/SaveAttachmentAction.java | 8 +++-- 51 files changed, 448 insertions(+), 168 deletions(-) diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ShowAboutAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ShowAboutAction.java index f20ae7d..285ec50 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ShowAboutAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/actions/ShowAboutAction.java @@ -59,6 +59,8 @@ import static org.nuiton.i18n.I18n.t; * @author tchemit <chemit@codelutin.com> * @since 1.2 */ + +//FIXME kmorin 20160104 simple action ? public class ShowAboutAction extends AbstractMainUITuttiAction { /** Logger. */ diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/SaveSampleCategoryModelAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/SaveSampleCategoryModelAction.java index 4b8daf1..cd6df20 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/SaveSampleCategoryModelAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/actions/SaveSampleCategoryModelAction.java @@ -44,15 +44,15 @@ public class SaveSampleCategoryModelAction extends LongActionSupport<EditSampleC private static final Log log = LogFactory.getLog(SaveSampleCategoryModelAction.class); + protected SampleCategoryModel bean; + public SaveSampleCategoryModelAction(EditSampleCategoryModelUIHandler handler) { super(handler, true); } @Override public void doAction() throws Exception { - EditSampleCategoryModelUIModel model = getModel(); - - SampleCategoryModel bean = model.toEntity(); + bean = getModel().toEntity(); if (log.isInfoEnabled()) { log.info("Will save sampleCategoryModel: " + bean); @@ -60,15 +60,21 @@ public class SaveSampleCategoryModelAction extends LongActionSupport<EditSampleC getConfig().setSampleCategoryModel(bean); getConfig().save(); + } - getDataContext().setSampleCategoryModel(bean); + @Override + public void postSuccessAction() { + super.postSuccessAction(); - model.setModify(false); + getDataContext().setSampleCategoryModel(bean); + getModel().setModify(false); + sendMessage(t("tutti.editSampleCategoryModel.saved")); } @Override - public void postSuccessAction() { - sendMessage(t("tutti.editSampleCategoryModel.saved")); + protected void releaseAction() { + super.releaseAction(); + bean = null; } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/EditGearCaracteristicsAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/EditGearCaracteristicsAction.java index c5bf75c..4980e97 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/EditGearCaracteristicsAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/EditGearCaracteristicsAction.java @@ -46,6 +46,8 @@ public class EditGearCaracteristicsAction extends LongActionSupport<EditCruiseUI protected final PersistenceService persistenceService; + protected GearWithOriginalRankOrder gearToView; + public EditGearCaracteristicsAction(EditCruiseUIHandler handler) { super(handler, false); persistenceService = getContext().getPersistenceService(); @@ -53,8 +55,6 @@ public class EditGearCaracteristicsAction extends LongActionSupport<EditCruiseUI @Override public void doAction() throws Exception { - GearCaracteristicsEditorUI editor = getUI().getGearCaracteristicsEditor(); - editor.getModel().setEditable(true); GearWithOriginalRankOrder gear = EditCruiseUIHandler.GEAR_EDIT_CONTEXT.getContextValue(getUI()); @@ -65,10 +65,18 @@ public class EditGearCaracteristicsAction extends LongActionSupport<EditCruiseUI gear.getId(), gear.getOriginalRankOrder()); - GearWithOriginalRankOrder gearToView = - GearWithOriginalRankOrders.newGearWithOriginalRankOrder(gear); + gearToView = GearWithOriginalRankOrders.newGearWithOriginalRankOrder(gear); gearToView.setCaracteristics(caracteristics); + } + + @Override + public void postSuccessAction() { + super.postSuccessAction(); + + GearCaracteristicsEditorUI editor = getUI().getGearCaracteristicsEditor(); + editor.getModel().setEditable(true); + if (log.isInfoEnabled()) { log.info("Will edit gear " + decorate(gearToView) + " with " + gearToView.getCaracteristics().size() + " caracteristics."); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/ResetCruiseAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/ResetCruiseAction.java index 00f14da..2c81a93 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/ResetCruiseAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/ResetCruiseAction.java @@ -52,13 +52,16 @@ public class ResetCruiseAction extends LongActionSupport<EditCruiseUIModel, Edit Cruise cruise = getDataContext().getCruise(); + //FIXME kmorin 20160104 ici ou dans le post success ? getHandler().reloadCruise(cruise); - getModel().setModify(false); } @Override public void postSuccessAction() { + super.postSuccessAction(); + + getModel().setModify(false); sendMessage(t("tutti.resetCruise.action.cruiseReloaded", decorate(getDataContext().getCruise()))); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/SaveCruiseAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/SaveCruiseAction.java index 79a063e..ebea3ee 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/SaveCruiseAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/SaveCruiseAction.java @@ -59,6 +59,10 @@ public class SaveCruiseAction extends LongActionSupport<EditCruiseUIModel, EditC protected boolean updateGear; + protected Cruise saved; + + protected Boolean createCruise; + public SaveCruiseAction(EditCruiseUIHandler handler) { super(handler, true); persistenceService = getContext().getPersistenceService(); @@ -147,21 +151,34 @@ public class SaveCruiseAction extends LongActionSupport<EditCruiseUIModel, EditC @Override public void doAction() throws Exception { - TuttiUIContext context = getContext(); EditCruiseUIModel model = getModel(); Cruise bean = model.toBean(); - Cruise saved; - boolean createCruise = TuttiEntities.isNew(bean); + createCruise = TuttiEntities.isNew(bean); + if (createCruise) { saved = persistenceService.createCruise(bean); - model.setId(saved.getId()); - sendMessage(t("tutti.flash.info.cruiseCreated", bean.getName())); } else { saved = persistenceService.saveCruise(bean, updateVessel, updateGear); - sendMessage(t("tutti.flash.info.cruiseSaved", bean.getName())); + } + + } + + @Override + public void postSuccessAction() { + super.postSuccessAction(); + + EditCruiseUIModel model = getModel(); + TuttiUIContext context = getContext(); + + if (createCruise) { + + model.setId(saved.getId()); + sendMessage(t("tutti.flash.info.cruiseCreated", saved.getName())); + } else { + sendMessage(t("tutti.flash.info.cruiseSaved", saved.getName())); } context.setProgramId(saved.getProgram().getId()); @@ -180,10 +197,6 @@ public class SaveCruiseAction extends LongActionSupport<EditCruiseUIModel, EditC // update SynchronizationStatus model.setSynchronizationStatus(saved.getSynchronizationStatus()); model.setModify(false); - } - - @Override - public void postSuccessAction() { getContext().getMainUI().getHandler().setBodyTitle( EditCruiseUIHandler.getTitle(true)); @@ -191,4 +204,12 @@ public class SaveCruiseAction extends LongActionSupport<EditCruiseUIModel, EditC ImageIcon icon = TuttiUIUtil.getCruiseIcon(getModel()); getContext().getMainUI().getBody().setLeftDecoration(new JLabel(icon)); } + + @Override + protected void releaseAction() { + super.releaseAction(); + + saved = null; + createCruise = null; + } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/ViewGearCaracteristicsAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/ViewGearCaracteristicsAction.java index 656bdb4..e8ae76d 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/ViewGearCaracteristicsAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/actions/ViewGearCaracteristicsAction.java @@ -46,6 +46,10 @@ public class ViewGearCaracteristicsAction extends LongActionSupport<EditCruiseUI protected final PersistenceService persistenceService; + protected CaracteristicMap caracteristics; + + protected GearWithOriginalRankOrder gear; + public ViewGearCaracteristicsAction(EditCruiseUIHandler handler) { super(handler, false); persistenceService = getContext().getPersistenceService(); @@ -53,17 +57,22 @@ public class ViewGearCaracteristicsAction extends LongActionSupport<EditCruiseUI @Override public void doAction() throws Exception { - GearCaracteristicsEditorUI editor = getUI().getGearCaracteristicsEditor(); - editor.getModel().setEditable(false); - GearWithOriginalRankOrder gear = - EditCruiseUIHandler.GEAR_EDIT_CONTEXT.getContextValue(getUI()); + gear = EditCruiseUIHandler.GEAR_EDIT_CONTEXT.getContextValue(getUI()); - CaracteristicMap caracteristics = - persistenceService.getGearCaracteristics( - getDataContext().getCruise().getId(), - gear.getId(), - gear.getOriginalRankOrder()); + caracteristics = persistenceService.getGearCaracteristics( + getDataContext().getCruise().getId(), + gear.getId(), + gear.getOriginalRankOrder()); + + } + + @Override + public void postSuccessAction() { + super.postSuccessAction(); + + GearCaracteristicsEditorUI editor = getUI().getGearCaracteristicsEditor(); + editor.getModel().setEditable(false); GearWithOriginalRankOrder gearToEdit = GearWithOriginalRankOrders.newGearWithOriginalRankOrder(gear); @@ -78,4 +87,12 @@ public class ViewGearCaracteristicsAction extends LongActionSupport<EditCruiseUI getUI().getMainPanelLayout().setSelected(EditCruiseUIHandler.GEAR_CARACTERISTICS_CARD); } + + @Override + protected void releaseAction() { + super.releaseAction(); + + caracteristics = null; + gear = null; + } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/GenericFormatExportAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/GenericFormatExportAction.java index 2332b92..02c5c37 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/GenericFormatExportAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/GenericFormatExportAction.java @@ -116,15 +116,19 @@ public class GenericFormatExportAction extends LongActionSupport<GenericFormatEx exportResult = service.export(configuration, getProgressionModel()); - sendMessage(t("tutti.genericFormat.export.action.success", exportFile)); - if (!exportResult.isSuccess()) { List<String> errorsByCruise = exportResult.getErrorsByCruise(); String errorMessage = t("tutti.exportCruise.action.exportErrors", program.getName(), Joiner.on('\n').join(errorsByCruise)); throw new ApplicationBusinessException(errorMessage); } + } + @Override + public void postSuccessAction() { + super.postSuccessAction(); + + sendMessage(t("tutti.genericFormat.export.action.success", exportFile)); } @Override diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/SaveGenericFormatImportReportAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/SaveGenericFormatImportReportAction.java index 64a3c98..d38e1ef 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/SaveGenericFormatImportReportAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/SaveGenericFormatImportReportAction.java @@ -88,11 +88,17 @@ public class SaveGenericFormatImportReportAction extends LongActionSupport<Gener File reportFile = getModel().getImportReportFile(); ApplicationIOUtil.copyFile(reportFile, targetFile, t("tutti.io.error.copyFile")); - sendMessage(t("tutti.genericFormat.importReportFile.saved", targetFile)); } @Override + public void postSuccessAction() { + super.postSuccessAction(); + + sendMessage(t("tutti.genericFormat.importReportFile.saved", targetFile)); + } + + @Override protected void releaseAction() { targetFile = null; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/SaveGenericFormatValidateReportAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/SaveGenericFormatValidateReportAction.java index aa67e31..3f243d9 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/SaveGenericFormatValidateReportAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/genericformat/actions/SaveGenericFormatValidateReportAction.java @@ -88,11 +88,17 @@ public class SaveGenericFormatValidateReportAction extends LongActionSupport<Gen File reportFile = getModel().getValidateReportFile(); ApplicationIOUtil.copyFile(reportFile, targetFile, t("tutti.io.error.copyFile")); - sendMessage(t("tutti.genericFormat.validateReportFile.saved", targetFile)); } @Override + public void postSuccessAction() { + super.postSuccessAction(); + + sendMessage(t("tutti.genericFormat.validateReportFile.saved", targetFile)); + } + + @Override protected void releaseAction() { targetFile = null; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/DeleteProtocolAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/DeleteProtocolAction.java index c545cc3..d7cd83f 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/DeleteProtocolAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/actions/DeleteProtocolAction.java @@ -78,28 +78,30 @@ public class DeleteProtocolAction extends LongActionSupport<SelectCruiseUIModel, PersistenceService service = getContext().getPersistenceService(); service.deleteProtocol(id); + } + + @Override + public void postSuccessAction() { + + getHandler().resetComboBoxAction(getUI().getEditProtocolComboBox()); + super.postSuccessAction(); + + SelectCruiseUIModel model = getModel(); + + TuttiProtocol protocol = model.getProtocol(); - getModel().setProtocol(null); + model.setProtocol(null); - List<TuttiProtocol> protocols = getModel().getProtocols(); + List<TuttiProtocol> protocols = model.getProtocols(); protocols.remove(protocol); if (log.isInfoEnabled()) { log.info("nb protocols: " + protocols.size()); } // reset (will clear combo-box) - getModel().setProtocols(null); + model.setProtocols(null); // set new list - getModel().setProtocols(protocols); - - } - - @Override - public void postSuccessAction() { - - getHandler().resetComboBoxAction(getUI().getEditProtocolComboBox()); - super.postSuccessAction(); - + model.setProtocols(protocols); } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/CancelEditCatchBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/CancelEditCatchBatchAction.java index f8f7d4a..0d852b5 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/CancelEditCatchBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/CancelEditCatchBatchAction.java @@ -83,6 +83,7 @@ public class CancelEditCatchBatchAction extends LongActionSupport<EditCatchesUIM FishingOperation operation = getModel().getFishingOperation(); + //FIXME kmorin 20160104 à faire dans le doAction ou le postSuccessAction ? getEditAction().loadCatchBatch(operation); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/CleanBatchWeightsAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/CleanBatchWeightsAction.java index 7a03978..723038c 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/CleanBatchWeightsAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/CleanBatchWeightsAction.java @@ -26,11 +26,11 @@ import com.google.common.collect.Multimap; import fr.ifremer.tutti.persistence.InvalidBatchModelException; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.service.catches.WeightCleaningService; -import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -112,6 +112,14 @@ public class CleanBatchWeightsAction extends LongActionSupport<EditCatchesUIMode cleaningService.cleanFishingOperation(fishingOperation.getId()); + } + + @Override + public void postSuccessAction() { + super.postSuccessAction(); + + FishingOperation fishingOperation = getModel().getFishingOperation(); + try { getUI().getSpeciesTabContent().getHandler().selectFishingOperation(fishingOperation); @@ -132,11 +140,6 @@ public class CleanBatchWeightsAction extends LongActionSupport<EditCatchesUIMode log.debug("Invalid sample category model for benthos batches", e); } } - } - - @Override - public void postSuccessAction() { - super.postSuccessAction(); sendMessage(t("tutti.editCatchBatch.action.cleanWeights.done", nbErrors)); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ImportMultiPostActionSupport.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ImportMultiPostActionSupport.java index f61d775..cbc0b8c 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ImportMultiPostActionSupport.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/ImportMultiPostActionSupport.java @@ -200,6 +200,7 @@ public abstract class ImportMultiPostActionSupport<M extends AbstractBean, UI ex progressionModel.increments("Réinitilisation de la capture"); + //FIXME kmorin 20160104 à faire ici ou dans le post success ? editCatchesUI.getHandler().getCatchBatchMonitor().clearModified(); progressionModel.increments("Lancement de l'import"); @@ -212,6 +213,7 @@ public abstract class ImportMultiPostActionSupport<M extends AbstractBean, UI ex notImportedData = importBatches(multiPostImportExportService, file, operation); + //FIXME kmorin 20160104 à faire ici ou dans le post success ? FishingOperationsUI parentUI = getUI().getParentContainer(FishingOperationsUI.class); EditFishingOperationAction editAction = getActionFactory().createLogicAction(parentUI.getHandler(), EditFishingOperationAction.class); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/SaveCatchBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/SaveCatchBatchAction.java index 6f9fcd1..84a6ebb 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/SaveCatchBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/actions/SaveCatchBatchAction.java @@ -32,6 +32,8 @@ import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import static org.nuiton.i18n.I18n.t; + /** * To save a {@link CatchBatch}. * @@ -51,6 +53,8 @@ public class SaveCatchBatchAction extends LongActionSupport<EditCatchesUIModel, */ protected boolean updateUI; + protected boolean mustSave; + public SaveCatchBatchAction(EditCatchesUIHandler handler) { super(handler, true); } @@ -75,7 +79,7 @@ public class SaveCatchBatchAction extends LongActionSupport<EditCatchesUIModel, EditCatchesUIModel beanToSave = monitor.getBean(); // must save when bean is new or was modifiy and is valid - boolean mustSave = (beanToSave.isCreate() || beanToSave.isModify()) && + mustSave = (beanToSave.isCreate() || beanToSave.isModify()) && beanToSave.isValid(); if (mustSave) { @@ -90,19 +94,26 @@ public class SaveCatchBatchAction extends LongActionSupport<EditCatchesUIModel, " was modified, will save it."); } - //FIXME I18n - sendMessage( - "[ Captures - Caractéristiques générales ] " + - "Sauvegarde des modifications du résumé de la capture."); - persistenceService.saveCatchBatch(catchBatch); + } + + + } + @Override + public void postSuccessAction() { + super.postSuccessAction(); + + if (mustSave) { + //FIXME I18n + sendMessage(t("tutti.catches.saveCatchBatch.success.message")); +// "[ Captures - Caractéristiques générales ] " + +// "Sauvegarde des modifications du résumé de la capture."); + + TuttiBeanMonitor<EditCatchesUIModel> monitor = handler.getCatchBatchMonitor(); monitor.clearModified(); getModel().setModify(false); } - getUI().getSpeciesTabContent().getHandler().clearTableSelection(); - } - } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/CreateBenthosMelagAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/CreateBenthosMelagAction.java index 83eb1eb..b302839 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/CreateBenthosMelagAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/CreateBenthosMelagAction.java @@ -228,6 +228,7 @@ public class CreateBenthosMelagAction extends LongActionSupport<BenthosBatchUIMo } // sauvegarde des lots + //FIXME kmorin 20160104 à faire ici ou dans le post success ? getHandler().saveRows(selectedRows.keySet()); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/RemoveBenthosBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/RemoveBenthosBatchAction.java index 7a42e79..a079322 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/RemoveBenthosBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/RemoveBenthosBatchAction.java @@ -144,7 +144,7 @@ public class RemoveBenthosBatchAction extends LongActionSupport<BenthosBatchUIMo persistenceService.deleteBenthosBatch(selectedBatchId); - + //FIXME kmorin 20160104 bouger ça dans le postsuccess if (batchRoot) { // update speciesUsed handler.removeFromSpeciesUsed(selectedBatch); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/RenameBenthosBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/RenameBenthosBatchAction.java index 2d82743..926bd1f 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/RenameBenthosBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/actions/RenameBenthosBatchAction.java @@ -61,10 +61,7 @@ public class RenameBenthosBatchAction extends LongActionSupport<BenthosBatchUIMo public boolean prepareAction() throws Exception { boolean result = super.prepareAction(); - BenthosBatchTableModel tableModel = handler.getTableModel(); - JXTable table = handler.getTable(); - int selectedRowIndex = SwingUtil.getSelectedModelRow(table); - BenthosBatchRowModel row = tableModel.getEntry(selectedRowIndex); + BenthosBatchRowModel row = getSelectedRow(); BenthosBatchUIModel model = handler.getModel(); List<Species> speciesList = Lists.newArrayList( @@ -90,14 +87,18 @@ public class RenameBenthosBatchAction extends LongActionSupport<BenthosBatchUIMo @Override public void doAction() throws Exception { - BenthosBatchTableModel tableModel = handler.getTableModel(); - JXTable table = handler.getTable(); - int selectedRowIndex = SwingUtil.getSelectedModelRow(table); - BenthosBatchRowModel row = tableModel.getEntry(selectedRowIndex); - + BenthosBatchRowModel row = getSelectedRow(); PersistenceService persistenceService = getContext().getPersistenceService(); persistenceService.changeBenthosBatchSpecies(row.getId(), selectedSpecies); + } + + @Override + public void postSuccessAction() { + super.postSuccessAction(); + + BenthosBatchRowModel row = getSelectedRow(); + SampleCategory<?> firstSampleCategory = row.getFirstSampleCategory(); Serializable categoryValue = firstSampleCategory.getCategoryValue(); Collection<Species> speciesUsed = getModel().getSpeciesUsed() @@ -107,6 +108,13 @@ public class RenameBenthosBatchAction extends LongActionSupport<BenthosBatchUIMo speciesUsed.add(selectedSpecies); } + protected BenthosBatchRowModel getSelectedRow() { + BenthosBatchTableModel tableModel = handler.getTableModel(); + JXTable table = handler.getTable(); + int selectedRowIndex = SwingUtil.getSelectedModelRow(table); + return tableModel.getEntry(selectedRowIndex); + } + protected void changeChildrenSpecies(BenthosBatchRowModel row, Species species) { row.setSpecies(species); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/actions/SelectSpeciesForBenthosBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/actions/SelectSpeciesForBenthosBatchAction.java index 66d6498..87e50d7 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/actions/SelectSpeciesForBenthosBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/actions/SelectSpeciesForBenthosBatchAction.java @@ -89,6 +89,7 @@ public class SelectSpeciesForBenthosBatchAction extends LongActionSupport<Create String taxonId = String.valueOf(selectedSpecies.getReferenceTaxonId()); selectedSpecies = referentsById.get(taxonId); String decoratedReferent = decorate(selectedSpecies, DecoratorService.FROM_PROTOCOL); + //FIXME kmorin 20160104 post success ? sendMessage(t("tutti.flash.info.species.replaced", decoratedSynonym, decoratedReferent)); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/SelectSpeciesForIndividualObservationBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/SelectSpeciesForIndividualObservationBatchAction.java index 08f6bfe..cba2ace 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/SelectSpeciesForIndividualObservationBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/actions/SelectSpeciesForIndividualObservationBatchAction.java @@ -89,6 +89,7 @@ public class SelectSpeciesForIndividualObservationBatchAction extends LongAction String taxonId = String.valueOf(selectedSpecies.getReferenceTaxonId()); selectedSpecies = referentsById.get(taxonId); String decoratedReferent = decorate(selectedSpecies, DecoratorService.FROM_PROTOCOL); + //FIXME kmorin 20160104 post success ? sendMessage(t("tutti.flash.info.species.replaced", decoratedSynonym, decoratedReferent)); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/actions/RemoveMarineLitterBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/actions/RemoveMarineLitterBatchAction.java index d67302e..f83faed 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/actions/RemoveMarineLitterBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/actions/RemoveMarineLitterBatchAction.java @@ -107,8 +107,6 @@ public class RemoveMarineLitterBatchAction extends LongActionSupport<MarineLitte persistenceService.deleteMarineLitterBatch(id); } - // update speciesUsed - handler.removeFromMarineLitterCategoriesUsed(selectedBatch); } @Override @@ -119,6 +117,10 @@ public class RemoveMarineLitterBatchAction extends LongActionSupport<MarineLitte MarineLitterBatchTableModel tableModel = handler.getTableModel(); + // update speciesUsed + MarineLitterBatchRowModel selectedBatch = tableModel.getEntry(rowIndex); + handler.removeFromMarineLitterCategoriesUsed(selectedBatch); + tableModel.removeRow(rowIndex); TuttiUIUtil.selectFirstCellOnFirstRowAndStopEditing(table); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/CreateSpeciesMelagAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/CreateSpeciesMelagAction.java index 36fc93e..467df0c 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/CreateSpeciesMelagAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/CreateSpeciesMelagAction.java @@ -222,6 +222,7 @@ public class CreateSpeciesMelagAction extends LongActionSupport<SpeciesBatchUIMo } // sauvegarde des lots + //FIXME kmorin 20160104 à faire ici ou dans le post success ? getHandler().saveRows(selectedRows.keySet()); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportBigfinAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportBigfinAction.java index fdd4e03..2de01eb 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportBigfinAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportBigfinAction.java @@ -100,6 +100,7 @@ public class ImportBigfinAction extends LongActionSupport<SpeciesBatchUIModel, S if (importResult.isDone()) { + //FIXME kmorin 20160104 à faire ici ou dans le post success ? // reload operation getEditAction().loadCatchBatch(operation); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportPsionAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportPsionAction.java index 0bf0a75..70837be 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportPsionAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/ImportPsionAction.java @@ -101,6 +101,8 @@ public class ImportPsionAction extends LongActionSupport<SpeciesBatchUIModel, Sp operation, catchBatch); + + // FIXME kmorin 20160401 à faire ici ou dans le post success ? if (importResult.isDone()) { // reload operation 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 74162aa..d6e0116 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 @@ -162,6 +162,7 @@ public class ImportPupitriAction extends LongActionSupport<SpeciesBatchUIModel, operation, catchBatch); + // FIXME kmorin 20160401 à faire ici ou dans le post success ? if (importResult.isFishingOperationFound()) { // reload operation diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/RemoveSpeciesBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/RemoveSpeciesBatchAction.java index 3fdf4f3..d7d3e6c 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/RemoveSpeciesBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/RemoveSpeciesBatchAction.java @@ -143,7 +143,7 @@ public class RemoveSpeciesBatchAction extends LongActionSupport<SpeciesBatchUIMo // remove parent batch (will destroy all his childs from db) persistenceService.deleteSpeciesBatch(selectedBatchId); - + //FIXME kmorin 20160104 bouger ça dans le postsuccess if (batchRoot) { // update speciesUsed handler.removeFromSpeciesUsed(selectedBatch); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/RenameSpeciesBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/RenameSpeciesBatchAction.java index 1b3080d..a130762 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/RenameSpeciesBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/actions/RenameSpeciesBatchAction.java @@ -27,12 +27,12 @@ import fr.ifremer.tutti.persistence.entities.data.SampleCategory; import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.service.PersistenceService; -import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchRowModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchTableModel; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUIHandler; import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUIModel; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import jaxx.runtime.SwingUtil; import org.jdesktop.swingx.JXTable; @@ -61,10 +61,7 @@ public class RenameSpeciesBatchAction extends LongActionSupport<SpeciesBatchUIMo public boolean prepareAction() throws Exception { boolean result = super.prepareAction(); - SpeciesBatchTableModel tableModel = handler.getTableModel(); - JXTable table = handler.getTable(); - int selectedRowIndex = SwingUtil.getSelectedModelRow(table); - SpeciesBatchRowModel row = tableModel.getEntry(selectedRowIndex); + SpeciesBatchRowModel row = getSelectedRow(); SpeciesBatchUIModel model = handler.getModel(); List<Species> speciesList = Lists.newArrayList( @@ -80,6 +77,13 @@ public class RenameSpeciesBatchAction extends LongActionSupport<SpeciesBatchUIMo return result; } + protected SpeciesBatchRowModel getSelectedRow() { + SpeciesBatchTableModel tableModel = handler.getTableModel(); + JXTable table = handler.getTable(); + int selectedRowIndex = SwingUtil.getSelectedModelRow(table); + return tableModel.getEntry(selectedRowIndex); + } + @Override public void releaseAction() { selectedSpecies = null; @@ -89,13 +93,16 @@ public class RenameSpeciesBatchAction extends LongActionSupport<SpeciesBatchUIMo @Override public void doAction() throws Exception { - SpeciesBatchTableModel tableModel = handler.getTableModel(); - JXTable table = handler.getTable(); - int selectedRowIndex = SwingUtil.getSelectedModelRow(table); - SpeciesBatchRowModel row = tableModel.getEntry(selectedRowIndex); - + SpeciesBatchRowModel row = getSelectedRow(); PersistenceService persistenceService = getContext().getPersistenceService(); persistenceService.changeSpeciesBatchSpecies(row.getId(), selectedSpecies); + } + + @Override + public void postSuccessAction() { + super.postSuccessAction(); + + SpeciesBatchRowModel row = getSelectedRow(); SampleCategory<?> firstSampleCategory = row.getFirstSampleCategory(); Serializable categoryValue = firstSampleCategory.getCategoryValue(); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/actions/SelectSpeciesForSpeciesBatchAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/actions/SelectSpeciesForSpeciesBatchAction.java index 1fe2320..52f4d76 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/actions/SelectSpeciesForSpeciesBatchAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/actions/SelectSpeciesForSpeciesBatchAction.java @@ -89,6 +89,7 @@ public class SelectSpeciesForSpeciesBatchAction extends LongActionSupport<Create String taxonId = String.valueOf(selectedSpecies.getReferenceTaxonId()); selectedSpecies = referentsById.get(taxonId); String decoratedReferent = decorate(selectedSpecies, DecoratorService.FROM_PROTOCOL); + //FIXME kmorin 20160104 post success ? sendMessage(t("tutti.flash.info.species.replaced", decoratedSynonym, decoratedReferent)); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/DeleteFishingOperationAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/DeleteFishingOperationAction.java index 5d5e246..6c62286 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/DeleteFishingOperationAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/DeleteFishingOperationAction.java @@ -45,6 +45,8 @@ public class DeleteFishingOperationAction extends LongActionSupport<FishingOpera private static final Log log = LogFactory.getLog(DeleteFishingOperationAction.class); + protected FishingOperation fishingOperation; + public DeleteFishingOperationAction(FishingOperationsUIHandler handler) { super(handler, true); setActionDescription( @@ -67,8 +69,7 @@ public class DeleteFishingOperationAction extends LongActionSupport<FishingOpera @Override public void doAction() throws Exception { - FishingOperation fishingOperation = - getModel().getSelectedFishingOperation(); + fishingOperation = getModel().getSelectedFishingOperation(); if (log.isInfoEnabled()) { log.info("Will delete fishingOperation: " + fishingOperation); @@ -76,6 +77,13 @@ public class DeleteFishingOperationAction extends LongActionSupport<FishingOpera getContext().getPersistenceService().deleteFishingOperation(fishingOperation.getId()); + + } + + @Override + public void postSuccessAction() { + super.postSuccessAction(); + FishingOperationsUIModel model = getModel(); // unselect removed fishing operation @@ -86,4 +94,10 @@ public class DeleteFishingOperationAction extends LongActionSupport<FishingOpera sendMessage(t("tutti.editFishingOperation.message.operation.deleted", decorate(fishingOperation))); } + + @Override + protected void releaseAction() { + super.releaseAction(); + fishingOperation = null; + } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/EditFishingOperationAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/EditFishingOperationAction.java index f383b9e..f2b6087 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/EditFishingOperationAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/EditFishingOperationAction.java @@ -383,6 +383,8 @@ public class EditFishingOperationAction extends LongActionSupport<FishingOperati } // now fishing operation is edited + + //FIXME kmorin 20160104 à faire ici ou dans le post success ? model.setEditFishingOperation(fishingOperation); loadFishingOperation(fishingOperation); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/SaveFishingOperationAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/SaveFishingOperationAction.java index 480ee36..9de9f6e 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/SaveFishingOperationAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/actions/SaveFishingOperationAction.java @@ -40,6 +40,8 @@ import fr.ifremer.tutti.ui.swing.content.operation.fishing.VesselUseFeatureTabUI import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import static org.nuiton.i18n.I18n.t; + /** * Saves a fishing operation and potentially sets another screen or switch to another tab. * @@ -110,13 +112,15 @@ public class SaveFishingOperationAction extends LongActionSupport<EditFishingOpe } else if (modelClass.isAssignableFrom(GearUseFeatureTabUIModel.class)) { toSave.setGearUseFeatures(caracteristics); } + //FIXME kmorin 20160104 dans le post success subModel.setModify(false); } - sendMessage( - "[ Trait - Caractéristiques générales ] " + - "Sauvegarde des modifications de " + decorate(toSave) + - "." + //FIXME i18n + sendMessage(t("tutti.fishingOperations.saveFishingOperation.action.success") +// "[ Trait - Caractéristiques générales ] " + +// "Sauvegarde des modifications de " + decorate(toSave) + +// "." ); if (log.isInfoEnabled()) { @@ -124,7 +128,6 @@ public class SaveFishingOperationAction extends LongActionSupport<EditFishingOpe " was modified, will save it."); } - saveFishingOperation(toSave); } @@ -161,27 +164,34 @@ public class SaveFishingOperationAction extends LongActionSupport<EditFishingOpe catchBatch.setFishingOperation(savedFishingOperation); service.createCatchBatch(catchBatch); + //FIXME kmorin 20160104 dans le post success // add new created fishing operation to list model.addFishingOperation(savedFishingOperation); + //FIXME kmorin 20160104 dans le post success // select it (will reload editing fishing operation) model.setSelectedFishingOperation(savedFishingOperation); } else { + //FIXME kmorin 20160104 dans le post success model.setEditionAdjusting(true); try { // save fishing operation savedFishingOperation = service.saveFishingOperation(toSave); + //FIXME kmorin 20160104 dans le post success model.setSelectedFishingOperation(null); + //FIXME kmorin 20160104 dans le post success // reinject it in model model.updateFishingOperation(savedFishingOperation); + //FIXME kmorin 20160104 dans le post success model.setSelectedFishingOperation(savedFishingOperation); } finally { + //FIXME kmorin 20160104 dans le post success model.setEditionAdjusting(false); } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/actions/ResetProgramAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/actions/ResetProgramAction.java index f2d117a..7dd29e5 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/actions/ResetProgramAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/actions/ResetProgramAction.java @@ -52,13 +52,16 @@ public class ResetProgramAction extends LongActionSupport<EditProgramUIModel, Ed Program program = getDataContext().getProgram(); + //FIXME kmorin 20160104 ici ou dans le post success ? getHandler().reloadProgram(program); - getModel().setModify(false); } @Override public void postSuccessAction() { + super.postSuccessAction(); + + getModel().setModify(false); sendMessage(t("tutti.resetProgram.action.programReloaded", decorate(getDataContext().getProgram()))); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/actions/SaveProgramAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/actions/SaveProgramAction.java index 94ccc9d..2bb42d3 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/actions/SaveProgramAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/actions/SaveProgramAction.java @@ -26,10 +26,10 @@ import fr.ifremer.tutti.persistence.entities.TuttiEntities; import fr.ifremer.tutti.persistence.entities.data.Program; import fr.ifremer.tutti.service.PersistenceService; import fr.ifremer.tutti.ui.swing.TuttiUIContext; -import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.program.EditProgramUI; import fr.ifremer.tutti.ui.swing.content.program.EditProgramUIHandler; import fr.ifremer.tutti.ui.swing.content.program.EditProgramUIModel; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import static org.nuiton.i18n.I18n.t; @@ -40,6 +40,10 @@ import static org.nuiton.i18n.I18n.t; */ public class SaveProgramAction extends LongActionSupport<EditProgramUIModel, EditProgramUI, EditProgramUIHandler> { + protected Program saved; + + protected Boolean newProgram; + public SaveProgramAction(EditProgramUIHandler handler) { super(handler, true); } @@ -54,26 +58,42 @@ public class SaveProgramAction extends LongActionSupport<EditProgramUIModel, Edi Program bean = model.toBean(); - Program saved; - if (TuttiEntities.isNew(bean)) { + newProgram = TuttiEntities.isNew(bean); + + if (newProgram) { saved = persistenceService.createProgram(bean); - model.setId(saved.getId()); - sendMessage(t("tutti.flash.info.programCreated", bean.getName())); } else { saved = persistenceService.saveProgram(bean); - sendMessage(t("tutti.flash.info.programSaved", bean.getName())); } - - context.setProgramId(saved.getId()); - - model.setModify(false); } @Override public void postSuccessAction() { + super.postSuccessAction(); + + TuttiUIContext context = getContext(); + EditProgramUIModel model = getModel(); + + if (newProgram) { + + model.setId(saved.getId()); + sendMessage(t("tutti.flash.info.programCreated", saved.getName())); + } else { + sendMessage(t("tutti.flash.info.programSaved", saved.getName())); + } + + context.setProgramId(saved.getId()); + + model.setModify(false); getContext().getMainUI().getHandler().setBodyTitle( EditProgramUIHandler.getTitle(true)); } + @Override + protected void releaseAction() { + super.releaseAction(); + newProgram = null; + saved = null; + } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/AddBenthosProtocolAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/AddBenthosProtocolAction.java index fe6cd4b..02b749f 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/AddBenthosProtocolAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/AddBenthosProtocolAction.java @@ -79,13 +79,14 @@ public class AddBenthosProtocolAction extends LongActionSupport<EditProtocolUIMo // add new row to model (do it after combo stuff for ui best display) newRow = tableModel.createNewRow(); newRow.setSpecies(species); - getModel().getBenthosRow().add(newRow); } @Override public void postSuccessAction() { super.postSuccessAction(); + getModel().getBenthosRow().add(newRow); + // update comboboxes getUI().getBenthosComboBox().removeItem(species); getUI().getSpeciesComboBox().removeItem(species); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/AddCaracteristicMappingAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/AddCaracteristicMappingAction.java index 123c53a..1d0237d 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/AddCaracteristicMappingAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/AddCaracteristicMappingAction.java @@ -64,14 +64,14 @@ public class AddCaracteristicMappingAction extends LongActionSupport<EditProtoco // add new row to model (do it after combo stuff for ui best display) newRow = handler.createEditProtocolCaracteristicsRowModel(); newRow.setPsfm(caracteristic); - - getModel().addCaracteristicMappingRow(newRow); } @Override public void postSuccessAction() { super.postSuccessAction(); + getModel().addCaracteristicMappingRow(newRow); + // update comboboxes getUI().getCaracteristicMappingComboBox().removeItem(caracteristic); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/AddSpeciesProtocolAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/AddSpeciesProtocolAction.java index d68a12b..324c7c6 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/AddSpeciesProtocolAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/AddSpeciesProtocolAction.java @@ -24,12 +24,12 @@ package fr.ifremer.tutti.ui.swing.content.protocol.actions; import com.google.common.base.Preconditions; import fr.ifremer.tutti.persistence.entities.referential.Species; -import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolSpeciesRowModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolSpeciesTableModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIHandler; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIModel; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import jaxx.runtime.SwingUtil; import jaxx.runtime.swing.editor.bean.BeanFilterableComboBox; @@ -67,23 +67,24 @@ public class AddSpeciesProtocolAction extends LongActionSupport<EditProtocolUIMo Preconditions.checkArgument(species.isReferenceTaxon(), "Can't add a speciesProtocol with a not referent species"); - Integer taxonId = species.getReferenceTaxonId(); - String taxonIdStr = String.valueOf(taxonId); - - // remove all synonyms of this taxon - Collection<Species> allSynonyms = getModel().getAllSynonyms(taxonIdStr); - getModel().getAllSynonyms().removeAll(allSynonyms); - // add new row to model (do it after combo stuff for ui best display) newRow = tableModel.createNewRow(); newRow.setSpecies(species); - getModel().getSpeciesRow().add(newRow); } @Override public void postSuccessAction() { super.postSuccessAction(); + // remove all synonyms of this taxon + + Integer taxonId = species.getReferenceTaxonId(); + String taxonIdStr = String.valueOf(taxonId); + Collection<Species> allSynonyms = getModel().getAllSynonyms(taxonIdStr); + getModel().getAllSynonyms().removeAll(allSynonyms); + + getModel().getSpeciesRow().add(newRow); + // update comboboxes getUI().getBenthosComboBox().removeItem(species); getUI().getSpeciesComboBox().removeItem(species); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportAllCaracteristicAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportAllCaracteristicAction.java index 8c57df5..d289d9a 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportAllCaracteristicAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportAllCaracteristicAction.java @@ -91,6 +91,11 @@ public class ExportAllCaracteristicAction extends LongActionSupport<EditProtocol getContext().getTuttiProtocolImportExportService(); service.exportAllCaracteristic(file, getModel().getAllCaracteristic()); + } + + @Override + public void postSuccessAction() { + super.postSuccessAction(); sendMessage(t("tutti.flash.info.all.caractristic.exported", file)); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportProtocolBenthosAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportProtocolBenthosAction.java index ef173d4..47b6a41 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportProtocolBenthosAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportProtocolBenthosAction.java @@ -110,7 +110,12 @@ public class ExportProtocolBenthosAction extends LongActionSupport<EditProtocolU model.getAllCaracteristic(), model.getAllReferentSpeciesByTaxonId()); - sendMessage(t("tutti.flash.info.species.exported.from.protocol", - file)); + } + + @Override + public void postSuccessAction() { + super.postSuccessAction(); + + sendMessage(t("tutti.flash.info.species.exported.from.protocol", file)); } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportProtocolCaracteristicAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportProtocolCaracteristicAction.java index da5c26b..c5ae228 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportProtocolCaracteristicAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportProtocolCaracteristicAction.java @@ -98,7 +98,12 @@ public class ExportProtocolCaracteristicAction extends LongActionSupport<EditPro protocol, getModel().getAllCaracteristic()); - sendMessage(t("tutti.flash.info.caractristic.exported.from.protocol", - file)); + } + + @Override + public void postSuccessAction() { + super.postSuccessAction(); + + sendMessage(t("tutti.flash.info.caractristic.exported.from.protocol", file)); } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportProtocolSpeciesAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportProtocolSpeciesAction.java index b4cc6d7..2f9c858 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportProtocolSpeciesAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ExportProtocolSpeciesAction.java @@ -110,7 +110,12 @@ public class ExportProtocolSpeciesAction extends LongActionSupport<EditProtocolU model.getAllCaracteristic(), model.getAllReferentSpeciesByTaxonId()); - sendMessage(t("tutti.flash.info.species.exported.from.protocol", - file)); + } + + @Override + public void postSuccessAction() { + super.postSuccessAction(); + + sendMessage(t("tutti.flash.info.species.exported.from.protocol", file)); } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ImportProtocolBenthosAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ImportProtocolBenthosAction.java index 4b2c326..f142dd0 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ImportProtocolBenthosAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ImportProtocolBenthosAction.java @@ -28,11 +28,11 @@ import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.service.DecoratorService; import fr.ifremer.tutti.service.protocol.ProtocolImportExportService; -import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolSpeciesRowModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIHandler; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIModel; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -55,6 +55,12 @@ public class ImportProtocolBenthosAction extends LongActionSupport<EditProtocolU private File file; + protected List<Species> notImportedBenthos; + + protected List<EditProtocolSpeciesRowModel> protocolBenthosRows; + + protected TuttiProtocol protocol; + public ImportProtocolBenthosAction(EditProtocolUIHandler handler) { super(handler, false); } @@ -81,6 +87,10 @@ public class ImportProtocolBenthosAction extends LongActionSupport<EditProtocolU @Override public void releaseAction() { file = null; + notImportedBenthos = null; + protocolBenthosRows = null; + protocol = null; + super.releaseAction(); } @@ -94,22 +104,28 @@ public class ImportProtocolBenthosAction extends LongActionSupport<EditProtocolU EditProtocolUIModel model = getModel(); // bind to a protocol - TuttiProtocol protocol = model.toBean(); + protocol = model.toBean(); // import ProtocolImportExportService service = getContext().getTuttiProtocolImportExportService(); - List<Species> notImportedBenthos = - service.importProtocolBenthos(file, - protocol, - model.getAllCaracteristic(), - model.getAllReferentSpeciesByTaxonId()); + notImportedBenthos = service.importProtocolBenthos(file, + protocol, + model.getAllCaracteristic(), + model.getAllReferentSpeciesByTaxonId()); // build rows from imported+merged protocol // (will also remove all synonyms of species referent used) - List<EditProtocolSpeciesRowModel> rows = - handler.toSpeciesRows(protocol.getBenthos()); + protocolBenthosRows = handler.toSpeciesRows(protocol.getBenthos()); + + } + + @Override + public void postSuccessAction() { + super.postSuccessAction(); + + EditProtocolUIModel model = getModel(); // update species comboBox getUI().getSpeciesComboBox().getHandler().reset(); @@ -118,9 +134,9 @@ public class ImportProtocolBenthosAction extends LongActionSupport<EditProtocolU getUI().getBenthosComboBox().getHandler().reset(); // update rows in model - model.setBenthosRow(rows); + model.setBenthosRow(protocolBenthosRows); - getHandler().getBenthosTableModel().setRows(rows); + getHandler().getBenthosTableModel().setRows(protocolBenthosRows); int nbSynonym = 0; for (SpeciesProtocol speciesProtocol : protocol.getBenthos()) { @@ -160,4 +176,5 @@ public class ImportProtocolBenthosAction extends LongActionSupport<EditProtocolU ); } } + } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ImportProtocolCaracteristicAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ImportProtocolCaracteristicAction.java index d10da93..b70213a 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ImportProtocolCaracteristicAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ImportProtocolCaracteristicAction.java @@ -50,6 +50,8 @@ public class ImportProtocolCaracteristicAction extends LongActionSupport<EditPro private File file; + protected TuttiProtocol protocol; + public ImportProtocolCaracteristicAction(EditProtocolUIHandler handler) { super(handler, true); } @@ -76,6 +78,7 @@ public class ImportProtocolCaracteristicAction extends LongActionSupport<EditPro @Override public void releaseAction() { file = null; + protocol = null; super.releaseAction(); } @@ -89,7 +92,7 @@ public class ImportProtocolCaracteristicAction extends LongActionSupport<EditPro EditProtocolUIModel model = getModel(); // bind to a protocol - TuttiProtocol protocol = model.toBean(); + protocol = model.toBean(); ProtocolImportExportService service = getContext().getTuttiProtocolImportExportService(); @@ -98,11 +101,17 @@ public class ImportProtocolCaracteristicAction extends LongActionSupport<EditPro protocol, model.getAllCaracteristic()); + } + + @Override + public void postSuccessAction() { + super.postSuccessAction(); + handler.addDoubleListListeners(); try { // rebind to model - model.fromBean(protocol); + getModel().fromBean(protocol); } finally { handler.removeDoubleListListeners(); } @@ -110,6 +119,5 @@ public class ImportProtocolCaracteristicAction extends LongActionSupport<EditPro sendMessage( t("tutti.flash.info.caracteristic.imported.in.protocol", file)); - } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ImportProtocolSpeciesAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ImportProtocolSpeciesAction.java index d8da617..0956bfb 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ImportProtocolSpeciesAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/ImportProtocolSpeciesAction.java @@ -28,11 +28,11 @@ import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.service.DecoratorService; import fr.ifremer.tutti.service.protocol.ProtocolImportExportService; -import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolSpeciesRowModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIHandler; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIModel; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -55,6 +55,12 @@ public class ImportProtocolSpeciesAction extends LongActionSupport<EditProtocolU private File file; + protected List<EditProtocolSpeciesRowModel> protocolSpeciesRows; + + protected TuttiProtocol protocol; + + protected List<Species> notImportedSpecies; + public ImportProtocolSpeciesAction(EditProtocolUIHandler handler) { super(handler, false); } @@ -81,6 +87,9 @@ public class ImportProtocolSpeciesAction extends LongActionSupport<EditProtocolU @Override public void releaseAction() { file = null; + protocolSpeciesRows = null; + protocol = null; + notImportedSpecies = null; super.releaseAction(); } @@ -94,22 +103,26 @@ public class ImportProtocolSpeciesAction extends LongActionSupport<EditProtocolU EditProtocolUIModel model = getModel(); // bind to a protocol - TuttiProtocol protocol = model.toBean(); + protocol = model.toBean(); // import ProtocolImportExportService service = getContext().getTuttiProtocolImportExportService(); - List<Species> notImportedSpecies = - service.importProtocolSpecies(file, - protocol, - model.getAllCaracteristic(), - model.getAllReferentSpeciesByTaxonId()); + notImportedSpecies = service.importProtocolSpecies(file, + protocol, + model.getAllCaracteristic(), + model.getAllReferentSpeciesByTaxonId()); // build rows from imported+merged protocol // (will also remove all synonyms of species referent used) - List<EditProtocolSpeciesRowModel> rows = - handler.toSpeciesRows(protocol.getSpecies()); + protocolSpeciesRows = handler.toSpeciesRows(protocol.getSpecies()); + + } + + @Override + public void postSuccessAction() { + super.postSuccessAction(); // update species comboBox getUI().getSpeciesComboBox().getHandler().reset(); @@ -118,9 +131,9 @@ public class ImportProtocolSpeciesAction extends LongActionSupport<EditProtocolU getUI().getBenthosComboBox().getHandler().reset(); // update rows in model - model.setSpeciesRow(rows); + getModel().setSpeciesRow(protocolSpeciesRows); - getHandler().getSpeciesTableModel().setRows(rows); + getHandler().getSpeciesTableModel().setRows(protocolSpeciesRows); int nbSynonym = 0; for (SpeciesProtocol speciesProtocol : protocol.getSpecies()) { diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/LoadProtocolImportColumnsAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/LoadProtocolImportColumnsAction.java index e4c9b5e..c6a0a20 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/LoadProtocolImportColumnsAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/LoadProtocolImportColumnsAction.java @@ -48,6 +48,8 @@ public class LoadProtocolImportColumnsAction extends LongActionSupport<EditProto protected File columnsFile; + protected List<String> columns; + public LoadProtocolImportColumnsAction(EditProtocolUIHandler handler) { super(handler, false); } @@ -71,17 +73,23 @@ public class LoadProtocolImportColumnsAction extends LongActionSupport<EditProto public void doAction() throws Exception { ProtocolImportExportService service = getContext().getTuttiProtocolImportExportService(); - List<String> columns = service.loadProtocolCaracteristicsImportColumns(columnsFile); + columns = service.loadProtocolCaracteristicsImportColumns(columnsFile); if (log.isInfoEnabled()) { - log.info("Detected columns: "+columns); + log.info("Detected columns: " + columns); } - getModel().setImportColumns(columns); } @Override public void postSuccessAction() { super.postSuccessAction(); + getModel().setImportColumns(columns); sendMessage(t("tutti.editProtocol.action.loadImportColumns.success", getModel().sizeImportColumns())); } + + @Override + protected void releaseAction() { + super.releaseAction(); + columns = null; + } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/RemoveBenthosProtocolAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/RemoveBenthosProtocolAction.java index 49b7646..77120d5 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/RemoveBenthosProtocolAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/RemoveBenthosProtocolAction.java @@ -27,12 +27,12 @@ import com.google.common.collect.Lists; import com.google.common.collect.Sets; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.persistence.entities.referential.Speciess; -import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolSpeciesRowModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolSpeciesTableModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIHandler; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIModel; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import jaxx.runtime.SwingUtil; import javax.swing.JTable; @@ -100,22 +100,24 @@ public class RemoveBenthosProtocolAction extends LongActionSupport<EditProtocolU List<Species> allSynonyms = Lists.newArrayList( model.getAllSynonyms(String.valueOf(taxonId))); allSynonyms.remove(species); + //FIXME kmorin 20160104 bouger ça dans le postsuccess model.getAllSynonyms().addAll(allSynonyms); // mark row to be removed at the very last moment removedRows.add(selectedRow); } - // reorder the list by name, otherwise, - // all the species without a reftax code will be at the end - Collections.sort(model.getAllSynonyms(), - Speciess.SPECIES_BY_NAME_COMPARATOR); } @Override public void postSuccessAction() { super.postSuccessAction(); + // reorder the list by name, otherwise, + // all the species without a reftax code will be at the end + Collections.sort(getModel().getAllSynonyms(), + Speciess.SPECIES_BY_NAME_COMPARATOR); + // update comboboxes getUI().getBenthosComboBox().addItems(removedSpecies); getUI().getSpeciesComboBox().addItems(removedSpecies); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/RemoveSpeciesProtocolAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/RemoveSpeciesProtocolAction.java index 28b9737..5ad3a3d 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/RemoveSpeciesProtocolAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/RemoveSpeciesProtocolAction.java @@ -98,6 +98,7 @@ public class RemoveSpeciesProtocolAction extends LongActionSupport<EditProtocolU List<Species> allSynonyms = Lists.newArrayList( model.getAllSynonyms(String.valueOf(taxonId))); allSynonyms.remove(species); + //FIXME kmorin 20160104 bouger ça dans le postsuccess model.getAllSynonyms().addAll(allSynonyms); // mark row to be removed at the very last moment diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/SaveProtocolAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/SaveProtocolAction.java index 37e5028..6b9dbce 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/SaveProtocolAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/SaveProtocolAction.java @@ -58,6 +58,10 @@ public class SaveProtocolAction extends LongActionSupport<EditProtocolUIModel, E /** Logger. */ private static final Log log = LogFactory.getLog(SaveProtocolAction.class); + protected Boolean newProtocol; + + protected TuttiProtocol saved; + public SaveProtocolAction(EditProtocolUIHandler handler) { super(handler, true); } @@ -119,28 +123,44 @@ public class SaveProtocolAction extends LongActionSupport<EditProtocolUIModel, E log.debug("protocol id to save: " + bean.getId()); } - TuttiProtocol saved; - - if (TuttiEntities.isNew(bean)) { + newProtocol = TuttiEntities.isNew(bean); + if (newProtocol) { saved = persistenceService.createProtocol(bean); - model.setId(saved.getId()); - sendMessage(t("tutti.flash.info.protocolCreated", bean.getName())); } else { saved = persistenceService.saveProtocol(bean); - sendMessage(t("tutti.flash.info.protocolSaved", bean.getName())); + } + } + + @Override + public void postSuccessAction() { + super.postSuccessAction(); + + EditProtocolUIModel model = getModel(); + TuttiUIContext context = getContext(); + + if (newProtocol) { + + model.setId(saved.getId()); + sendMessage(t("tutti.flash.info.protocolCreated", saved.getName())); + } else { + sendMessage(t("tutti.flash.info.protocolSaved", saved.getName())); } context.setProtocolId(saved.getId()); model.setModify(false); - } - @Override - public void postSuccessAction() { getContext().getMainUI().getHandler().setBodyTitle( EditProtocolUIHandler.getTitle(true)); getUI().getSaveWarningContainer().setVisible(false); } + + @Override + protected void releaseAction() { + super.releaseAction(); + newProtocol = null; + saved = null; + } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/SelectOtherBenthosAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/SelectOtherBenthosAction.java index 678ad8f..33a3160 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/SelectOtherBenthosAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/SelectOtherBenthosAction.java @@ -41,6 +41,7 @@ import static org.nuiton.i18n.I18n.t; * @author kmorin <kmorin@codelutin.com> * @since 1.1 */ +// FIXME kmorin 20160104 simple action ? public class SelectOtherBenthosAction extends LongActionSupport<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { /** Logger. */ @@ -82,6 +83,13 @@ public class SelectOtherBenthosAction extends LongActionSupport<EditProtocolUIMo @Override public void doAction() throws Exception { + // do nothing + } + + @Override + public void postSuccessAction() { + super.postSuccessAction(); + String decoratedSynonym = decorate(selectedSpecies); String taxonId = String.valueOf(selectedSpecies.getReferenceTaxonId()); selectedSpecies = getModel().getAllReferentSpeciesByTaxonId().get(taxonId); @@ -89,5 +97,4 @@ public class SelectOtherBenthosAction extends LongActionSupport<EditProtocolUIMo sendMessage(t("tutti.flash.info.benthos.replaced", decoratedSynonym, decoratedReferent)); getUI().getBenthosComboBox().setSelectedItem(selectedSpecies); } - } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/SelectOtherSpeciesAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/SelectOtherSpeciesAction.java index c6def3e..9411ada 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/SelectOtherSpeciesAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/SelectOtherSpeciesAction.java @@ -41,6 +41,7 @@ import static org.nuiton.i18n.I18n.t; * @author kmorin <kmorin@codelutin.com> * @since 1.1 */ +// FIXME kmorin 20160104 simple action ? public class SelectOtherSpeciesAction extends LongActionSupport<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { /** Logger. */ @@ -80,6 +81,13 @@ public class SelectOtherSpeciesAction extends LongActionSupport<EditProtocolUIMo @Override public void doAction() throws Exception { + // do nothing + } + + @Override + public void postSuccessAction() { + super.postSuccessAction(); + String decoratedSynonym = decorate(selectedSpecies); String taxonId = String.valueOf(selectedSpecies.getReferenceTaxonId()); selectedSpecies = getModel().getAllReferentSpeciesByTaxonId().get(taxonId); @@ -87,5 +95,4 @@ public class SelectOtherSpeciesAction extends LongActionSupport<EditProtocolUIMo sendMessage(t("tutti.flash.info.species.replaced", decoratedSynonym, decoratedReferent)); getUI().getSpeciesComboBox().setSelectedItem(selectedSpecies); } - } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/EditCruiseInValidationUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/EditCruiseInValidationUIAction.java index 99ed785..1cca077 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/EditCruiseInValidationUIAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/EditCruiseInValidationUIAction.java @@ -119,6 +119,8 @@ public class EditCruiseInValidationUIAction extends LongActionSupport<ValidateCr @Override public void doAction() throws Exception { + + //FIXME kmorin 20160104 à faire ici ou dans le post success ? getUI().getCruisePanel().getHandler().reloadCruise(cruise); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/EditFishingOperationInValidationUIAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/EditFishingOperationInValidationUIAction.java index ecd3741..8e8ae76 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/EditFishingOperationInValidationUIAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/validation/actions/EditFishingOperationInValidationUIAction.java @@ -178,6 +178,8 @@ public class EditFishingOperationInValidationUIAction extends LongActionSupport< @Override public void doAction() throws Exception { + + //FIXME kmorin 20160104 à faire ici ou dans le post success ? getUI().getOperationPanel().getModel().setSelectedFishingOperation(fishingOperation); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/SaveAttachmentAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/SaveAttachmentAction.java index a7f8216..cd56e7a 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/SaveAttachmentAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/actions/SaveAttachmentAction.java @@ -81,8 +81,6 @@ public class SaveAttachmentAction extends LongActionSupport<AttachmentItemModel, ApplicationIOUtil.copyFile(attachmentFile, file, t("tutti.attachmentEditor.saveAttachment.error.message", attachmentFile, file.getName())); - sendMessage( - t("tutti.attachmentEditor.saveAttachment.success.message", file.getName())); } finally { if (hackDialog) { @@ -92,6 +90,12 @@ public class SaveAttachmentAction extends LongActionSupport<AttachmentItemModel, } @Override + public void postSuccessAction() { + super.postSuccessAction(); + sendMessage(t("tutti.attachmentEditor.saveAttachment.success.message", file.getName())); + } + + @Override public void releaseAction() { super.releaseAction(); attachmentFile = null; -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.