home *** CD-ROM | disk | FTP | other *** search
/ Chip 2003 July / CMCD0703.ISO / Software / Freeware / Programare / bugzero / jsp / summary.jsp < prev   
Text File  |  2003-06-05  |  4KB  |  118 lines

  1. <%@ page language="java"
  2.     session="true"
  3.     import="com.websina.bean.*,com.websina.util.*,com.websina.util.log.Log"
  4.     errorPage="error.jsp"
  5. %>
  6. <html>
  7. <head>
  8. <title>Summary Report</title>
  9. </head>
  10. <body topmargin=0>
  11. <%@ include file="_cache.jspf" %>
  12. <%      
  13.   Label label = Label.getInstance();        
  14.   com.websina.bean.Report report = 
  15.     (com.websina.bean.Report)session.getAttribute("summary_report");
  16.   java.util.Map summary = null;
  17.   if (report != null) {
  18.     summary = report.getSummary();
  19.   }
  20.   if (summary == null) {
  21.     out.print("<center><font color=red><b>");
  22.     out.print(" <br> <br>"+MessageCode.get("servlet.report.no_summary_report"));
  23.     out.print("</b></font></center>");
  24.     return;
  25.   }
  26.   String xName = report.getXName();
  27.   String yName = report.getYName();
  28.   String projectId = report.getProjectId();
  29.  
  30.   Project conf = Project.getInstance(projectId);
  31.   DateTime dateTime = (DateTime)session.getAttribute("datetime");
  32.  
  33.   String[] x = null;
  34.   String[] xDisplay = null;
  35.   String[] y = null;
  36.   String[] yDisplay = null;
  37.   int[] total = null;
  38.   if ("responsible".equalsIgnoreCase(xName)) {
  39.     com.websina.util.Field field = conf.getAccess().getUsers("edit");
  40.     x = field.getValue();
  41.     xDisplay = field.getText();
  42.   } else {
  43.     x = (String[])summary.keySet().toArray(new String[0]);
  44.     xDisplay = x;
  45.   }
  46.   if ("responsible".equalsIgnoreCase(yName)) {
  47.     com.websina.util.Field field = conf.getAccess().getUsers("edit");
  48.     y = field.getValue();
  49.     yDisplay = field.getText();
  50.   } else {
  51.     java.util.HashSet set = new java.util.HashSet();
  52.     for (int i=0; i<x.length; i++) {
  53.       set.addAll( ((java.util.Map)summary.get(x[i])).keySet());
  54.     }
  55.     y = (String[])set.toArray(new String[0]);
  56.     yDisplay = y;
  57.   }
  58.   total = new int[x.length+1];
  59.   for (int i=0; i<=x.length; i++) {
  60.      total[i] = 0; 
  61.   }
  62. %>
  63. <center>
  64.  <br>
  65. <font size="+2"><b><%=conf.getName()%></b></font>
  66. <font size="+1">Summary Report</font>
  67. <br>
  68.  
  69. <%=label.get(yName, projectId)%> versus <%=label.get(xName, projectId)%>
  70. <br><%=dateTime.localTime()%>
  71. <p>
  72.  
  73. <table cellspacing=1 cellpadding=2 border=0>
  74. <tr>
  75. <td bgcolor="#b3c3db"> </td>
  76.   <% for (int i=0; i<x.length; i++) {
  77.   %>
  78. <td bgcolor="#b3c3db" align=center> <%= xDisplay[i] %></td>
  79.   <% } %>
  80. <td bgcolor="#b3c3db" align=center>Total </td>
  81. </tr>
  82.  
  83.   <% for (int i=0; i<y.length; i++) {
  84.        int xTotal = 0; 
  85.   %>
  86. <tr><td bgcolor="#b3c3db" align=right><%= yDisplay[i] %> </td>
  87.      <% for (int j=0; j<x.length; j++) {
  88.           Integer count = null; 
  89.           java.util.Map yMap = (java.util.Map)summary.get(x[j]);
  90.           if (yMap != null) {
  91.              count = (Integer)yMap.get(y[i]);
  92.           }
  93.           if (count == null) {
  94.             count = new Integer(0);
  95.           }
  96.           int c = count.intValue();
  97.           xTotal += c;
  98.           total[j] += c; 
  99.           total[x.length] += c;
  100.      %>
  101. <td bgcolor="#efefef" align=center> <%= count %></td>
  102.      <% } %> <td bgcolor="#efefef" align=center><%=xTotal%></td></tr>
  103.   <% } %>
  104.  
  105. <tr><td bgcolor="#b3c3db" align=right>Total </td>
  106.      <% for (int j=0; j<=x.length; j++) {
  107.      %>
  108. <td bgcolor="#efefef" align=center><%=total[j] %></td>
  109.      <% } %> </tr>
  110. <tr><td colspan=<%=(x.length+2)%> align=right>
  111.  <br>
  112. <a href="<%=request.getContextPath()%>/servlet/export/summary.csv?type=3" title="Export to CSV">Export <img src="img/excel.gif" border=0></a>
  113. </td></tr>
  114. </table>
  115. </center>
  116. </body>
  117. </html>
  118.