~mortenoh/+junk/dhis2-detailed-import-export

« back to all changes in this revision

Viewing changes to local/et/dhis-web-ethiopia/src/main/webapp/dhis-web-reports/Ethiopia/rpXRAY.jsp

  • Committer: larshelge at gmail
  • Date: 2009-03-03 16:46:36 UTC
  • Revision ID: larshelge@gmail.com-20090303164636-2sjlrquo7ib1gf7r
Initial check-in

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<%@ page import="java.sql.*" %>
 
2
<%@ page import="java.util.*" %>
 
3
<%@ page import="com.opensymphony.xwork.util.OgnlValueStack" %>
 
4
 
 
5
 
 
6
<%
 
7
    Connection con=null;
 
8
    Statement st1=null;
 
9
    ResultSet rs1=null; 
 
10
            
 
11
  //initial value
 
12
  int orgUnitId = 253;
 
13
  int periodId = 203;
 
14
  int parentId = 0;
 
15
  String parentName = null;
 
16
    OgnlValueStack stack = (OgnlValueStack)request.getAttribute("webwork.valueStack");
 
17
          String selectedId = (String) stack.findValue( "orgUnitId" );
 
18
          orgUnitId = Integer.parseInt( selectedId );
 
19
        
 
20
          String selectedPeriodId = (String) stack.findValue( "periodSelect" );
 
21
          periodId = Integer.parseInt( selectedPeriodId );
 
22
  
 
23
    String userName = "root";      
 
24
    String password = "";           
 
25
    String urlForConnection = "jdbc:mysql://localhost/dhis2";  
 
26
    
 
27
    Integer g=0;
 
28
    
 
29
    String[][] orgUnit= new String[100][2];
 
30
        int[] outM= new int[100];
 
31
        int[] outF= new int[100];
 
32
        int[] inM= new int[100];
 
33
        int[] inF= new int[100];
 
34
        int totalOutM= 0;
 
35
        int totalOutF= 0;
 
36
        int totalInM= 0;
 
37
        int totalInF=0;
 
38
        String orgUnitName="";
 
39
        String startDate="";
 
40
        String endDate="";
 
41
        boolean nextde=true;
 
42
        
 
43
        String [] services= {"X-Ray","Biopsy","Sonography"};
 
44
        
 
45
        int[] deint1= {1820,1827,1831};
 
46
        int[] deint2= {1821,1826,1829};
 
47
        int[] deint3= {1822,1825,1830};
 
48
        int[] deint4= {1823,1824,1828};
 
49
        
 
50
        int i=0;
 
51
     try
 
