Author: bleny Date: 2011-07-21 15:41:49 +0000 (Thu, 21 Jul 2011) New Revision: 1383 Log: more contact validation for ObsDeb Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceContactImpl.java Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceContactImpl.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceContactImpl.java 2011-07-21 10:32:18 UTC (rev 1382) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceContactImpl.java 2011-07-21 15:41:49 UTC (rev 1383) @@ -273,6 +273,25 @@ if (contact.getObsProgram() == ObsProgram.OBSDEB) { + if (contact.getLandingDate() != null) { + if (success && contact.getObservationBeginDate() != null) { + Date dayBeforeObservation = DateUtils.addDays(contact.getObservationBeginDate(), -1); + boolean landingDateIsValid = + DateUtils.isSameDay(contact.getObservationBeginDate(), contact.getLandingDate()) + || DateUtils.isSameDay(dayBeforeObservation, contact.getLandingDate()); + if ( ! landingDateIsValid) { + success = false; + message = "La date de débarquement doit être la veille ou le jour de l'observation"; + } + } + + if (success && contact.getObservationEndDate() != null + && contact.getObservationEndDate().before(contact.getLandingDate())) { + success = false; + message = "La débarquement ne peut avoir eu lieu après le fin de l'observation"; + } + } + if (contact.getContactState() == ContactState.OBSERVATION_DONE) { if (success && contact.getTerrestrialLocation() == null) {