-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathEmployeeController.java
More file actions
105 lines (90 loc) · 2.93 KB
/
EmployeeController.java
File metadata and controls
105 lines (90 loc) · 2.93 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
package com.lftechnology.controller;
import java.sql.ResultSet;
import com.lftechnology.entities.Role;
import com.lftechnology.service.EmployeeService;
import com.lftechnology.service.ServiceFactory;
import com.lftechnology.entities.Employee;
/**
* Controller to managed the employee
* @author achyut
*
*/
public class EmployeeController {
/**
* For First time setup on the superadmin
* @author achyut
* @return void
*/
public void prepareInitialUser(){
EmployeeService ed = ServiceFactory.getEmployeeService();
if(!ed.isUsernameExists("superadmin")){
Employee e = new Employee();
e.setUsername("superadmin");
e.setPassword("superadmin");
e.setDepartment("FHF");
e.setAddress("Kalanki Syuchatar");
e.setFullName("Achyut Dahal");
e.setIsTerminated(false);
e.setRole(Role.ADMIN);
ed.addEmployee(e);
}
}
/**
* Add an employee object to database
* @param employee
* @return int
*/
public int addEmployee(Employee employee) {
int employeeAdded = 0;
EmployeeService ed = ServiceFactory.getEmployeeService();
employeeAdded = ed.addEmployee(employee);
return employeeAdded;
}
/**
* Terminate an employee
* @param employee
* @return int
*/
public int terminateEmployee(Employee employee) {
int employeeTerminated = 0;
EmployeeService emplSerObj = ServiceFactory.getEmployeeService();
employeeTerminated = emplSerObj.terminateEmployee(employee);
return employeeTerminated;
}
/**
* Delete an employee from the system
* @param em
* @return int
*/
public int deleteEmployee(Employee employee) {
int employeeDeleted = 0;
EmployeeService emplSerObj = ServiceFactory.getEmployeeService();
employeeDeleted = emplSerObj.deleteEmployee(employee);
return employeeDeleted;
}
/**
* View an employee in the system
* @param employee
* @return ResultSet
*/
public ResultSet viewEmployee(Employee employee) {
ResultSet rs = null;
EmployeeService emplSerObj = ServiceFactory.getEmployeeService();
rs = emplSerObj.searchEmployee(employee);
return rs;
}
/**
* Update the profile of an employee
* @param employee
* @return Employee
*/
public Employee editEmployeeDetails(Employee employee) {
EmployeeService emplServiceObj = ServiceFactory.getEmployeeService();
String userNameFormat = "[a-zA-z][a-zA-z0-9._@]+";
if (employee.getUsername().length() != 0 && !(employee.getUsername().matches(userNameFormat))) {
System.out.println("\n\t\tUsername Cannot contain extra characters\n");
return employee;
}
return emplServiceObj.editEmployeeDetails(employee);
}
}