branch feature/7458-LonglineTopiaService created (now 7fc8a17)
This is an automated email from the git hooks/post-receive script. New change to branch feature/7458-LonglineTopiaService in repository observe. See http://git.codelutin.com/observe.git at 7fc8a17 implantation TripLonglineService (refs #7458). This branch includes the following new commits: new 7fc8a17 implantation TripLonglineService (refs #7458). 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 7fc8a17a531c5f3c60a57ff219a03896846e86f7 Author: Sylvain Bavencoff <bavencoff@codelutin.com> Date: Thu Aug 27 09:38:21 2015 +0200 implantation TripLonglineService (refs #7458). -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/7458-LonglineTopiaService in repository observe. See http://git.codelutin.com/observe.git commit 7fc8a17a531c5f3c60a57ff219a03896846e86f7 Author: Sylvain Bavencoff <bavencoff@codelutin.com> Date: Thu Aug 27 09:38:21 2015 +0200 implantation TripLonglineService (refs #7458). --- .../entities/longline/TripLonglineTopiaDao.java | 4 +- .../service/longline/TripLonglineService.java | 4 +- .../main/xmi/observe-services-dto-longline.zargo | Bin 57340 -> 58090 bytes .../services/dto/ObserveDtosInitializer.java | 5 + .../service/longline/TripLonglineServiceTopia.java | 114 +++++++++++++++++++++ 5 files changed, 123 insertions(+), 4 deletions(-) diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/longline/TripLonglineTopiaDao.java b/observe-entities/src/main/java/fr/ird/observe/entities/longline/TripLonglineTopiaDao.java index d82baed..bba6edd 100644 --- a/observe-entities/src/main/java/fr/ird/observe/entities/longline/TripLonglineTopiaDao.java +++ b/observe-entities/src/main/java/fr/ird/observe/entities/longline/TripLonglineTopiaDao.java @@ -302,8 +302,8 @@ public class TripLonglineTopiaDao extends AbstractTripLonglineTopiaDao<TripLongl trip.setStartDate(set.getTimestamp(2)); trip.setEndDate(set.getTimestamp(3)); - String observerFirstName = set.getString(4); - String observerLastName = set.getString(5); + String observerLastName = set.getString(4); + String observerFirstName = set.getString(5); Person observer = new PersonImpl(); observer.setFirstName(observerFirstName); observer.setLastName(observerLastName); diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/TripLonglineService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/TripLonglineService.java index 336df82..bbca5df 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/TripLonglineService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/TripLonglineService.java @@ -2,8 +2,8 @@ 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.ReferenceDto; import fr.ird.observe.services.dto.longline.TripLonglineDto; +import fr.ird.observe.services.dto.longline.TripLonglineStubDto; import fr.ird.observe.services.spi.Write; import java.util.List; @@ -13,7 +13,7 @@ import java.util.List; */ public interface TripLonglineService extends ObserveService { - List<ReferenceDto<TripLonglineDto>> getTripLonglineByProgram(String programId); + List<TripLonglineStubDto> getTripLonglineByProgram(String programId); FormDto<TripLonglineDto> loadToRead(String tripLonglineId); 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 348b6d6..54f806d 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 3cebef7..96dcef8 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 @@ -653,6 +653,11 @@ public class ObserveDtosInitializer implements ObserveModelInitializer { } @Override + public void initTripLonglineStubDto() { + // la logique de copie est à ecrire directement dans le service + } + + @Override public void initWeightMeasureDto() { registerMainDto(WeightMeasureDto.class, WeightMeasure.class, WeightMeasureDto.PROPERTY_WEIGHT, diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TripLonglineServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TripLonglineServiceTopia.java new file mode 100644 index 0000000..a0363cb --- /dev/null +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TripLonglineServiceTopia.java @@ -0,0 +1,114 @@ +package fr.ird.observe.services.service.longline; + +import com.google.common.collect.Lists; +import fr.ird.observe.entities.constants.ReferenceLocale; +import fr.ird.observe.entities.longline.TripLongline; +import fr.ird.observe.entities.longline.TripLonglineTopiaDao; +import fr.ird.observe.entities.referentiel.Program; +import fr.ird.observe.services.ObserveServiceTopia; +import fr.ird.observe.services.dto.FormDto; +import fr.ird.observe.services.dto.longline.TripLonglineDto; +import fr.ird.observe.services.dto.longline.TripLonglineStubDto; +import fr.ird.observe.services.dto.referential.ProgramDto; +import org.nuiton.util.DateUtil; + +import java.util.Collections; +import java.util.Date; +import java.util.List; + +/** + * @author Sylvain Bavencoff - bavencoff@codelutin.com + */ +public class TripLonglineServiceTopia extends ObserveServiceTopia implements TripLonglineService { + + protected TripLonglineTopiaDao getDao() { + return (TripLonglineTopiaDao) serviceContext.getTopiaPersistenceContext().getDao(TripLongline.class); + } + + @Override + public List<TripLonglineStubDto> getTripLonglineByProgram(String programId) { + + ReferenceLocale referenceLocale = getReferenceLocale(); + + List<TripLongline> tripLonglines = getDao().findAllStubByProgramId(programId, referenceLocale); + + List<TripLonglineStubDto> stubs = Lists.newLinkedList(); + + for (TripLongline tripLongline : tripLonglines) { + + TripLonglineStubDto stub = new TripLonglineStubDto(); + stub.setId(tripLongline.getTopiaId()); + stub.setStartDate(tripLongline.getStartDate()); + stub.setEndDate(tripLongline.getEndDate()); + stub.setVesselLabel(referenceLocale.getLabel(tripLongline.getVessel())); + stub.setObserverLabel(tripLongline.getObserverLabel()); + + stubs.add(stub); + + } + + return stubs; + } + + @Override + public FormDto<TripLonglineDto> loadToRead(String tripLonglineId) { + + TripLongline tripLongline = loadEntity(TripLonglineDto.class, TripLongline.class, tripLonglineId); + + FormDto<TripLonglineDto> form = entityToReadFormDto(TripLonglineDto.class, TripLongline.class, tripLongline); + + return form; + } + + @Override + public FormDto<TripLonglineDto> loadToEdit(String tripLonglineId) { + + TripLongline tripLongline = loadEntity(TripLonglineDto.class, TripLongline.class, tripLonglineId); + + FormDto<TripLonglineDto> form = entityToEditFormDto(TripLonglineDto.class, TripLongline.class, tripLongline); + + TripLonglineDto tripLonglineDto = form.getForm(); + + if (tripLonglineDto.getEndDate() == null) { + Date date = DateUtil.getEndOfDay(now()); + tripLonglineDto.setEndDate(date); + } + + return form; + } + + @Override + public FormDto<TripLonglineDto> preCreate(String programId) { + + TripLongline tripLongline = newEntity(TripLongline.class); + + Program program = loadEntity(ProgramDto.class, Program.class, programId); + + Date date = DateUtil.getDay(now()); + + tripLongline.setStartDate(date); + + tripLongline.setEndDate(date); + + tripLongline.setProgram(program); + + FormDto<TripLonglineDto> form = entityToEditFormDto(TripLonglineDto.class, TripLongline.class, tripLongline); + + return form; + } + + @Override + public String save(FormDto<TripLonglineDto> form) { + + TripLongline tripLongline = dtoToEntity(TripLonglineDto.class, TripLongline.class, form.getForm()); + + tripLongline = saveEntity(TripLongline.class, tripLongline); + + return tripLongline.getTopiaId(); + } + + @Override + public void delete(String tripLonglineId) { + deleteEntity(TripLonglineDto.class, TripLongline.class, Collections.singleton(tripLonglineId)); + } +} -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
participants (1)
-
codelutin.com scm