52
      {
 
53
        Class.forName ("com.mysql.jdbc.Driver");
 
54
        con = DriverManager.getConnection (urlForConnection, userName, password);
 
55
        st1=con.createStatement();
 
56
                                
 
57
        rs1 = st1.executeQuery("select name,parent from organizationunit where id=" + orgUnitId);
 
58
                if (rs1.next()){
 
59
                        orgUnitName= rs1.getString("name");
 
60
                        parentId=rs1.getInt("parent");
 
61
                }
 
62
                
 
63
                rs1 = st1.executeQuery("select name from organizationunit where id"+parentId);
 
64
                if (rs1.next())
 
65
                {
 
66
                        parentName=rs1.getString("name");
 
67
                }
 
68
                
 
69
                rs1 = st1.executeQuery("select name from organizationunit where parent is null");
 
70
                if (rs1.next())
 
71
                {
 
72
                        parentName= rs1.getString("name");
 
73
                }
 
74
                
 
75
                rs1 = st1.executeQuery("select startDate,endDate from period where id=" + periodId);
 
76
                if (rs1.next()){
 
77
                        startDate= rs1.getString("startDate");
 
78
                        endDate= rs1.getString("endDate");
 
79
                }
 
80
                
 
81
                String sql="select value from datavalue where source="+orgUnitId+" and period=" +periodId+" and dataelement in (1820,1827,1831)";
 
82
                rs1 = st1.executeQuery(sql);
 
83
        int j=0;
 
84
                
 
85
                if (rs1.next())
 
86
                {
 
87
                for (j=0;j<i;j++)
 
88
          {
 
89
                        rs1.beforeFirst();
 
90
                        nextde=true;
 
91
                                while (rs1.next()&& nextde)
 
92
                                {         
 
93
                                        if (deint1[j]==(rs1.getString("dataelement")))
 
94
                                        {         
 
95
                                                outM[j]=rs1.getInt("value");
 
96
                                                nextde=false;
 
97
                                        }
 
98
                                        
 
99
                                }
 
100
                                
 
101
                }
 
102
                  }        
 
103
        
 
104
        
 
105
                sql="select value,source from datavalue where source="+orgUnitId+" and period=" +periodId+" and dataelement in (1821,1826,1829)";
 
106
                rs1 = st1.executeQuery(sql);
 
107
        
 
108
                if (rs1.next())
 
109
                {
 
110
                for (j=0;j<i;j++)
 
111
          {
 
112
                        rs1.beforeFirst();
 
113
                        nextde=true;  
 
114
                                while (rs1.next() && nextde)
 
115
                                {       
 
116
                                        if (deint2[j]==(rs1.getString("dataelement")))
 
117
                                        {         
 
118
                                                outF[j]=rs1.getInt("value");
 
119
                                                nextde=false;
 
120
                                        }
 
121
                                        
 
122
                                }  
 
123
                }
 
124
                  }        
 
125
        
 
126
                sql="select value,source from datavalue where source="+orgUnitId+" and period=" +periodId+" and dataelement in (1822,1825,1830)";
 
127
                rs1 = st1.executeQuery(sql);
 
128
        
 
129
                if (rs1.next())
 
130
                {
 
131
                for (j=0;j<i;j++)
 
132
          {
 
133
                        rs1.beforeFirst();
 
134
                        nextde=true;
 
135
                                while (rs1.next() && nextde)
 
136
                                {         
 
137
                                        if (deint3[j]==(rs1.getString("dataelement")))
 
138
                                        {         
 
139
                                                inM[j]=rs1.getInt("value");
 
140
                                                nextde=false;
 
141
                                        }
 
142
                                        
 
143
                                }
 
144
                }
 
145
                  }        
 
146
        
 
147
                sql="select value,source from datavalue where source="+orgUnitId+" and period=" +periodId+" and dataelement in (1823,1824,1828)";
 
148
                rs1 = st1.executeQuery(sql);
 
149
        
 
150
                if (rs1.next())
 
151
                {
 
152
                for (j=0;j<i;j++)
 
153
          { 
 
154
                        rs1.beforeFirst();
 
155
                        nextde=true;
 
156
                                while (rs1.next() && nextde)
 
157
                                {        
 
158
                                        if (deint4[j]==(rs1.getString("dataelement")))
 
159
                                        {         
 
160
                                                inF[j]=rs1.getInt("value");
 
161
                                                nextde=false;
 
162
                                        }
 
163
                                        
 
164
                                }
 
165
                        }
 
166
          }        
 
167
        
 
168
                  
 
169
                  for (j=0;j<3;j++)
 
170
                  {
 
171
                        totalOutM+=outM[j];
 
172
                        totalOutF+=outF[j];  
 
173
                        totalInM+=inM[j];          
 
174
                        totalInF+=inF[j];          
 
175
                }          
 
176
                
 
177
                  
 
178
                 }//try
 
179
                 catch(Exception e)  { out.println("Loi cho ma gi day: "+e.getMessage());  }
 
180
                                
 
181
%>
 
182
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 
183
<html>
 
184
<head>
 
185
<title>X-Ray, Biopsy and Sonography Report for <%=orgUnitName%></title>
 
186
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
 
187
<link href="../../../../dhis-web-reports/src/main/webapp/dhis-web-reports/styles.css" rel="stylesheet" type="text/css">
 
188
<link href="styles.css" rel="stylesheet" type="text/css">
 
189
</head>
 
190
 
 
191
<body bgcolor="#99FFFF">
 
192
<table width="1000" border="0" cellpadding="0" cellspacing="0">
 
193
  <!--DWLayoutTable-->
 
194
  <tr> 
 
195
    <td colspan="2" rowspan="2" valign="top"><table width="100%" border="0" cellpadding="1" cellspacing="1">
 
196
        <!--DWLayoutTable-->
 
197
        <tr> 
 
198
          <td width="869" height="95" valign="top"><table width="100%" border="0" cellpadding="0" cellspacing="0">
 
199
            <!--DWLayoutTable-->
 
200
            <tr>
 
201
              <td width="869" height="93" valign="top" class="header">X-Ray, Biopsy and Sonography Report for <%=orgUnitName%></td>
 
202
            </tr>
 
203
          </table>          </td>
 
204
        </tr>
 
205
        <tr> 
 
206
          <td height="49" valign="top"><table width="100%" border="0" cellpadding="1" cellspacing="1" bordercolor="#000066" bgcolor="#008080" class="header1" >
 
207
              <!--DWLayoutTable-->
 
208
              <tr class="header1"> 
 
209
                <td width="139" height="45" valign="top" class="header1">Region</td>
 
210
                <td width="127"><%=parentName%></td>
 
