# HR Application for AnyCo Corporation

HR Application for the company AnyCo Corporation is designed to show the various scenarios of using an HR application.
HR Application is an web application that provides access to information of all employees in AnyCo Corporation. HRStaff and HRAdmin are the two users of this application with different roles and privileges.
HRAdmin is an admin user who has all kinds of access i.e., read, write, and delete access to records of employees.
Some of the functionalities accessible to HRAdmin are:

- List All Employees : This functionality is primarily used to retrieve all employees information. Employee information such as Employee_id, First_Name, Last_Name, Email, Phone_Number, Job_Id and Salary are displayed.
- Search By Employee Id : Employee records can be searched using the primary key of employee Id.
- Update Employee Record : This functionality is used by HRAdmin to update the employee records. HRAdmin can search based on the name of the employee and the results will get displayed on the screen. Later, HRAdmin can choose an employee record to either UPDATE or DELETE. UPDATE functionality offers to update any fields such as First_name, last_name, Email, Phone_number, Job_ID, and salary of an Employee record. DELETE will delete the entire employee record from the database.
- Increment Salary :This functionality is designed to showcase the usage of "Java in the database". HRAdmin will input the percentage for the salary hike. The Salary Hike algorithm calculates the budget for the salary hike based on the input percentage. This salary hike budget is later used to provide a salary increase to employees based on the salary tier that they belong. Please refer to the Java 2 Day Developer's Guide for detailed explanation of the salary hike algorithm.
- About : This page provides an overview of the HR Application and explains the functionalities that it offers.

HRStaff is a staff user who has only read only access. HRStaff can only view the employee records and he can search the records based on the employee Id. However, HRStaff does not have any update or delete access and hence, any update/delete functionalities are hidden to this user.
Some of the functionalities accessible to HRStaff are:

- List All Employees : This functionality is primarily used to retrieve all employees information. Employee information such as Employee_id, First_Name, Last_Name, Email, Phone_Number, and Job_Id are displayed.
- Search By Employee Id : Employee records can be searched using the primary key of employee Id.
- About : This page provides an overview of the HR Application and explains the functionalities that it offers.