branch feature/5931 created (now d4c39d1)
This is an automated email from the git hooks/post-receive script. New change to branch feature/5931 in repository tutti. See http://git.codelutin.com/tutti.git at d4c39d1 deplacement des modifs de modele et d'ui dans le postsuccessaction + ajout de fixme quand les modifs sont un peu douloureuses (refs #5931) This branch includes the following new commits: new d4c39d1 deplacement des modifs de modele et d'ui dans le postsuccessaction + ajout de fixme quand les modifs sont un peu douloureuses (refs #5931) The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: 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) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
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>.
participants (1)
-
codelutin.com scm