payRollHub.jsp
<%--Called from payRollEntry. Creates a table for the employees chosen in payRollEntry through which payroll data can be added --%>
untitled - document
<%@ page import= "javax.swing.*" %> <%@ page import= "java.sql.*" %> <%@ page import= "java.util.*" %> <%@ page import= "com.EmployeeObject4"%> <%@ page import= "com.*"%> <%@ page import= "java.io.*"%>
Enter the employees payroll details
<% String[] tick = request.getParameterValues("tick"); String periodFor = request.getParameter("periodFor"); if (tick.length == 0) { %>
<% } ArrayList blist = new ArrayList(); double currentperiod = (double)Double.parseDouble(periodFor); //CompanyName taken from the session object cast to a String and placed //in a String. String companyName = (String)session.getAttribute("company"); int u =0; //Loop as many times as there are NIC values in the tick array. while(u < tick.length) { Statement statement; ResultSet resultSet; //Select statement sent retrieve all data on the employees required for the payroll process. String query = "Select Perseweekly.periodNum, perse3.FirstName, perse3.Surname, perseweekly.NIC, perse3.WageHour, Perse3.MonthWeek, Perse3.WageHoursOver1, Perse3.PAYEcode, Perseweekly.paySoFar, Perseweekly.TaxSoFar, Perseweekly.Column8, perse3.NICtable, perse3.AccountNumber, perse3.SortCode, perse3.WMbasis, Perse3.WageHoursOver2, Perse3.WageHoursOver3, Perse3.WMbasis FROM perse3 INNER JOIN perseweekly ON perse3.NIC like perseweekly.NIC WHERE perse3.employed = 1 AND perse3.NIC like '"+tick[u]+"' AND perse3.CompanyName like '"+(String)session.getAttribute("company")+"' ORDER BY perseweekly.periodNum DESC"; Connection connection = ConnectionPool2.getConnection(); statement = connection.createStatement(); resultSet = statement.executeQuery( query ); System.out.println(resultSet); EmployeeObject4 employee; resultSet.next(); //New EmployeeObject instantiated. employee = new EmployeeObject4(); //Data from the the result set is placed in the employeeObject employee.setLastPeriod(resultSet.getInt(1)); employee.setFirstName(resultSet.getString(2)); employee.setSurname(resultSet.getString(3)); employee.setNIC(resultSet.getString(4)); employee.setWageHour(resultSet.getDouble(5)); employee.setMonthWeek(resultSet.getString(6)); employee.setWageHourOver(resultSet.getDouble(7)); employee.setPAYEcode(resultSet.getString(8)); employee.setLastPayToDate(resultSet.getDouble(9)); employee.setLastTaxToDate(resultSet.getDouble(10)); employee.setColumn8(resultSet.getDouble(11)); employee.setNICtable(resultSet.getString(12)); employee.setAccountNumber(resultSet.getString(13)); employee.setSortCode(resultSet.getString(14)); employee.setWageHourOver2(resultSet.getDouble(16)); employee.setWageHourOver3(resultSet.getDouble(17)); employee.setCumulative(resultSet.getBoolean(18)); employee.setCurrentPeriod(currentperiod); System.out.println("PayRollHub -"+employee.getNIC()); //The period entered for which the payroll is to be carried out is converted to //a double and placed in the EmployeeObject instance. String peri = request.getParameter("periodFor"); double per = Double.parseDouble(peri); employee.setCurrentPeriod(per); statement.close(); //The EmployeeObject instance is added to the ArrayList instance. blist.add(employee); u++; } //EmployeeObject declaration EmployeeObject4 employee2; //Below a table and form are created into which the hours worked or amount of pay //can be entered. %> <%--The table header is created--%>
First Name
NIC number
Enter Wage
as
Lump Sum
Bonus
Hours worked
Overtime1
Hours
Overtime1
Overtime2
Hours
Overtime2
Overtime3
Hours
Overtime3
SSP
SMP
Pay
Alterations
<% //Loop through all the employeeObjects held in the ArrayList. for(int g = 0; g < blist.size();g++) { employee2 = (com.EmployeeObject4)blist.get(g); %> <%--Lays a row in the table through which payroll information on individual employees is entered --%>
<%=employee2.getFirstName()%>
<%= employee2.getNIC()%>
<% } //The ArrayList is set as an attribute in the session object. session.setAttribute("hubArrayList", blist); %>