Author: fdesbois Date: 2010-06-15 15:15:57 +0000 (Tue, 15 Jun 2010) New Revision: 532 Log: Evo #2248 : - Reorganize news query using aliases for addFetch - Improve text to display in Index page Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceNewsImpl.java trunk/wao-ui/src/main/webapp/Index.tml Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceNewsImpl.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceNewsImpl.java 2010-06-15 14:32:33 UTC (rev 531) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceNewsImpl.java 2010-06-15 15:15:57 UTC (rev 532) @@ -85,21 +85,25 @@ NewsDAO dao = WaoDAOHelper.getNewsDAO(transaction); - TopiaQuery query = dao.createQuery(). - addFetch(News.COMPANY). - addOrderDesc(News.TOPIA_CREATE_DATE); + String newsAlias = "N"; + String companyProperty = + TopiaQuery.getProperty(newsAlias, News.COMPANY); + String createDateProperty = + TopiaQuery.getProperty(newsAlias, News.TOPIA_CREATE_DATE); -// if (!user.isAdmin() && !user.isGuest()) { -// -// } - query.addWhere(new StringBuilder(News.COMPANY). + TopiaQuery query = dao.createQuery(newsAlias). + // Add fetch to load company (will used a join) + addFetch(companyProperty). + addOrderDesc(createDateProperty); + + query.addWhere(new StringBuilder(companyProperty). append(" IS NULL OR "). - append(News.COMPANY). + append(companyProperty). append(" = :company"). toString() ).addParam("company", user.getCompany()); - // query.addWhere("$1 IS NULL OR $1 = :company", News.COMPANY).addParam("company", user.getCompany()); + // query.addWhere("$1 IS NULL OR $1 = :company", companyAlias).addParam("company", user.getCompany()); // query.addWhere(TopiaQuery.newOr(News.COMPANY).or("? IS NULL").or("? = :company").toString()).addParam("company", user.getCompany()); List<News> results = dao.findAllByQuery(query); Modified: trunk/wao-ui/src/main/webapp/Index.tml =================================================================== --- trunk/wao-ui/src/main/webapp/Index.tml 2010-06-15 14:32:33 UTC (rev 531) +++ trunk/wao-ui/src/main/webapp/Index.tml 2010-06-15 15:15:57 UTC (rev 532) @@ -45,7 +45,7 @@ Publiée par <t:if t:test="news.fromAdmin"> le programme - <p:else>par votre société</p:else> + <p:else>votre société</p:else> </t:if> le <t:output value="news.topiaCreateDate" format="dateFormat" />