diff --git a/WebContent/EmployeeDetails/employeeprint.jsp b/WebContent/EmployeeDetails/employeeprint.jsp
new file mode 100644
index 0000000..d91f351
--- /dev/null
+++ b/WebContent/EmployeeDetails/employeeprint.jsp
@@ -0,0 +1,131 @@
+<%@page import="com.rcss.util.CommonConstants"%>
+<%@page import="com.rcss.model.EmployeeDetails"%>
+<%@page import="com.rcss.service.EmployeeDetailsServiceImpl"%>
+<%@page import="com.rcss.service.IEmployeeDetailsService"%>
+<%@page import="java.util.ArrayList"%>
+<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
+ pageEncoding="ISO-8859-1"%>
+
+
+
+
+Employee Report
+
+
+
+
+
+ <%
+
+ IEmployeeDetailsService employeeService = new EmployeeDetailsServiceImpl();
+ ArrayList employeeList = employeeService.getEmployeeDetails();
+ %>
+
+
+
+
+
<%= CommonConstants.COMPANY_NAME.toString() %>
+ <%= CommonConstants.COMPANY_ADDRESS.toString() %>
+ <%= CommonConstants.CONTACT_NO.toString() %>
+
+
+
+
+
Total amount of vaccines issued by Red Cross
+
+
+
+
+
+
+
+
+ <%
+ for(EmployeeDetails emp : employeeList){
+ %>
+
+ Employee Code |
+ <%= emp.getEmpId() %> |
+
+
+ Employee Name |
+ <%= emp.getEmpFullName().toUpperCase() %> |
+
+
+ Employee NIC |
+ <%= emp.getEmpNIC().toUpperCase() %> |
+
+
+ Employee Gender |
+ <%= emp.getEmpGender().equalsIgnoreCase("M") ? "Male" : "Female" %> |
+
+
+ Employee Email |
+ <%= emp.getEmpEmail().toUpperCase() %> |
+
+
+ Employee Contact No |
+ <%= emp.getEmpContactNo().toUpperCase() %> |
+
+
+ Employee Address |
+ <%= emp.getEmpAddress().toUpperCase() %> |
+
+
+ Employee Birthday |
+ <%= emp.getEmpBirth() %> |
+
+
+ Employee joining Date |
+ <%= emp.getEmpJoin() %> |
+
+
+ Employee password |
+ <%= emp.getPassword() %> |
+
+
+ Employee repassword |
+ <%= emp.getRepassword() %> |
+
+
+
+
+ <% } %>
+
+
+
+
+
+
+
+
+
Prepaired By: ................................................
+
Prepaired Date: ................................................
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/WebContent/EmployeeDetails/index.jsp b/WebContent/EmployeeDetails/index.jsp
new file mode 100644
index 0000000..8d617b7
--- /dev/null
+++ b/WebContent/EmployeeDetails/index.jsp
@@ -0,0 +1,409 @@
+<%@page import="com.rcss.model.EmployeeDetails"%>
+<%@page import="java.util.ArrayList"%>
+<%@page import="com.rcss.service.EmployeeDetailsServiceImpl"%>
+<%@page import="com.rcss.service.IEmployeeDetailsService"%>
+<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
+ pageEncoding="ISO-8859-1"%>
+
+
+
+
+Employee Details
+
+
+
+
+ <%
+ IEmployeeDetailsService employeeService = new EmployeeDetailsServiceImpl();
+ ArrayList employeeList = employeeService.getEmployeeDetails();
+ %>
+
+
+
+
+
+
+
+
+
+
+
+ Employee Id |
+ Employee Name |
+ NIC |
+ Gender |
+ Email |
+ Contact No |
+ Address |
+ Date of Birth |
+ Date of joining Employment |
+ Password |
+ Repassword |
+ |
+ |
+
+
+
+
+ Employee Id |
+ Employee Name |
+ NIC |
+ Gender |
+ Email |
+ Contact No |
+ Address |
+ Date of Birth |
+ Date of joining Employment |
+ Password |
+ Repassword |
+ |
+ |
+
+
+
+ <%
+ for(EmployeeDetails emp : employeeList){
+ %>
+
+ <%= emp.getEmpId() %> |
+ <%= emp.getEmpFullName() %> |
+ <%= emp.getEmpNIC() %> |
+ <%= emp.getEmpGender().equalsIgnoreCase("M") ? "Male" : "Female" %> |
+ <%= emp.getEmpEmail() %> |
+ <%= emp.getEmpContactNo() %> |
+ <%= emp.getEmpAddress() %> |
+ <%= emp.getEmpBirth() %> |
+ <%= emp.getEmpJoin() %> |
+ <%= emp.getPassword() %> |
+ <%= emp.getRepassword() %> |
+
+
+
+
+ |
+
+ <% } %>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/com/rcss/service/EmployeeDetailsServiceImpl.java b/src/com/rcss/service/EmployeeDetailsServiceImpl.java
new file mode 100644
index 0000000..73573b2
--- /dev/null
+++ b/src/com/rcss/service/EmployeeDetailsServiceImpl.java
@@ -0,0 +1,187 @@
+package com.rcss.service;
+
+import java.io.IOException;
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.sql.Statement;
+import java.util.ArrayList;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+
+import javax.xml.parsers.ParserConfigurationException;
+
+import org.xml.sax.SAXException;
+
+import com.rcss.model.EmployeeDetails;
+import com.rcss.util.CommonConstants;
+import com.rcss.util.DBConnectionUtil;
+import com.rcss.util.QueryUtil;
+
+public class EmployeeDetailsServiceImpl implements IEmployeeDetailsService{
+
+ public static final Logger log = Logger.getLogger(EmployeeDetailsServiceImpl.class.getName());
+
+ private static Connection connection;
+ private PreparedStatement preparedStatement;
+
+ @Override
+ public void addEmployeeDetail(EmployeeDetails employeeDetail) {
+ try {
+ connection = DBConnectionUtil.getDBConnection();
+ preparedStatement = connection.prepareStatement(QueryUtil.queryByID(CommonConstants.QUERY_ID_INSERT_EMPLOYEE));
+ connection.setAutoCommit(false);
+
+ preparedStatement.setString(CommonConstants.COLUMN_INDEX_ONE, employeeDetail.getEmpFullName());
+ preparedStatement.setString(CommonConstants.COLUMN_INDEX_TWO, employeeDetail.getEmpNIC());
+ preparedStatement.setString(CommonConstants.COLUMN_INDEX_THREE, employeeDetail.getEmpGender());
+ preparedStatement.setString(CommonConstants.COLUMN_INDEX_FOUR, employeeDetail.getEmpEmail());
+ preparedStatement.setString(CommonConstants.COLUMN_INDEX_FIVE, employeeDetail.getEmpContactNo());
+ preparedStatement.setString(CommonConstants.COLUMN_INDEX_SIX, employeeDetail.getEmpAddress());
+ preparedStatement.setString(CommonConstants.COLUMN_INDEX_SEVEN, employeeDetail.getEmpBirth());
+ preparedStatement.setString(CommonConstants.COLUMN_INDEX_EIGHT, employeeDetail.getEmpJoin());
+ preparedStatement.setString(CommonConstants.COLUMN_INDEX_NINE, employeeDetail.getPassword());
+ preparedStatement.setString(CommonConstants.COLUMN_INDEX_TEN, employeeDetail.getRepassword());
+
+ preparedStatement.execute();
+ connection.commit();
+
+ } catch (SQLException | SAXException | IOException | ParserConfigurationException | ClassNotFoundException ex) {
+ log.log(Level.SEVERE, ex.getMessage());
+ } finally {
+ try {
+ if (preparedStatement != null) {
+ preparedStatement.close();
+ }
+ if (connection != null) {
+ connection.close();
+ }
+ } catch (SQLException ex) {
+ log.log(Level.SEVERE, ex.getMessage());
+ }
+ }
+ }
+
+ @Override
+ public ArrayList getEmployeeDetails() {
+ return actionOnEmployeeDetails(0);
+ }
+
+ @Override
+ public EmployeeDetails getEmployeeDetail(int empId) {
+ return actionOnEmployeeDetails(empId).get(0);
+ }
+
+ private ArrayList actionOnEmployeeDetails(int empId) {
+ ArrayList empList = new ArrayList();
+
+ try {
+ connection = DBConnectionUtil.getDBConnection();
+
+ if (empId != 0) {
+ preparedStatement = connection.prepareStatement(QueryUtil.queryByID(CommonConstants.QUERY_ID_GET_EMPLOYEE));
+ preparedStatement.setInt(CommonConstants.COLUMN_INDEX_ONE, empId);
+ }
+ else {
+ preparedStatement = connection.prepareStatement(QueryUtil.queryByID(CommonConstants.QUERY_ID_ALL_EMPLOYEE));
+ }
+
+ ResultSet resultSet = preparedStatement.executeQuery();
+ while (resultSet.next()) {
+ EmployeeDetails emp = new EmployeeDetails();
+ emp.setEmpId(resultSet.getInt(CommonConstants.COLUMN_INDEX_ONE));
+ emp.setEmpFullName(resultSet.getString(CommonConstants.COLUMN_INDEX_TWO));
+ emp.setEmpNIC(resultSet.getString(CommonConstants.COLUMN_INDEX_THREE));
+ emp.setEmpGender(resultSet.getString(CommonConstants.COLUMN_INDEX_FOUR));
+ emp.setEmpEmail(resultSet.getString(CommonConstants.COLUMN_INDEX_FIVE));
+ emp.setEmpContactNo(resultSet.getString(CommonConstants.COLUMN_INDEX_SIX));
+ emp.setEmpAddress(resultSet.getString(CommonConstants.COLUMN_INDEX_SEVEN));
+ emp.setEmpBirth(resultSet.getString(CommonConstants.COLUMN_INDEX_EIGHT));
+ emp.setEmpJoin(resultSet.getString(CommonConstants.COLUMN_INDEX_NINE));
+ emp.setPassword(resultSet.getString(CommonConstants.COLUMN_INDEX_TEN));
+ emp.setRepassword(resultSet.getString(CommonConstants.COLUMN_INDEX_ELEVEN));
+ empList.add(emp);
+ }
+
+ } catch (SQLException | SAXException | IOException | ParserConfigurationException | ClassNotFoundException ex) {
+ log.log(Level.SEVERE, ex.getMessage());
+ } finally {
+ try {
+ if (preparedStatement != null) {
+ preparedStatement.close();
+ }
+ if (connection != null) {
+ connection.close();
+ }
+ } catch (SQLException ex) {
+ log.log(Level.SEVERE, ex.getMessage());
+ }
+ }
+
+ return empList;
+ }
+
+ @Override
+ public EmployeeDetails updateEmployee(int empId, EmployeeDetails employeeDetail) {
+ try {
+ connection = DBConnectionUtil.getDBConnection();
+ preparedStatement = connection.prepareStatement(QueryUtil.queryByID(CommonConstants.QUERY_ID_UPDATE_EMPLOYEE));
+
+ preparedStatement.setString(CommonConstants.COLUMN_INDEX_ONE, employeeDetail.getEmpFullName());
+ preparedStatement.setString(CommonConstants.COLUMN_INDEX_TWO, employeeDetail.getEmpNIC());
+ preparedStatement.setString(CommonConstants.COLUMN_INDEX_THREE, employeeDetail.getEmpGender());
+ preparedStatement.setString(CommonConstants.COLUMN_INDEX_FOUR, employeeDetail.getEmpEmail());
+ preparedStatement.setString(CommonConstants.COLUMN_INDEX_FIVE, employeeDetail.getEmpContactNo());
+ preparedStatement.setString(CommonConstants.COLUMN_INDEX_SIX, employeeDetail.getEmpAddress());
+ preparedStatement.setString(CommonConstants.COLUMN_INDEX_SEVEN, employeeDetail.getEmpBirth());
+ preparedStatement.setString(CommonConstants.COLUMN_INDEX_EIGHT, employeeDetail.getEmpJoin());
+ preparedStatement.setString(CommonConstants.COLUMN_INDEX_NINE, employeeDetail.getPassword());
+ preparedStatement.setString(CommonConstants.COLUMN_INDEX_TEN, employeeDetail.getRepassword());
+ preparedStatement.setInt(CommonConstants.COLUMN_INDEX_ELEVEN, empId);
+
+ preparedStatement.executeUpdate();
+
+ } catch (SQLException | SAXException | IOException | ParserConfigurationException | ClassNotFoundException ex) {
+ log.log(Level.SEVERE, ex.getMessage());
+ } finally {
+ try {
+ if (preparedStatement != null) {
+ preparedStatement.close();
+ }
+ if (connection != null) {
+ connection.close();
+ }
+ } catch (SQLException ex) {
+ log.log(Level.SEVERE, ex.getMessage());
+ }
+ }
+
+ return getEmployeeDetail(empId);
+ }
+
+ @Override
+ public void removeEmployeeDetail(int empId) {
+ try {
+ connection = DBConnectionUtil.getDBConnection();
+ preparedStatement = connection.prepareStatement(QueryUtil.queryByID(CommonConstants.QUERY_ID_DELETE_EMPLOYEE));
+ preparedStatement.setInt(CommonConstants.COLUMN_INDEX_ONE, empId);
+ preparedStatement.executeUpdate();
+
+ } catch (SQLException | SAXException | IOException | ParserConfigurationException | ClassNotFoundException ex) {
+ log.log(Level.SEVERE, ex.getMessage());
+ } finally {
+ try {
+ if (preparedStatement != null) {
+ preparedStatement.close();
+ }
+ if (connection != null) {
+ connection.close();
+ }
+ } catch (SQLException ex) {
+ log.log(Level.SEVERE, ex.getMessage());
+ }
+ }
+ }
+
+}
diff --git a/src/com/rcss/service/IEmployeeDetailsService.java b/src/com/rcss/service/IEmployeeDetailsService.java
new file mode 100644
index 0000000..14a5c85
--- /dev/null
+++ b/src/com/rcss/service/IEmployeeDetailsService.java
@@ -0,0 +1,18 @@
+package com.rcss.service;
+
+import java.util.ArrayList;
+import java.util.logging.Logger;
+
+import com.rcss.model.EmployeeDetails;
+
+public interface IEmployeeDetailsService {
+
+ public static final Logger log = Logger.getLogger(IEmployeeDetailsService.class.getName());
+
+ public void addEmployeeDetail(EmployeeDetails employeeDetail);
+ public ArrayList getEmployeeDetails();
+ public EmployeeDetails getEmployeeDetail(int empId);
+ public EmployeeDetails updateEmployee(int empId, EmployeeDetails employeeDetail);
+ public void removeEmployeeDetail(int empId);
+
+}
diff --git a/src/com/rcss/servlet/EmployeeDetailsServlet.java b/src/com/rcss/servlet/EmployeeDetailsServlet.java
new file mode 100644
index 0000000..2ed8ded
--- /dev/null
+++ b/src/com/rcss/servlet/EmployeeDetailsServlet.java
@@ -0,0 +1,80 @@
+package com.rcss.servlet;
+
+import java.io.IOException;
+
+import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpSession;
+import javax.xml.ws.WebEndpoint;
+
+import com.rcss.model.EmployeeDetails;
+import com.rcss.service.IEmployeeDetailsService;
+import com.rcss.service.EmployeeDetailsServiceImpl;
+
+@WebServlet("/EmployeeDetails")
+public class EmployeeDetailsServlet extends HttpServlet {
+ private static final long serialVersionUID = 1L;
+
+ public EmployeeDetailsServlet() {
+ super();
+ }
+
+ @WebEndpoint
+ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+ response.sendRedirect("/RedCrossSupportService/EmployeeDetails/index.jsp");
+ }
+
+ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+ String action = request.getParameter("action");
+
+ if(action.equalsIgnoreCase("NE")) {
+ IEmployeeDetailsService employeeService = new EmployeeDetailsServiceImpl();
+ employeeService.addEmployeeDetail(new EmployeeDetails(
+ 0,
+ request.getParameter("empFullName"),
+ request.getParameter("empNIC"),
+ request.getParameter("empGender"),
+ request.getParameter("empEmail"),
+ request.getParameter("empContactNo"),
+ request.getParameter("empAddress"),
+ request.getParameter("empBirth"),
+ request.getParameter("empJoin"),
+ request.getParameter("password"),
+ request.getParameter("repassword")));
+
+ response.sendRedirect("/RedCrossSupportService/EmployeeDetails/index.jsp");
+ }
+ else if(action.equalsIgnoreCase("UP")) {
+ IEmployeeDetailsService employeeService = new EmployeeDetailsServiceImpl();
+ employeeService.updateEmployee(Integer.parseInt(request.getParameter("empId")), new EmployeeDetails(
+ Integer.parseInt(request.getParameter("empId")),
+ request.getParameter("empFullName"),
+ request.getParameter("empNIC"),
+ request.getParameter("empGender"),
+ request.getParameter("empEmail"),
+ request.getParameter("empContactNo"),
+ request.getParameter("empAddress"),
+ request.getParameter("empBirth"),
+ request.getParameter("empJoin"),
+ request.getParameter("password"),
+ request.getParameter("repassword")));
+
+ response.sendRedirect("/RedCrossSupportService/EmployeeDetails/index.jsp");
+ }
+ else if(action.equalsIgnoreCase("DL")) {
+ IEmployeeDetailsService employeeService = new EmployeeDetailsServiceImpl();
+ employeeService.removeEmployeeDetail(Integer.parseInt(request.getParameter("empId")));
+
+ response.sendRedirect("/RedCrossSupportService/EmployeeDetails/index.jsp");
+ }
+ else if(action.equalsIgnoreCase("PR")) {
+ HttpSession httpSession = request.getSession();
+ httpSession.setAttribute("EmpId", request.getParameter("empid_print"));
+ response.sendRedirect("/RedCrossSupportService/EmployeeDetails/employeeprint.jsp");
+ }
+ }
+
+}