This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See https://gitlab.nuiton.org/codelutin/observe.git commit cc44bf81043fd0b54e9785befebc0ceafabbb937 Author: Tony CHEMIT <chemit@codelutin.com> Date: Sun Dec 4 08:53:46 2016 +0100 [ui] Gestion de l'état ouvert sur les calée (cela n'a jamais été implanté...) --- .../application/swing/ObserveOpenDataManager.java | 38 +++++++++++++++++----- .../impl/longline/SetLonglineUIHandler.java | 6 ++++ .../ui/content/impl/seine/SetSeineUIHandler.java | 5 +++ .../impl/longline/ActivityLonglineUIHandler.java | 12 +++---- .../open/impl/seine/ActivitySeineUIHandler.java | 12 +++---- 5 files changed, 53 insertions(+), 20 deletions(-) diff --git a/application-swing/src/main/java/fr/ird/observe/application/swing/ObserveOpenDataManager.java b/application-swing/src/main/java/fr/ird/observe/application/swing/ObserveOpenDataManager.java index 60ffa58..1b30892 100644 --- a/application-swing/src/main/java/fr/ird/observe/application/swing/ObserveOpenDataManager.java +++ b/application-swing/src/main/java/fr/ird/observe/application/swing/ObserveOpenDataManager.java @@ -135,11 +135,21 @@ public class ObserveOpenDataManager implements Closeable { return isOpenRoute(parentRouteId) && !dataContext.isOpenActivitySeine(); } - public void openActivitySeine(String parentRouteId, String activitySeineId) { + public void openActivitySeine(String parentRouteId, String activitySeineId, String setSeineId) { Objects.requireNonNull(parentRouteId, "id cant be null"); Objects.requireNonNull(activitySeineId, "id cant be null"); Preconditions.checkState(canOpenActivitySeine(parentRouteId), "the route is not opened or another activity is already opened"); dataContext.setOpenActivitySeineId(activitySeineId); + if (setSeineId != null) { + openSetSeine(activitySeineId, setSeineId); + } + } + + public void openSetSeine(String activitySeineId, String setSeineId) { + Objects.requireNonNull(activitySeineId, "id cant be null"); + Objects.requireNonNull(setSeineId, "id cant be null"); + Preconditions.checkState(isOpenActivitySeine(activitySeineId), "the route is not opened or another activity is already opened"); + dataContext.setOpenSetSeineId(setSeineId); } public boolean isOpenActivitySeine(String activitySeineId) { @@ -150,6 +160,10 @@ public class ObserveOpenDataManager implements Closeable { public void closeActivitySeine(String activitySeineId) { Objects.requireNonNull(activitySeineId, "id cant be null"); Preconditions.checkState(isOpenActivitySeine(activitySeineId), "this activity is not opened"); + if (dataContext.isOpenSet()) { + // on ferme aussi la calée associée + dataContext.setOpenSetSeineId(null); + } dataContext.setOpenActivitySeineId(null); } @@ -189,11 +203,20 @@ public class ObserveOpenDataManager implements Closeable { return isOpenTripLongline(parentTripLonglineId) && !dataContext.isOpenActivityLongline(); } - public void openActivityLongline(String parentTripLonglineId, String activityLonglineId) { + public void openActivityLongline(String parentTripLonglineId, String activityLonglineId, String setLonglineId) { Objects.requireNonNull(parentTripLonglineId, "id cant be null"); Objects.requireNonNull(activityLonglineId, "id cant be null"); Preconditions.checkState(canOpenActivityLongline(parentTripLonglineId), "the trip is not opened or another activity is already opened"); dataContext.setOpenActivityLonglineId(activityLonglineId); + if (setLonglineId != null) { + openSetLongline(activityLonglineId, setLonglineId); + } + } + + public void openSetLongline(String activityLonglineId, String setLonglineId) { + Objects.requireNonNull(activityLonglineId, "id cant be null"); + Objects.requireNonNull(setLonglineId, "id cant be null"); + dataContext.setOpenSetLonglineId(setLonglineId); } public boolean isOpenActivityLongline(String activityLonglineId) { @@ -204,6 +227,10 @@ public class ObserveOpenDataManager implements Closeable { public void closeActivityLongline(String activityLonglineId) { Objects.requireNonNull(activityLonglineId, "id cant be null"); Preconditions.checkState(isOpenActivityLongline(activityLonglineId), "this activity is not opened"); + if (dataContext.isOpenSet()) { + // on ferme aussi la calée associée + dataContext.setOpenSetLonglineId(null); + } dataContext.setOpenActivityLonglineId(null); } @@ -270,13 +297,8 @@ public class ObserveOpenDataManager implements Closeable { exists = servicesProvider.newActivityLonglineService().exists(id); - } else if (IdHelper.isSetLonglineId(id)) { - - exists = servicesProvider.newSetLonglineService().exists(id); - } else { - - exists = false; + exists = IdHelper.isSetLonglineId(id) && servicesProvider.newSetLonglineService().exists(id); } } diff --git a/application-swing/src/main/java/fr/ird/observe/application/swing/ui/content/impl/longline/SetLonglineUIHandler.java b/application-swing/src/main/java/fr/ird/observe/application/swing/ui/content/impl/longline/SetLonglineUIHandler.java index 07dc8b4..4171be6 100644 --- a/application-swing/src/main/java/fr/ird/observe/application/swing/ui/content/impl/longline/SetLonglineUIHandler.java +++ b/application-swing/src/main/java/fr/ird/observe/application/swing/ui/content/impl/longline/SetLonglineUIHandler.java @@ -337,9 +337,15 @@ public class SetLonglineUIHandler extends ContentUIHandler<SetLonglineDto, SetLo String activityId = getSelectedParentId(); + boolean notPersisted = bean.isNotPersisted(); + SaveResultDto saveResult = getSetLonglineService().save(activityId, bean); saveResult.toDto(bean); + if (notPersisted) { + getOpenDataManager().openSetLongline(activityId, bean.getId()); + } + return true; } diff --git a/application-swing/src/main/java/fr/ird/observe/application/swing/ui/content/impl/seine/SetSeineUIHandler.java b/application-swing/src/main/java/fr/ird/observe/application/swing/ui/content/impl/seine/SetSeineUIHandler.java index 8eef9ba..1d30aeb 100644 --- a/application-swing/src/main/java/fr/ird/observe/application/swing/ui/content/impl/seine/SetSeineUIHandler.java +++ b/application-swing/src/main/java/fr/ird/observe/application/swing/ui/content/impl/seine/SetSeineUIHandler.java @@ -237,10 +237,15 @@ public class SetSeineUIHandler extends ContentUIHandler<SetSeineDto, SetSeineUI> protected boolean doSave(SetSeineDto bean) throws Exception { String activityId = getSelectedParentId(); + boolean notPersisted = bean.isNotPersisted(); SaveResultDto saveResult = getSetSeineService().save(activityId, bean); saveResult.toDto(bean); + if (notPersisted) { + getOpenDataManager().openSetSeine(activityId, bean.getId()); + } + return true; } diff --git a/application-swing/src/main/java/fr/ird/observe/application/swing/ui/content/open/impl/longline/ActivityLonglineUIHandler.java b/application-swing/src/main/java/fr/ird/observe/application/swing/ui/content/open/impl/longline/ActivityLonglineUIHandler.java index 597d966..566989c 100644 --- a/application-swing/src/main/java/fr/ird/observe/application/swing/ui/content/open/impl/longline/ActivityLonglineUIHandler.java +++ b/application-swing/src/main/java/fr/ird/observe/application/swing/ui/content/open/impl/longline/ActivityLonglineUIHandler.java @@ -30,6 +30,7 @@ import fr.ird.observe.application.swing.ui.content.ContentUIModel; import fr.ird.observe.application.swing.ui.content.open.ContentOpenableUIHandler; import fr.ird.observe.application.swing.ui.tree.navigation.nodes.longline.ActivityLonglineNavigationTreeNode; import fr.ird.observe.application.swing.validation.ValidationContext; +import fr.ird.observe.services.dto.DataReference; import fr.ird.observe.services.dto.Form; import fr.ird.observe.services.dto.longline.ActivityLonglineDto; import fr.ird.observe.services.dto.longline.ActivityLonglineHelper; @@ -41,6 +42,7 @@ import org.apache.commons.logging.LogFactory; import org.nuiton.validator.NuitonValidatorScope; import javax.swing.SwingUtilities; +import java.util.Optional; import static org.nuiton.i18n.I18n.n; import static org.nuiton.i18n.I18n.t; @@ -75,7 +77,9 @@ class ActivityLonglineUIHandler extends ContentOpenableUIHandler<ActivityLonglin protected boolean doOpenData() { boolean result = getOpenDataManager().canOpenActivityLongline(getSelectedParentId()); if (result) { - getOpenDataManager().openActivityLongline(getSelectedParentId(), getSelectedId()); + String setLonglineId = Optional.of(getBean().getSetLongline()).map(DataReference::getId).orElse(null); + getOpenDataManager().openActivityLongline(getSelectedParentId(), getSelectedId(), setLonglineId); + } return result; } @@ -242,10 +246,6 @@ class ActivityLonglineUIHandler extends ContentOpenableUIHandler<ActivityLonglin boolean notPersisted = bean.isNotPersisted(); - if (log.isDebugEnabled()) { - log.debug(" long - lat = " + bean.getLongitude() + " - " + bean.getLatitude()); - } - String tripId = getSelectedParentId(); TripChildSaveResultDto saveResult = getActivityLonglineService().save(tripId, getModel().getBean()); @@ -257,7 +257,7 @@ class ActivityLonglineUIHandler extends ContentOpenableUIHandler<ActivityLonglin if (notPersisted) { // ouverture de l'activité après création - getOpenDataManager().openActivityLongline(getSelectedParentId(), bean.getId()); + getOpenDataManager().openActivityLongline(getSelectedParentId(), bean.getId(), null); if (ActivityLonglineNavigationTreeNode.FISHING_OPERATION_ID.equals(bean.getVesselActivityLongline().getId())) { diff --git a/application-swing/src/main/java/fr/ird/observe/application/swing/ui/content/open/impl/seine/ActivitySeineUIHandler.java b/application-swing/src/main/java/fr/ird/observe/application/swing/ui/content/open/impl/seine/ActivitySeineUIHandler.java index de962a5..94adf8a 100644 --- a/application-swing/src/main/java/fr/ird/observe/application/swing/ui/content/open/impl/seine/ActivitySeineUIHandler.java +++ b/application-swing/src/main/java/fr/ird/observe/application/swing/ui/content/open/impl/seine/ActivitySeineUIHandler.java @@ -28,6 +28,7 @@ import fr.ird.observe.application.swing.ui.content.ContentMode; import fr.ird.observe.application.swing.ui.content.ContentUIModel; import fr.ird.observe.application.swing.ui.content.open.ContentOpenableUIHandler; import fr.ird.observe.application.swing.validation.ValidationContext; +import fr.ird.observe.services.dto.DataReference; import fr.ird.observe.services.dto.Form; import fr.ird.observe.services.dto.referential.ReferentialReference; import fr.ird.observe.services.dto.referential.seine.VesselActivitySeineDto; @@ -47,6 +48,7 @@ import org.nuiton.validator.NuitonValidatorScope; import javax.swing.SwingUtilities; import javax.swing.event.TableModelListener; import java.util.HashSet; +import java.util.Optional; import java.util.Set; import static org.nuiton.i18n.I18n.n; @@ -90,7 +92,9 @@ class ActivitySeineUIHandler extends ContentOpenableUIHandler<ActivitySeineDto, protected boolean doOpenData() { boolean result = getOpenDataManager().canOpenActivitySeine(getSelectedParentId()); if (result) { - getOpenDataManager().openActivitySeine(getSelectedParentId(), getSelectedId()); + String setSeineId = Optional.of(getBean().getSetSeine()).map(DataReference::getId).orElse(null); + + getOpenDataManager().openActivitySeine(getSelectedParentId(), getSelectedId(), setSeineId); } return result; } @@ -276,10 +280,6 @@ class ActivitySeineUIHandler extends ContentOpenableUIHandler<ActivitySeineDto, boolean notPersisted = bean.isNotPersisted(); - if (log.isDebugEnabled()) { - log.debug(" long - lat = " + bean.getLongitude() + " - " + bean.getLatitude()); - } - String routeId = getSelectedParentId(); bean.setOpen(true); @@ -291,7 +291,7 @@ class ActivitySeineUIHandler extends ContentOpenableUIHandler<ActivitySeineDto, if (notPersisted) { // ouverture de l'activité après création - getOpenDataManager().openActivitySeine(getSelectedParentId(), bean.getId()); + getOpenDataManager().openActivitySeine(getSelectedParentId(), bean.getId(), null); if (bean.getReasonForNoFishing() == null) { // création de l'opération de pêche -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.