211
                <td width="121" valign="top" class="header1" >Wereda</td>
 
212
                <td width="200"><%=orgUnitName%></td>
 
213
              </tr>
 
214
            </table></td>
 
215
        </tr>
 
216
        <tr> 
 
217
          <td height="59" valign="top"><table width="100%" border="0" cellpadding="1" cellspacing="1" bordercolor="#000066" bgcolor="#008080" class="header1">
 
218
              <!--DWLayoutTable-->
 
219
              <tr> 
 
220
                <td width="85" height="55" valign="top" class="header1">Period</td>
 
221
                <td width="91" valign="top" class="header1">From</td>
 
222
                <td width="151"><%=startDate%></td>
 
223
                <td width="78" valign="top" class="header1">To</td>
 
224
                <td width="179"><%=endDate%></td>
 
225
              </tr>
 
226
            </table></td>
 
227
        </tr>
 
228
        <tr> 
 
229
          <td height="84" valign="top"><table width="100%" border="0" cellpadding="1" cellspacing="1" bordercolor="#000066">
 
230
              <!--DWLayoutTable-->
 
231
              <tr> 
 
232
                <td width="114" rowspan="2" valign="top" class="tableheader">Services</td>
 
233
                <td colspan="3" valign="top" class="tableheader">Outpatient</td>
 
234
                <td height="41" colspan="3" valign="top" class="tableheader">Inpatient</td>
 
235
                <td height="41" colspan="3" valign="top" class="tableheader">Total</td>
 
236
              </tr>
 
237
              <tr> 
 
238
                <td width="62" valign="top" class="tableheader">Male</td>
 
239
                <td width="57" valign="top" class="tableheader">Female</td>
 
240
                <td width="59" valign="top" class="tableheader">Total</td>
 
241
                <td width="60" valign="top" class="tableheader">Male</td>
 
242
                <td width="56" valign="top" class="tableheader">Female</td>
 
243
                <td width="59" valign="top" class="tableheader">Total</td>
 
244
                <td width="55" valign="top" class="tableheader">Male</td>
 
245
                <td width="52" valign="top" class="tableheader">Female</td>
 
246
                <td width="64" valign="top" class="tableheader">Grand Total</td>
 
247
              </tr>
 
248
              <% for (int k=0;k<3;k++)  { %>
 
249
              <tr> 
 
250
                <td height="21" class="tableitem"><%=services[k][1]%></td>
 
251
                <td class="tableitem"><%=outM[k]%></td>
 
252
                <td class="tableitem"><%=outF[k]%></td>
 
253
                <td class="tableitem"><%=outM[k]+outF[k]%></td>
 
254
                <td class="tableitem"><%=inM[k]%></td>
 
255
                <td class="tableitem"><%=inF[k]%></td>
 
256
                <td class="tableitem"><%=inM[k]+inF[k]%></td>
 
257
                <td class="tableitem"><%=outM[k]+inM[k]%></td>
 
258
                <td class="tableitem"><%=outF[k]+inF[k]%></td>
 
259
                <td class="tableitem"><%=outM[k]+outF[k]+inM[k]+inF[k]%></td>
 
260
              </tr>
 
261
              <% } %>
 
262
              <tr> 
 
263
                <td height="23" valign="top" class="tableheader">Total</td>
 
264
                <td height="23" valign="top" class="tableheader"><%=totalOutM%></td>
 
265
                <td height="23" valign="top" class="tableheader"><%=totalOutF%></td>
 
266
                <td class="tableheader"><%=totalOutM+totalOutF%></td>
 
267
                <td class="tableheader"><%=totalInM%></td>
 
268
                <td class="tableheader"><%=totalInF%></td>
 
269
                <td class="tableheader"><%=totalInM+totalInF%></td>
 
270
                <td class="tableheader"><%=totalOutM+totalInM%></td>
 
271
                <td class="tableheader"><%=totalOutF+totalInF%></td>
 
272
                <td class="tableheader"><%=totalOutM+totalInM+totalOutF+totalInF%></td>
 
273
              </tr>
 
274
            </table>
 
275
          </td>
 
276
        </tr>
 
277
      </table>
 
278
      <span class="tableitemnumber"></span></td>
 
279
    <td width="127" height="275"></td>
 
280
  </tr>
 
281
  <tr> 
 
282
    <td height="2"></td>
 
283
  </tr>
 
284
  <tr> 
 
285
    <td width="503" height="2"></td>
 
286
    <td width="370"></td>
 
287
    <td></td>
 
288
  </tr>
 
289
</table>
 
290
</body>
 
291
</html>
 
 
b'\\ No newline at end of file'