This is an automated email from the git hooks/post-receive script. New commit to branch feature/7617 in repository observe. See http://git.codelutin.com/observe.git commit 7c5b722ec8386f1cba11d0424c63db9cebfa96b0 Author: Sylvain Bavencoff <bavencoff@codelutin.com> Date: Thu Oct 29 09:26:32 2015 +0100 migration des enregistreurs (refs #7617) --- .../ui/content/table/impl/longline/TdrUI.css | 8 - .../ui/content/table/impl/longline/TdrUI.jaxx | 12 +- .../content/table/impl/longline/TdrUIHandler.java | 109 +++++------ .../ui/content/table/impl/longline/TdrUIModel.java | 200 +++------------------ .../v1/longline/TdrServiceController.java | 5 +- .../services/service/longline/TdrService.java | 3 +- .../main/xmi/observe-services-dto-longline.zargo | Bin 64814 -> 65285 bytes .../services/dto/ObserveDtosInitializer.java | 1 + .../services/entity/EntitiesSetFactory.java | 19 ++ .../services/service/longline/TdrServiceTopia.java | 61 ++++++- 10 files changed, 160 insertions(+), 258 deletions(-) diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUI.css b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUI.css index ccd237b..5b11541 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUI.css +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUI.css @@ -230,8 +230,6 @@ label:{t("observe.tdr.deployementStart")}; date:{tableEditBean.getDeployementStart()}; propertyDate: {TdrDto.PROPERTY_DEPLOYEMENT_START}; - propertyDayDate: {TdrUIModel.PROPERTY_DEPLOYEMENT_START_DATE}; - propertyTimeDate: {TdrUIModel.PROPERTY_DEPLOYEMENT_START_TIME}; _validatorLabel: {t("observe.tdr.deployementStart")}; } @@ -239,8 +237,6 @@ label:{t("observe.tdr.deployementEnd")}; date:{tableEditBean.getDeployementEnd()}; propertyDate: {TdrDto.PROPERTY_DEPLOYEMENT_END}; - propertyDayDate: {TdrUIModel.PROPERTY_DEPLOYEMENT_END_DATE}; - propertyTimeDate: {TdrUIModel.PROPERTY_DEPLOYEMENT_END_TIME}; _validatorLabel: {t("observe.tdr.deployementEnd")}; } @@ -248,8 +244,6 @@ label:{t("observe.tdr.fishingStart")}; date:{tableEditBean.getFishingStart()}; propertyDate: {TdrDto.PROPERTY_FISHING_START}; - propertyDayDate: {TdrUIModel.PROPERTY_FISHING_START_DATE}; - propertyTimeDate: {TdrUIModel.PROPERTY_FISHING_START_TIME}; _validatorLabel: {t("observe.tdr.fishingStart")}; } @@ -257,8 +251,6 @@ label:{t("observe.tdr.fishingEnd")}; date:{tableEditBean.getFishingEnd()}; propertyDate: {TdrDto.PROPERTY_FISHING_END}; - propertyDayDate: {TdrUIModel.PROPERTY_FISHING_END_DATE}; - propertyTimeDate: {TdrUIModel.PROPERTY_FISHING_END_TIME}; _validatorLabel: {t("observe.tdr.fishingEnd")}; } diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUI.jaxx b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUI.jaxx index 3b62126..2b14ae9 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUI.jaxx +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUI.jaxx @@ -20,12 +20,10 @@ #L% --> -<fr.ird.observe.ui.content.table.ContentTableUI superGenericType='SetLonglineDto, TdrDto' +<fr.ird.observe.ui.content.table.ContentTableUI superGenericType='SetLonglineTdrDto, TdrDto' contentTitle='{n("observe.tdr.title")}' saveNewEntryText='{n("observe.tdr.action.create")}' - saveNewEntryTip='{n("observe.tdr.action.create.tip")}' - - > + saveNewEntryTip='{n("observe.tdr.action.create.tip")}'> <style source="../../CommonTable.css"/> @@ -36,7 +34,7 @@ fr.ird.observe.services.dto.longline.BranchlineDto fr.ird.observe.services.dto.longline.TdrDto fr.ird.observe.services.dto.longline.SectionDto - fr.ird.observe.services.dto.longline.SetLonglineDto + fr.ird.observe.services.dto.longline.SetLonglineTdrDto fr.ird.observe.services.dto.referential.ReferentialReferenceDto fr.ird.observe.services.dto.referential.SpeciesDto fr.ird.observe.services.dto.referential.longline.ItemHorizontalPositionDto @@ -61,7 +59,7 @@ <TdrUIModel id='model'/> <!-- edit bean --> - <SetLonglineDto id='bean'/> + <SetLonglineTdrDto id='bean'/> <!-- table edit bean --> <TdrDto id='tableEditBean'/> @@ -71,7 +69,7 @@ <!-- le validateur de l'écran --> <BeanValidator id='validator' context='n1-update-tdr' - beanClass='fr.ird.observe.services.dto.longline.SetLonglineDto' + beanClass='fr.ird.observe.services.dto.longline.SetLonglineTdrDto' errorTableModel='{getErrorTableModel()}'> </BeanValidator> diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIHandler.java index 1cc9251..0471452 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIHandler.java @@ -29,16 +29,21 @@ import fr.ird.observe.ObserveSwingApplicationContext; import fr.ird.observe.ObserveSwingTechnicalException; import fr.ird.observe.business.db.constants.DataContextType; import fr.ird.observe.services.dto.FormDto; -import fr.ird.observe.configuration.ObserveSwingApplicationConfig; -import fr.ird.observe.services.dto.longline.SetLonglineDto; -import fr.ird.observe.services.dto.longline.SetLonglineDtos; +import fr.ird.observe.services.dto.ReferenceDto; +import fr.ird.observe.services.dto.longline.BasketDto; +import fr.ird.observe.services.dto.longline.BranchlineDto; +import fr.ird.observe.services.dto.longline.SectionDto; +import fr.ird.observe.services.dto.longline.SetLonglineTdrDto; +import fr.ird.observe.services.dto.longline.SetLonglineTdrDtos; import fr.ird.observe.services.dto.longline.TdrDto; import fr.ird.observe.services.dto.referential.longline.SensorBrandDto; -import fr.ird.observe.services.service.longline.SetLonglineService; +import fr.ird.observe.services.dto.result.SaveResultDto; +import fr.ird.observe.services.service.longline.TdrService; import fr.ird.observe.ui.ObserveMainUI; import fr.ird.observe.ui.UIHelper; import fr.ird.observe.ui.content.table.ContentTableModel; import fr.ird.observe.ui.content.table.ContentTableUIHandler; +import jaxx.runtime.context.JAXXContextEntryDef; import jaxx.runtime.swing.HidorButton; import jaxx.runtime.validator.swing.SwingValidatorMessage; import jaxx.runtime.validator.swing.SwingValidatorMessageTableModel; @@ -50,11 +55,13 @@ import org.nuiton.jaxx.runtime.JaxxFileChooser; import org.nuiton.validator.NuitonValidatorScope; import javax.sql.rowset.serial.SerialBlob; -import javax.swing.*; +import javax.swing.JComponent; +import javax.swing.JOptionPane; +import javax.swing.JTable; import javax.swing.event.TableModelEvent; import javax.swing.event.TableModelListener; import javax.swing.table.DefaultTableCellRenderer; -import java.awt.*; +import java.awt.Component; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import java.io.File; @@ -75,7 +82,7 @@ import static org.nuiton.i18n.I18n.t; * @author Tony Chemit - chemit@codelutin.com * @since XXX */ -public class TdrUIHandler extends ContentTableUIHandler<SetLonglineDto, TdrDto> { +public class TdrUIHandler extends ContentTableUIHandler<SetLonglineTdrDto, TdrDto> { /** Logger */ static private Log log = LogFactory.getLog(TdrUIHandler.class); @@ -102,9 +109,8 @@ public class TdrUIHandler extends ContentTableUIHandler<SetLonglineDto, TdrDto> protected boolean toogleTimeEditorSliderIsChanging; - //FIXME -// JAXXContextEntryDef<LonglinePositionHelper<TdrDto>> POSITION_HELPER_ENTRY = -// UIHelper.newContextEntryDef("TdrUI-positionHelper", LonglinePositionHelper.class); + JAXXContextEntryDef<LonglinePositionHelper<TdrDto>> POSITION_HELPER_ENTRY = + UIHelper.newContextEntryDef("TdrUI-positionHelper", LonglinePositionHelper.class); public TdrUIHandler(TdrUI ui) { super(ui, DataContextType.SetLongline); @@ -118,7 +124,7 @@ public class TdrUIHandler extends ContentTableUIHandler<SetLonglineDto, TdrDto> @Override protected void onSelectedRowChanged(int editingRow, TdrDto bean, boolean create) { - ContentTableModel<SetLonglineDto, TdrDto> model = getTableModel(); + ContentTableModel<SetLonglineTdrDto, TdrDto> model = getTableModel(); TdrUI ui = getUi(); @@ -140,7 +146,7 @@ public class TdrUIHandler extends ContentTableUIHandler<SetLonglineDto, TdrDto> // set date - time - SetLonglineDto setLongline = getBean(); + SetLonglineTdrDto setLongline = getBean(); Date settingStartTimeStamp = setLongline.getSettingStartTimeStamp(); setTimestamp(bean, settingStartTimeStamp); @@ -158,9 +164,8 @@ public class TdrUIHandler extends ContentTableUIHandler<SetLonglineDto, TdrDto> } - //FIXME -// LonglinePositionHelper<Tdr> positionHelper = POSITION_HELPER_ENTRY.getContextValue(ui); -// positionHelper.resetPosition(bean); + LonglinePositionHelper<TdrDto> positionHelper = POSITION_HELPER_ENTRY.getContextValue(ui); + positionHelper.resetPosition(bean); requestFocus.requestFocus(); @@ -183,7 +188,7 @@ public class TdrUIHandler extends ContentTableUIHandler<SetLonglineDto, TdrDto> UIHelper.setTableColumnRenderer(table, 0, UIHelper.newStringTableCellRenderer(renderer, 10, true)); UIHelper.setTableColumnRenderer(table, 1, UIHelper.newStringTableCellRenderer(renderer, 10, true)); - UIHelper.setTableColumnRenderer(table, 2, UIHelper.newDecorateTableCellRenderer(renderer, SensorBrandDto.class)); + UIHelper.setTableColumnRenderer(table, 2, UIHelper.newDecorateTableCellRenderer(renderer, ReferenceDto.class, SensorBrandDto.class.getSimpleName())); UIHelper.setTableColumnRenderer(table, 3, UIHelper.newBooleanTableCellRenderer(renderer, new Predicate<Object>() { @Override public boolean apply(Object input) { @@ -201,20 +206,15 @@ public class TdrUIHandler extends ContentTableUIHandler<SetLonglineDto, TdrDto> @Override public void initUI() throws Exception { - // add a listPredicate to get only species from the correct configured speciesList - ObserveSwingApplicationConfig config = getUi().getContextValue(ObserveSwingApplicationConfig.class); - String speciesListId = config.getSpeciesListLonglineCatchId(); - prepareSpeciesList(speciesListId, getUi().getSpecies(), n("observe.error.speciesList.longline.catch.notFound")); - super.initUI(); -// LonglinePositionHelper<TdrDto> positionHelper = new LonglinePositionHelper<TdrDto>( -// getUi().getSection(), -// getUi().getBasket(), -// getUi().getBranchline(), -// getTableEditBean()); + LonglinePositionHelper<TdrDto> positionHelper = new LonglinePositionHelper<TdrDto>( + getUi().getSection(), + getUi().getBasket(), + getUi().getBranchline(), + getTableEditBean()); -// POSITION_HELPER_ENTRY.setContextValue(getUi(), positionHelper); + POSITION_HELPER_ENTRY.setContextValue(getUi(), positionHelper); getUi().getDeployementStart().getSliderHidor().addPropertyChangeListener(HidorButton.PROPERTY_TARGET_VISIBLE, onToogleTimeEditorSliderChangedListener); getUi().getDeployementEnd().getSliderHidor().addPropertyChangeListener(HidorButton.PROPERTY_TARGET_VISIBLE, onToogleTimeEditorSliderChangedListener); @@ -232,8 +232,8 @@ public class TdrUIHandler extends ContentTableUIHandler<SetLonglineDto, TdrDto> super.openUI(); // Reset all sections -// LonglinePositionHelper<Tdr> positionHelper = POSITION_HELPER_ENTRY.getContextValue(getUi()); -// getUi().getSection().setData(positionHelper.getSectionUniverse()); + LonglinePositionHelper<TdrDto> positionHelper = POSITION_HELPER_ENTRY.getContextValue(getUi()); + getUi().getSection().setData(positionHelper.getSections()); // To be sure always remove listener (could prevent some leaks) getUi().getErrorTableModel().removeTableModelListener(computeTabValidStateListener); @@ -257,22 +257,6 @@ public class TdrUIHandler extends ContentTableUIHandler<SetLonglineDto, TdrDto> } - //FIXME -// @Override -// protected SetLongline loadEditBean(ContentMode mode, DataContext dataContext, DataService dataService, DataSource dataSource) { -// -// SetLongline setLongline = super.loadEditBean(mode, dataContext, dataService, dataSource); -// -// // load sections (and baskets and branchlines) -// List<Section> sections = dataService.getSections(dataSource, setLongline.getTopiaId()); -// -// LonglinePositionHelper<Tdr> positionHelper = POSITION_HELPER_ENTRY.getContextValue(getUi()); -// positionHelper.initSections(sections, getTableModel().getData()); -// -// return setLongline; -// -// } - @Override protected void resetEditBean() { @@ -290,7 +274,7 @@ public class TdrUIHandler extends ContentTableUIHandler<SetLonglineDto, TdrDto> if (enableTimestamp) { - SetLonglineDto setLongline = getBean(); + SetLonglineTdrDto setLongline = getBean(); timeStamp = setLongline.getSettingStartTimeStamp(); } else { @@ -362,22 +346,14 @@ public class TdrUIHandler extends ContentTableUIHandler<SetLonglineDto, TdrDto> public void exportData() { - //FIXME -// String filename; -// try { -// filename = getDataService().getTdrDataFilename(getDataSource(), getTableEditBean()); -// } catch (DataSourceException e) { -// throw new ObserveTechnicalException("Could not obtain tdr data export filename", e); -// } + String filename = getTableEditBean().getDataFilename(); File file = JaxxFileChooser .forSaving() .setParent(getUi()) .setTitle(t("observe.title.choose.tdr.exportData")) .setApprovalText(t("observe.action.choose.tdr.exportData")) - //FIXME -// .setFilename(filename) - .setFilename(null) + .setFilename(filename) .setUseAcceptAllFileFilter(true) .choose(); @@ -482,18 +458,27 @@ public class TdrUIHandler extends ContentTableUIHandler<SetLonglineDto, TdrDto> } @Override - protected void doPersist(SetLonglineDto bean) { - getSetLonglineService().save(getSelectedParentId(), bean); + protected void doPersist(SetLonglineTdrDto bean) { + SaveResultDto saveResult = getTdrService().save(bean); + bean.setLastUpdate(saveResult.getLastUpdate()); } @Override protected void loadEditBean(String beanId) { - FormDto<SetLonglineDto> formDto = getSetLonglineService().loadToEdit(beanId); + FormDto<SetLonglineTdrDto> formDto = getTdrService().loadToEdit(beanId); getModel().setFormDto(formDto); - SetLonglineDtos.copySetLonglineDto(formDto.getForm(), getBean()); + + LonglinePositionHelper<TdrDto> positionHelper = POSITION_HELPER_ENTRY.getContextValue(getUi()); + + positionHelper.initSections(formDto.getReferenceSetDto(SectionDto.class, TdrDto.PROPERTY_SECTION), + formDto.getReferenceSetDto(BasketDto.class, TdrDto.PROPERTY_BASKET), + formDto.getReferenceSetDto(BranchlineDto.class, TdrDto.PROPERTY_BRANCHLINE), + formDto.getForm().getTdr()); + + SetLonglineTdrDtos.copySetLonglineTdrDto(formDto.getForm(), getBean()); } - protected SetLonglineService getSetLonglineService() { - return ObserveSwingApplicationContext.get().newService(SetLonglineService.class); + protected TdrService getTdrService() { + return ObserveSwingApplicationContext.get().newService(TdrService.class); } } \ No newline at end of file diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIModel.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIModel.java index 16fd09b..f41528a 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIModel.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIModel.java @@ -24,18 +24,15 @@ package fr.ird.observe.ui.content.table.impl.longline; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Lists; -import fr.ird.observe.ObserveSwingBinderService; -import fr.ird.observe.services.dto.longline.SetLonglineDto; +import fr.ird.observe.services.dto.longline.SetLonglineTdrDto; import fr.ird.observe.services.dto.longline.TdrDto; +import fr.ird.observe.services.dto.longline.TdrDtos; import fr.ird.observe.ui.content.table.ContentTableMeta; import fr.ird.observe.ui.content.table.ContentTableModel; import fr.ird.observe.ui.content.table.ContentTableUIModel; import fr.ird.observe.ui.content.table.ObserveContentTableUI; -import org.nuiton.util.DateUtil; -import org.nuiton.util.beans.Binder; -import org.nuiton.util.beans.BinderModelBuilder; -import java.util.Date; +import java.util.Collection; import java.util.List; import java.util.Set; @@ -45,7 +42,7 @@ import java.util.Set; * @author Tony Chemit - chemit@codelutin.com * @since 3.7 */ -public class TdrUIModel extends ContentTableUIModel<SetLonglineDto, TdrDto> { +public class TdrUIModel extends ContentTableUIModel<SetLonglineTdrDto, TdrDto> { public static final Set<String> CARACTERISTIC_TAB_PROPERTIES = ImmutableSet.<String>builder().add(TdrDto.PROPERTY_HOME_ID, @@ -67,21 +64,9 @@ public class TdrUIModel extends ContentTableUIModel<SetLonglineDto, TdrDto> { public static final Set<String> TIMESTAMP_TAB_PROPERTIES = ImmutableSet.<String>builder().add(TdrDto.PROPERTY_DEPLOYEMENT_START, - //FIXME -// TdrDto.PROPERTY_DEPLOYEMENT_START_DATE, -// TdrDto.PROPERTY_DEPLOYEMENT_START_TIME, TdrDto.PROPERTY_DEPLOYEMENT_END, - //FIXME -// TdrDto.PROPERTY_DEPLOYEMENT_END_DATE, -// TdrDto.PROPERTY_DEPLOYEMENT_END_TIME, TdrDto.PROPERTY_FISHING_START, - //FIXME -// TdrDto.PROPERTY_FISHING_START_DATE, -// TdrDto.PROPERTY_FISHING_START_TIME, TdrDto.PROPERTY_FISHING_END - //FIXME -// TdrDto.PROPERTY_FISHING_END_DATE, -// TdrDto.PROPERTY_FISHING_END_TIME ).build(); public static final Set<String> KEY_DATA_TAB_PROPERTIES = @@ -107,22 +92,6 @@ public class TdrUIModel extends ContentTableUIModel<SetLonglineDto, TdrDto> { public static final String PROPERTY_SPECIES_TAB_VALID = "speciesTabValid"; - public static final String PROPERTY_DEPLOYEMENT_START_DATE = "deployementStartDate"; - - public static final String PROPERTY_DEPLOYEMENT_START_TIME = "deployementStartTime"; - - public static final String PROPERTY_DEPLOYEMENT_END_DATE = "deployementEndDate"; - - public static final String PROPERTY_DEPLOYEMENT_END_TIME = "deployementEndTime"; - - public static final String PROPERTY_FISHING_START_DATE = "fishingStartDate"; - - public static final String PROPERTY_FISHING_START_TIME = "fishingStartTime"; - - public static final String PROPERTY_FISHING_END_DATE = "fishingEndDate"; - - public static final String PROPERTY_FISHING_END_TIME = "fishingEndTime"; - private static final long serialVersionUID = 1L; protected boolean caracteristicsTabValid; @@ -136,15 +105,12 @@ public class TdrUIModel extends ContentTableUIModel<SetLonglineDto, TdrDto> { protected boolean speciesTabValid; public TdrUIModel(TdrUI ui) { - super(SetLonglineDto.class, + super(SetLonglineTdrDto.class, TdrDto.class, new String[]{ - //FIXME -// SetLonglineDto.PROPERTY_TDR, - SetLonglineDto.PROPERTY_SETTING_START_TIME_STAMP, - SetLonglineDto.PROPERTY_SETTING_END_TIME_STAMP, - SetLonglineDto.PROPERTY_HAULING_START_TIME_STAMP, - SetLonglineDto.PROPERTY_HAULING_END_TIME_STAMP}, + SetLonglineTdrDto.PROPERTY_TDR, + SetLonglineTdrDto.PROPERTY_SETTING_START_TIME_STAMP + }, new String[]{ // caracteristics tab @@ -166,21 +132,9 @@ public class TdrUIModel extends ContentTableUIModel<SetLonglineDto, TdrDto> { // timestamp tab TdrDto.PROPERTY_DEPLOYEMENT_START, - //FIXME -// TdrDto.PROPERTY_DEPLOYEMENT_START_DATE, -// TdrDto.PROPERTY_DEPLOYEMENT_START_TIME, TdrDto.PROPERTY_DEPLOYEMENT_END, - //FIXME -// TdrDto.PROPERTY_DEPLOYEMENT_END_DATE, -// TdrDto.PROPERTY_DEPLOYEMENT_END_TIME, TdrDto.PROPERTY_FISHING_START, - //FIXME -// TdrDto.PROPERTY_FISHING_START_DATE, -// TdrDto.PROPERTY_FISHING_START_TIME, TdrDto.PROPERTY_FISHING_END, - //FIXME -// TdrDto.PROPERTY_FISHING_END_DATE, -// TdrDto.PROPERTY_FISHING_END_TIME, // key data tab TdrDto.PROPERTY_FISHING_START_DEPTH, @@ -206,23 +160,27 @@ public class TdrUIModel extends ContentTableUIModel<SetLonglineDto, TdrDto> { } @Override - protected ContentTableModel<SetLonglineDto, TdrDto> createTableModel(ObserveContentTableUI<SetLonglineDto, TdrDto> ui, List<ContentTableMeta<TdrDto>> contentTableMetas) { - // FIXME - return null; - } - - @Override - protected BinderModelBuilder<TdrDto, TdrDto> prepareChildLoador(ObserveSwingBinderService binderService, String binderName) { - - BinderModelBuilder<TdrDto, TdrDto> builder = super.prepareChildLoador(binderService, binderName); - - builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, TdrDto.PROPERTY_SPECIES); - - return builder; - + protected ContentTableModel<SetLonglineTdrDto, TdrDto> createTableModel( + ObserveContentTableUI<SetLonglineTdrDto, TdrDto> ui, + List<ContentTableMeta<TdrDto>> contentTableMetas) { + return new ContentTableModel<SetLonglineTdrDto, TdrDto>(ui, contentTableMetas) { + @Override + protected Collection<TdrDto> getChilds(SetLonglineTdrDto bean) { + return bean.getTdr(); + } + + @Override + protected void load(TdrDto source, TdrDto target) { + TdrDtos.copyTdrDto(source, target); + } + + @Override + protected void setChilds(SetLonglineTdrDto parent, List<TdrDto> childs) { + parent.setTdr(childs); + } + }; } - public boolean isCaracteristicsTabValid() { return caracteristicsTabValid; } @@ -267,108 +225,4 @@ public class TdrUIModel extends ContentTableUIModel<SetLonglineDto, TdrDto> { this.timestampTabValid = timestampTabValid; firePropertyChange(PROPERTY_TIMESTAMP_TAB_VALID, null, timestampTabValid); } - - public Date getDeployementStartDate() { - Date deployementStart = tableEditBean.getDeployementStart(); - return deployementStart == null ? null : DateUtil.getDay(deployementStart); - } - - public Date getDeployementStartTime() { - Date deployementStart = tableEditBean.getDeployementStart(); - return deployementStart == null ? null : DateUtil.getTime(deployementStart, false, false); - } - - public Date getDeployementEndDate() { - Date deployementEnd = tableEditBean.getDeployementEnd(); - return deployementEnd == null ? null : DateUtil.getDay(deployementEnd); - } - - public Date getDeployementEndTime() { - Date deployementEnd = tableEditBean.getDeployementEnd(); - return deployementEnd == null ? null : DateUtil.getTime(deployementEnd, false, false); - } - - public Date getFishingStartDate() { - Date fishingStart = tableEditBean.getFishingStart(); - return fishingStart == null ? null : DateUtil.getDay(fishingStart); - } - - public Date getFishingStartTime() { - Date fishingStart = tableEditBean.getFishingStart(); - return fishingStart == null ? null : DateUtil.getTime(fishingStart, false, false); - } - - public Date getFishingEndDate() { - Date fishingEnd = tableEditBean.getFishingEnd(); - return fishingEnd == null ? null : DateUtil.getDay(fishingEnd); - } - - public Date getFishingEndTime() { - Date fishingEnd = tableEditBean.getFishingEnd(); - return fishingEnd == null ? null : DateUtil.getTime(fishingEnd, false, false); - } - - public void setDeployementStartDate(Date date) { - Date deployementStart = tableEditBean.getDeployementStart(); - if (deployementStart != null) { - Date dateAndTime = DateUtil.getDateAndTime(date, deployementStart, true, false); - tableEditBean.setDeployementStart(dateAndTime); - } - } - - public void setDeployementStartTime(Date time) { - Date deployementStart = tableEditBean.getDeployementStart(); - if (deployementStart != null) { - Date dateAndTime = DateUtil.getDateAndTime(deployementStart, time, false, false); - tableEditBean.setDeployementStart(dateAndTime); - } - } - - public void setDeployementEndDate(Date date) { - Date deployementEnd = tableEditBean.getDeployementEnd(); - if (deployementEnd != null) { - Date dateAndTime = DateUtil.getDateAndTime(date, deployementEnd, true, false); - tableEditBean.setDeployementEnd(dateAndTime); - } - } - - public void setDeployementEndTime(Date time) { - Date deployementEnd = tableEditBean.getDeployementEnd(); - if (deployementEnd != null) { - Date dateAndTime = DateUtil.getDateAndTime(deployementEnd, time, false, false); - tableEditBean.setDeployementEnd(dateAndTime); - } - } - - public void setFishingStartDate(Date date) { - Date fishingStart = tableEditBean.getFishingStart(); - if (fishingStart != null) { - Date dateAndTime = DateUtil.getDateAndTime(date, fishingStart, true, false); - tableEditBean.setFishingStart(dateAndTime); - } - } - - public void setFishingStartTime(Date time) { - Date fishingStart = tableEditBean.getFishingStart(); - if (fishingStart != null) { - Date dateAndTime = DateUtil.getDateAndTime(fishingStart, time, false, false); - tableEditBean.setFishingStart(dateAndTime); - } - } - - public void setFishingEndDate(Date date) { - Date fishingEnd = tableEditBean.getFishingEnd(); - if (fishingEnd != null) { - Date dateAndTime = DateUtil.getDateAndTime(date, fishingEnd, true, false); - tableEditBean.setFishingEnd(dateAndTime); - } - } - - public void setFishingEndTime(Date time) { - Date fishingEnd = tableEditBean.getFishingEnd(); - if (fishingEnd != null) { - Date dateAndTime = DateUtil.getDateAndTime(fishingEnd, time, false, false); - tableEditBean.setFishingEnd(dateAndTime); - } - } } \ No newline at end of file diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/TdrServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/TdrServiceController.java index fd2c3e1..19a4ae1 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/TdrServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/TdrServiceController.java @@ -25,6 +25,7 @@ package fr.ird.observe.application.web.controller.v1.longline; import fr.ird.observe.application.web.controller.v1.ObserveAuthenticatedServiceControllerSupport; import fr.ird.observe.services.dto.FormDto; import fr.ird.observe.services.dto.longline.SetLonglineTdrDto; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.service.longline.TdrService; /** @@ -47,7 +48,7 @@ public class TdrServiceController extends ObserveAuthenticatedServiceControllerS } @Override - public String save(FormDto<SetLonglineTdrDto> form) { - return service.save(form); + public SaveResultDto save(SetLonglineTdrDto dto) { + return service.save(dto); } } diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/TdrService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/TdrService.java index 96ec062..3b82d60 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/TdrService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/TdrService.java @@ -25,6 +25,7 @@ package fr.ird.observe.services.service.longline; import fr.ird.observe.services.ObserveService; import fr.ird.observe.services.dto.FormDto; import fr.ird.observe.services.dto.longline.SetLonglineTdrDto; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.spi.PostRequest; import fr.ird.observe.services.spi.ReadDataPermission; import fr.ird.observe.services.spi.Write; @@ -44,6 +45,6 @@ public interface TdrService extends ObserveService { @Write @WriteDataPermission @PostRequest - String save(FormDto<SetLonglineTdrDto> form); + SaveResultDto save(SetLonglineTdrDto dto); } diff --git a/observe-services-model/src/main/xmi/observe-services-dto-longline.zargo b/observe-services-model/src/main/xmi/observe-services-dto-longline.zargo index 628e23b..df6798f 100644 Binary files a/observe-services-model/src/main/xmi/observe-services-dto-longline.zargo and b/observe-services-model/src/main/xmi/observe-services-dto-longline.zargo differ diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/dto/ObserveDtosInitializer.java b/observe-services-topia/src/main/java/fr/ird/observe/services/dto/ObserveDtosInitializer.java index 5192ea9..3ac43af 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/dto/ObserveDtosInitializer.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/dto/ObserveDtosInitializer.java @@ -681,6 +681,7 @@ public class ObserveDtosInitializer implements ObserveModelInitializer { public void initSetLonglineTdrDto() { registerDto(SetLonglineTdrDto.class, SetLongline.class, SetLonglineTdrDto.PROPERTY_TDR, + SetLonglineTdrDto.PROPERTY_SETTING_START_TIME_STAMP, SetLonglineTdrDto.PROPERTY_LAST_UPDATE ); } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/entity/EntitiesSetFactory.java b/observe-services-topia/src/main/java/fr/ird/observe/services/entity/EntitiesSetFactory.java index 6b23082..25ee3d0 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/entity/EntitiesSetFactory.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/entity/EntitiesSetFactory.java @@ -10,6 +10,7 @@ import fr.ird.observe.entities.longline.Branchline; import fr.ird.observe.entities.longline.CatchLongline; import fr.ird.observe.entities.longline.Encounter; import fr.ird.observe.entities.longline.Section; +import fr.ird.observe.entities.longline.Tdr; import fr.ird.observe.entities.longline.TripLongline; import fr.ird.observe.entities.referentiel.Person; import fr.ird.observe.entities.referentiel.Persons; @@ -146,6 +147,24 @@ public class EntitiesSetFactory { CatchLongline.class, CatchLongline.PROPERTY_BRANCHLINE); + // CatchLongline + registerSpeciesListEntitiesExtractor(builder, + Tdr.class, + Tdr.PROPERTY_SPECIES, + speciesListConfiguration.getSpeciesListLonglineCatchId()); + + registerSectionEntitiesExtractor(builder, + Tdr.class, + Tdr.PROPERTY_SECTION); + + registerBasketEntitiesExtractor(builder, + Tdr.class, + Tdr.PROPERTY_BASKET); + + registerBranchlineEntitiesExtractor(builder, + Tdr.class, + Tdr.PROPERTY_BRANCHLINE); + this.cache = builder.build(); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TdrServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TdrServiceTopia.java index 3f56923..a122222 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TdrServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TdrServiceTopia.java @@ -22,9 +22,14 @@ package fr.ird.observe.services.service.longline; * #L% */ +import com.google.common.collect.ImmutableMap; +import fr.ird.observe.entities.longline.Basket; +import fr.ird.observe.entities.longline.Branchline; +import fr.ird.observe.entities.longline.Section; import fr.ird.observe.entities.longline.SetLongline; import fr.ird.observe.services.ObserveServiceTopia; import fr.ird.observe.services.dto.FormDto; +import fr.ird.observe.services.dto.ReferenceDto; import fr.ird.observe.services.dto.ReferenceTypeName; import fr.ird.observe.services.dto.longline.BasketDto; import fr.ird.observe.services.dto.longline.BranchlineDto; @@ -35,6 +40,8 @@ import fr.ird.observe.services.dto.referential.SpeciesDto; import fr.ird.observe.services.dto.referential.longline.ItemHorizontalPositionDto; import fr.ird.observe.services.dto.referential.longline.ItemVerticalPositionDto; import fr.ird.observe.services.dto.referential.longline.SensorBrandDto; +import fr.ird.observe.services.dto.result.SaveResultDto; +import fr.ird.observe.services.dto.result.SaveResultDtos; /** * @author Sylvain Bavencoff - bavencoff@codelutin.com @@ -63,6 +70,7 @@ public class TdrServiceTopia extends ObserveServiceTopia implements TdrService { SetLonglineTdrDto.class, SetLongline.class, setLongline, + ImmutableMap.<String, Object>of(Section.PROPERTY_SET_LONGLINE, setLongline), new ReferenceTypeName(TdrDto.class, SensorBrandDto.class, TdrDto.PROPERTY_SENSOR_BRAND), new ReferenceTypeName(TdrDto.class, ItemHorizontalPositionDto.class, TdrDto.PROPERTY_ITEM_HORIZONTAL_POSITION), new ReferenceTypeName(TdrDto.class, ItemVerticalPositionDto.class, TdrDto.PROPERTY_ITEM_VERTICAL_POSITION), @@ -71,19 +79,62 @@ public class TdrServiceTopia extends ObserveServiceTopia implements TdrService { new ReferenceTypeName(TdrDto.class, BasketDto.class, TdrDto.PROPERTY_BASKET), new ReferenceTypeName(TdrDto.class, BranchlineDto.class, TdrDto.PROPERTY_BRANCHLINE)); + for(Section section : setLongline.getSection()) { + + for (Basket basket : section.getBasket()) { + + ReferenceDto<BasketDto> basketRef = form.getReferenceById(BasketDto.class, basket.getTopiaId()); + + basketRef.addPropertyValue(BasketDto.PROPERTY_SECTION, section.getTopiaId()); + + for (Branchline branchline : basket.getBranchline()) { + + ReferenceDto<BranchlineDto> branchlineRef = form.getReferenceById(BranchlineDto.class, branchline.getTopiaId()); + + branchlineRef.addPropertyValue(BranchlineDto.PROPERTY_BASKET, basket.getTopiaId()); + + } + + } + + } + + for (TdrDto tdrDto : form.getForm().getTdr()) { + + ReferenceDto<BasketDto> basketRef = tdrDto.getBasket(); + + if (basketRef != null) { + + ReferenceDto<BasketDto> basketRefLabel = form.getReferenceById(BasketDto.class, basketRef.getId()); + + basketRef.addPropertyValue(BasketDto.PROPERTY_SECTION, basketRefLabel.getPropertyValue(BasketDto.PROPERTY_SECTION)); + + } + + ReferenceDto<BranchlineDto> branchlineRef = tdrDto.getBranchline(); + + if (branchlineRef != null) { + + ReferenceDto<BranchlineDto> branchlineRefLabel = form.getReferenceById(BranchlineDto.class, branchlineRef.getId()); + + branchlineRef.addPropertyValue(BranchlineDto.PROPERTY_BASKET, branchlineRefLabel.getPropertyValue(BranchlineDto.PROPERTY_BASKET)); + + } + + } + + return form; } @Override - public String save(FormDto<SetLonglineTdrDto> form) { - - SetLonglineTdrDto setLonglineTdrDto = form.getForm(); + public SaveResultDto save(SetLonglineTdrDto dto) { - SetLongline setLongline = dtoToEntity(SetLonglineTdrDto.class, SetLongline.class, setLonglineTdrDto); + SetLongline setLongline = dtoToEntity(SetLonglineTdrDto.class, SetLongline.class, dto); setLongline = saveEntity(SetLongline.class, setLongline); - return setLongline.getTopiaId(); + return SaveResultDtos.newSaveResult(setLongline.getTopiaId(), setLongline.getLastUpdate()); } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.