Author: vbriand Date: 2011-04-14 14:32:04 +0200 (Thu, 14 Apr 2011) New Revision: 83 Url: http://chorem.org/repositories/revision/chorem/83 Log: Added the customer(s) on the projects' page Modified: trunk/chorem-web/src/main/java/org/chorem/gepeto/action/ProjectAction.java trunk/chorem-web/src/main/webapp/WEB-INF/jsp/gepeto/projectsByYear.jsp Modified: trunk/chorem-web/src/main/java/org/chorem/gepeto/action/ProjectAction.java =================================================================== --- trunk/chorem-web/src/main/java/org/chorem/gepeto/action/ProjectAction.java 2011-04-14 09:42:59 UTC (rev 82) +++ trunk/chorem-web/src/main/java/org/chorem/gepeto/action/ProjectAction.java 2011-04-14 12:32:04 UTC (rev 83) @@ -9,6 +9,7 @@ import org.apache.commons.logging.LogFactory; import org.chorem.ChoremProxy; import org.chorem.action.BaseAction; +import org.chorem.entities.Company; import org.chorem.entities.Project; import org.chorem.entities.ProjectImpl; import org.chorem.entities.ProjectOrder; @@ -207,6 +208,44 @@ } /** + * Gets the project orders of the given project + * + * @param projectId the project's id + * @return the project orders + */ + public List<ProjectOrder> getProjectOrders(String projectId) { + ChoremProxy proxy = getChoremProxy(); + Search search = Search.query(); + Criteria criteria = search.exteq(ProjectOrder.EXT_PROJECTORDER). + associated(ProjectOrder.FQ_FIELD_PROJECTORDER_QUOTATION). + eq(Quotation.FQ_FIELD_QUOTATION_PROJECT, projectId).criteria(); + PagedResult<ProjectOrder> result = proxy.findAllByCriteria(ProjectOrder.class, + criteria); + List<ProjectOrder> projectOrders = result.getAll(); + + return projectOrders; + } + + /** + * Gets the customers of a project + * + * @param projectId the project's id + * @return the customers + */ + public List<String> getCustomers(String projectId) { + ChoremProxy proxy = getChoremProxy(); + List<ProjectOrder> projectOrders = getProjectOrders(projectId); + List<String> customers = new ArrayList<String>(); + Company company; + + for (ProjectOrder projectOrder : projectOrders) { + company = proxy.restore(Company.class, projectOrder.getCompany()); + customers.add(company.getName()); + } + return customers; + } + + /** * @return the name */ public String getName() { Modified: trunk/chorem-web/src/main/webapp/WEB-INF/jsp/gepeto/projectsByYear.jsp =================================================================== --- trunk/chorem-web/src/main/webapp/WEB-INF/jsp/gepeto/projectsByYear.jsp 2011-04-14 09:42:59 UTC (rev 82) +++ trunk/chorem-web/src/main/webapp/WEB-INF/jsp/gepeto/projectsByYear.jsp 2011-04-14 12:32:04 UTC (rev 83) @@ -40,9 +40,19 @@ <s:param name="projectId"><%= project.getWikittyId() %></s:param> </s:url> <td><a href="${projectDetails}"><%= project.getName() %></a></td> + <td> + <% + List<String> customers = ProjectAction.getAction().getCustomers(project.getWikittyId()); + + for (String customer : customers) { + %> + <%= customer %> + <% + } + %> + </td> <td></td> <td></td> - <td></td> </tr> <% } %> </tbody>