r1892 - in trunk: wao-persistence/src/main/java/fr/ifremer/wao/entity wao-services/src/main/java/fr/ifremer/wao/services/service wao-web/src/main/resources/i18n wao-web/src/main/webapp/WEB-INF/content/obsmer
Author: bleny Date: 2014-04-16 12:23:07 +0200 (Wed, 16 Apr 2014) New Revision: 1892 Url: http://forge.codelutin.com/projects/wao/repository/revisions/1892 Log: refs #4490 add a link to contacts for boat Modified: trunk/wao-persistence/src/main/java/fr/ifremer/wao/entity/ContactTopiaDao.java trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/BoatDetails.java trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsMerBoatsService.java trunk/wao-web/src/main/resources/i18n/wao-web_en_GB.properties trunk/wao-web/src/main/resources/i18n/wao-web_fr_FR.properties trunk/wao-web/src/main/webapp/WEB-INF/content/obsmer/boat-details.jsp Modified: trunk/wao-persistence/src/main/java/fr/ifremer/wao/entity/ContactTopiaDao.java =================================================================== --- trunk/wao-persistence/src/main/java/fr/ifremer/wao/entity/ContactTopiaDao.java 2014-04-15 15:19:39 UTC (rev 1891) +++ trunk/wao-persistence/src/main/java/fr/ifremer/wao/entity/ContactTopiaDao.java 2014-04-16 10:23:07 UTC (rev 1892) @@ -217,4 +217,11 @@ return query.findFirstOrNull(); } + public long countContacts(ObsProgram obsProgram, String boatId, String companyId) { + TopiaQueryBuilderAddCriteriaOrRunQueryStep<Contact> query = newQueryBuilder(); + query.addTopiaIdEquals(Contact.PROPERTY_BOAT, boatId); + query.addTopiaIdEquals(Contact.PROPERTY_SAMPLE_ROW + "." + SampleRow.PROPERTY_COMPANY, companyId); + query.addEquals(Contact.PROPERTY_SAMPLE_ROW + "." + SampleRow.PROPERTY_OBS_PROGRAM_ORDINAL, obsProgram.ordinal()); + return query.count(); + } } Modified: trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/BoatDetails.java =================================================================== --- trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/BoatDetails.java 2014-04-15 15:19:39 UTC (rev 1891) +++ trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/BoatDetails.java 2014-04-16 10:23:07 UTC (rev 1892) @@ -41,10 +41,13 @@ protected Contact mostRecentContact; - public BoatDetails(ObsProgram obsProgram, BoatInfos boatInfos, Contact mostRecentContact) { + protected long contactsCount; + + public BoatDetails(ObsProgram obsProgram, BoatInfos boatInfos, Contact mostRecentContact, long contactsCount) { this.obsProgram = obsProgram; this.boatInfos = boatInfos; this.mostRecentContact = mostRecentContact; + this.contactsCount = contactsCount; } public BoatInfos getBoatInfos() { @@ -73,4 +76,8 @@ } return elligibleForSampleRows; } + + public long getContactsCount() { + return contactsCount; + } } Modified: trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsMerBoatsService.java =================================================================== --- trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsMerBoatsService.java 2014-04-15 15:19:39 UTC (rev 1891) +++ trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsMerBoatsService.java 2014-04-16 10:23:07 UTC (rev 1892) @@ -169,9 +169,9 @@ Contact mostRecentContact = getContactDao().findMostRecentContactOrNull(obsProgram, boatId, companyId); - long count = getContactDao().newQueryBuilder().addTopiaIdEquals(Contact.PROPERTY_BOAT, boatId).count(); + long contactsCount = getContactDao().countContacts(obsProgram, boatId, companyId); - BoatDetails boatDetails = new BoatDetails(obsProgram, boatInfos, mostRecentContact); + BoatDetails boatDetails = new BoatDetails(obsProgram, boatInfos, mostRecentContact, contactsCount); return boatDetails; Modified: trunk/wao-web/src/main/resources/i18n/wao-web_en_GB.properties =================================================================== --- trunk/wao-web/src/main/resources/i18n/wao-web_en_GB.properties 2014-04-15 15:19:39 UTC (rev 1891) +++ trunk/wao-web/src/main/resources/i18n/wao-web_en_GB.properties 2014-04-16 10:23:07 UTC (rev 1892) @@ -80,6 +80,7 @@ wao.ui.action.switchToFullView=Switch to full view wao.ui.action.unvalidateContact=Unvalidate contact wao.ui.action.viewAssociatedContacts=View sample row contacts +wao.ui.action.viewAssociatedContactsForBoat=View %s contacts for this boat wao.ui.action.viewBoatsForRow=View the boats for this sample row wao.ui.action.viewCompanyWaoUsers=View users for this company wao.ui.action.viewElligibleBoats=View eligible boats @@ -96,6 +97,9 @@ wao.ui.boats.boatLength=Length wao.ui.boats.boatName=Name wao.ui.boats.buildYear=Build year +wao.ui.boats.contacts=Contacts +wao.ui.boats.contacts.existing=Existing contacts +wao.ui.boats.contacts.none=No contacts wao.ui.boats.district=District wao.ui.boats.info=Details wao.ui.boats.interlocutor=Interlocutor Modified: trunk/wao-web/src/main/resources/i18n/wao-web_fr_FR.properties =================================================================== --- trunk/wao-web/src/main/resources/i18n/wao-web_fr_FR.properties 2014-04-15 15:19:39 UTC (rev 1891) +++ trunk/wao-web/src/main/resources/i18n/wao-web_fr_FR.properties 2014-04-16 10:23:07 UTC (rev 1892) @@ -80,6 +80,7 @@ wao.ui.action.switchToFullView=Étendre la vue wao.ui.action.unvalidateContact=Invalider le contact wao.ui.action.viewAssociatedContacts=Voir les contacts associés à cette ligne +wao.ui.action.viewAssociatedContactsForBoat=Voir les %s contacts pour ce navire wao.ui.action.viewBoatsForRow=Voir les navires présentis pour cette ligne wao.ui.action.viewCompanyWaoUsers=Voir les utilisateurs associés à cette société wao.ui.action.viewElligibleBoats=Consulter les navires éligibles @@ -96,6 +97,9 @@ wao.ui.boats.boatLength=Longueur wao.ui.boats.boatName=Nom wao.ui.boats.buildYear=Année de construction +wao.ui.boats.contacts=Contacts +wao.ui.boats.contacts.existing=Contacts existants +wao.ui.boats.contacts.none=Aucun contact wao.ui.boats.district=Quartier maritime wao.ui.boats.info=Autres informations sur ce navire wao.ui.boats.interlocutor=Coordonnées de l'interlocuteur Modified: trunk/wao-web/src/main/webapp/WEB-INF/content/obsmer/boat-details.jsp =================================================================== --- trunk/wao-web/src/main/webapp/WEB-INF/content/obsmer/boat-details.jsp 2014-04-15 15:19:39 UTC (rev 1891) +++ trunk/wao-web/src/main/webapp/WEB-INF/content/obsmer/boat-details.jsp 2014-04-16 10:23:07 UTC (rev 1892) @@ -131,9 +131,16 @@ </tbody> </table> +<h2> + <s:text name="wao.ui.boats.contacts"/> +</h2> -<s:if test="boatDetails.mostRecentContact != null"> +<h3> + <s:text name="wao.ui.boats.contacts.existing"/> +</h3> +<s:if test="boatDetails.contactsCount > 0"> + <h3> <s:text name="wao.ui.contact.lastContact"/> </h3> @@ -174,11 +181,27 @@ </tr> </tbody> </table> + + <s:url action="contacts" id="viewAssociatedContactsForBoatUrl"> + <s:param name="filter.boatFilter.registrationCode" value="boatDetails.boatInfos.boat.immatriculation"/> + <s:param name="filter.periodFrom"/> + <s:param name="filter.periodTo"/> + </s:url> + <s:a href="%{viewAssociatedContactsForBoatUrl}"> + <s:text name="wao.ui.action.viewAssociatedContactsForBoat"> + <s:param value="boatDetails.contactsCount"/> + </s:text> + </s:a> + </s:if> +<s:else> + <s:text name="wao.ui.boats.contacts.none"/> +</s:else> <h3> <s:text name="wao.ui.contact.creation"/> </h3> + <s:if test="boatDetails.boatInfos.boat.active"> <s:if test="startBoatSelectionForSampleRow == null"> <s:if test="boatDetails.elligibleForSampleRows.empty"> @@ -237,4 +260,4 @@ <div class="alert"> <s:text name="wao.ui.tip.inactiveBoat"/> </div> -</s:else> \ No newline at end of file +</s:else>
participants (1)
-
bleny@users.forge.codelutin.com