[Suiviobsmer-commits] r140 - in trunk: . suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl suiviobsmer-business/src/main/xmi suiviobsmer-business/src/test/java/fr/ifremer/suiviobsmer/entity suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/pages suiviobsmer-ui/src/main/webapp/img
Author: fdesbois Date: 2009-12-21 10:22:48 +0000 (Mon, 21 Dec 2009) New Revision: 140 Added: trunk/suiviobsmer-ui/src/main/webapp/img/logo_WAO.png Modified: trunk/changelog.txt trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/BoatImpl.java trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceBoatImpl.java trunk/suiviobsmer-business/src/main/xmi/suiviobsmer.zargo trunk/suiviobsmer-business/src/test/java/fr/ifremer/suiviobsmer/entity/BoatImplTest.java trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/pages/Boats.java Log: Correction canCreateContact condition Modified: trunk/changelog.txt =================================================================== --- trunk/changelog.txt 2009-12-20 19:50:20 UTC (rev 139) +++ trunk/changelog.txt 2009-12-21 10:22:48 UTC (rev 140) @@ -24,7 +24,7 @@ [15-12-2009] [fdesbois] EVO IHM #1941 (Boats / BoatActivityCalendar) Ajout du champ d'import pour les calendriers d'activité + accès au fichier de log des imports -[13-12-2009] [fdesbois] EVO METIER +[13-12-2009] [fdesbois] EVO METIER #1941 (Boats / BoatActivityCalendar) * Renommage classe SuiviObsmerUtils par SuiviObsmerContext plus approprié * Ajout gestion import des calendriers d'activité (Lancé en arrière-plan) Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/BoatImpl.java =================================================================== --- trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/BoatImpl.java 2009-12-20 19:50:20 UTC (rev 139) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/entity/BoatImpl.java 2009-12-21 10:22:48 UTC (rev 140) @@ -140,31 +140,29 @@ * @throws SuiviObsmerException */ @Override - public boolean canCreateContact(Company company, SampleRow row) throws SuiviObsmerException { + public boolean canCreateContact(Company company) throws SuiviObsmerException { TopiaContext transaction = null; - // FIXME depends on condition over double creation on the same sampleRow for the same company. - // Normally, the default value is true (if no contact exist for this boat, it's possible to create one) - boolean result = false; + boolean result = true; try { transaction = SuiviObsmerContext.getTopiaRootContext().beginTransaction(); - // Return the last contact for this boat, sampleRow and company + String contactClassName = Contact.class.getName(); + // Return the last contact for this boat and company List results = transaction.find( - "FROM ContactImpl C1" + + "FROM " + contactClassName + " C1" + " WHERE C1.user.company = :company" + - " AND C1.boat = :boat AND C1.sampleRow = :row" + + " AND C1.boat = :boat" + " AND C1.topiaCreateDate = " + - " (SELECT MAX(C2.topiaCreateDate) FROM ContactImpl C2" + + " (SELECT MAX(C2.topiaCreateDate) FROM " + contactClassName + " C2" + " WHERE C2.user.company = :company AND C2.boat = C1.boat)", "company", company, - "boat", this, - "row", row); + "boat", this); if (!results.isEmpty()) { Contact contact = (Contact)results.get(0); boolean validation = contact.getValidationProgram() != null || BooleanUtils.isFalse(contact.getValidationCompany()); ContactState state = ContactState.createContactStateEnum(contact.getState()); - result = validation && !state.equals(ContactState.BOAT_DEFINITIVE_REFUSED); + result = validation/* && !state.equals(ContactState.BOAT_DEFINITIVE_REFUSED)*/; } transaction.closeContext(); Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceBoatImpl.java =================================================================== --- trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceBoatImpl.java 2009-12-20 19:50:20 UTC (rev 139) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceBoatImpl.java 2009-12-21 10:22:48 UTC (rev 140) @@ -276,11 +276,12 @@ } } // Last contact + String contactClassName = Contact.class.getName(); List results = transaction.find( - "FROM ContactImpl C1" + + "FROM " + contactClassName + " C1" + " WHERE C1.user.company = :company AND C1.boat = :boat " + " AND C1.topiaCreateDate = " + - " (SELECT MAX(C2.topiaCreateDate) FROM ContactImpl C2" + + " (SELECT MAX(C2.topiaCreateDate) FROM " + contactClassName + " C2" + " WHERE C2.user.company = :company AND C2.boat = C1.boat)", "company", company, "boat", boat); @@ -508,9 +509,11 @@ // "Le navire avec l'identifiant '" + boatId + "' n'existe pas"); // } + String activityCalendarClassName = ActivityCalendar.class.getName(); List results = transaction.find( - "FROM ActivityCalendarImpl A WHERE A.boat = :boat AND A.year = " + - "(SELECT MAX(B.year) FROM ActivityCalendarImpl B WHERE B.boat = A.boat GROUP BY B.boat)", + "FROM " + activityCalendarClassName + " A WHERE A.boat = :boat AND A.year = " + + "(SELECT MAX(B.year) FROM " + activityCalendarClassName + " B " + + " WHERE B.boat = A.boat GROUP BY B.boat)", "boat", boat); result = (ActivityCalendar) results.get(0); Modified: trunk/suiviobsmer-business/src/main/xmi/suiviobsmer.zargo =================================================================== (Binary files differ) Modified: trunk/suiviobsmer-business/src/test/java/fr/ifremer/suiviobsmer/entity/BoatImplTest.java =================================================================== --- trunk/suiviobsmer-business/src/test/java/fr/ifremer/suiviobsmer/entity/BoatImplTest.java 2009-12-20 19:50:20 UTC (rev 139) +++ trunk/suiviobsmer-business/src/test/java/fr/ifremer/suiviobsmer/entity/BoatImplTest.java 2009-12-21 10:22:48 UTC (rev 140) @@ -183,7 +183,7 @@ serviceContact.saveContact(contact1, false); /** EXEC METHOD **/ - boolean result = boat.canCreateContact(company, row); + boolean result = boat.canCreateContact(company); // contact still open Assert.assertFalse(result); @@ -191,28 +191,28 @@ contact1.setValidationProgram(Boolean.TRUE); serviceContact.saveContact(contact1, false); - result = boat.canCreateContact(company, row); + result = boat.canCreateContact(company); // contact have a definitive refused for this boat - Assert.assertFalse(result); + Assert.assertTrue(result); contact1.setState(ContactState.BOARDING_DONE.toString()); serviceContact.saveContact(contact1, false); - result = boat.canCreateContact(company, row); + result = boat.canCreateContact(company); // contact is finished Assert.assertTrue(result); contact1.setState(ContactState.BOAT_UNAVAILABLE.toString()); serviceContact.saveContact(contact1, false); - result = boat.canCreateContact(company, row); + result = boat.canCreateContact(company); // contact is finished Assert.assertTrue(result); contact1.setState(ContactState.BOAT_REFUSED.toString()); serviceContact.saveContact(contact1, false); - result = boat.canCreateContact(company, row); + result = boat.canCreateContact(company); // contact is finished Assert.assertTrue(result); } Modified: trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/pages/Boats.java =================================================================== --- trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/pages/Boats.java 2009-12-20 19:50:20 UTC (rev 139) +++ trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/pages/Boats.java 2009-12-21 10:22:48 UTC (rev 140) @@ -440,7 +440,7 @@ public boolean canCreateNewContactFromList() throws SuiviObsmerException { if (!user.getAdmin() && isSampleRowExists()) { - return boat.canCreateContact(user.getCompany(), getSampleRow()); + return boat.canCreateContact(user.getCompany()); } return false; } @@ -559,7 +559,8 @@ public boolean canCreateNewContactFromElligibleBoat() throws SuiviObsmerException { if (!user.getAdmin() && !isElligibleBoatCompanyActiveFalse()) { - return getBoatInfos().getBoat().canCreateContact(user.getCompany(), elligibleBoat.getSampleRow()); + Boat boat = getBoatInfos().getBoat(); + return boat.canCreateContact(user.getCompany()); } return false; } Added: trunk/suiviobsmer-ui/src/main/webapp/img/logo_WAO.png =================================================================== (Binary files differ) Property changes on: trunk/suiviobsmer-ui/src/main/webapp/img/logo_WAO.png ___________________________________________________________________ Added: svn:mime-type + application/octet-stream
participants (1)
-
fdesbois@users.labs.libre-entreprise.org