-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathEmployeeModel.java
More file actions
77 lines (67 loc) · 2.31 KB
/
Copy pathEmployeeModel.java
File metadata and controls
77 lines (67 loc) · 2.31 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
package model;
import java.io.*;
import java.util.*;
public class EmployeeModel {
private String filename;
private Map<String, String> employees = new HashMap<>();
// Constructor
public EmployeeModel(String filename) {
this.filename = filename;
}
// Getter for filename
public String getFilename() {
return filename;
}
// Setter for filename
public void setFilename(String filename) {
this.filename = filename;
}
// Getter for employees
public Map<String, String> getEmployees() {
return employees;
}
// Load employee data from file
public void loadEmployeeData() {
try {
BufferedReader reader = new BufferedReader(new FileReader(filename));
String line;
while ((line = reader.readLine()) != null) {
String[] parts = line.split(",");
if (parts.length == 2) {
String username = parts[0].trim(); // remove extra spaces
String pass = parts[1].trim(); // remove extra spaces
employees.put(username, pass);
}
}
reader.close();
} catch (IOException e) {
System.out.println("Error: " + e.getMessage());
}
}
// Save employee data to file
public void saveEmployeeData() {
try {
BufferedWriter writer = new BufferedWriter(new FileWriter(filename));
for (Map.Entry<String, String> entry : employees.entrySet()) {
writer.write(entry.getKey() + "," + entry.getValue());
writer.newLine();
}
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
}
// Change employee password
public boolean changePassword(String username, String currentPassword, String newPassword) {
if (employees.containsKey(username) && employees.get(username).equals(currentPassword)) {
employees.put(username, newPassword);
saveEmployeeData();
return true;
}
return false;
}
// Validate employee login
public boolean validateEmployee(String username, String password) {
return employees.containsKey(username) && employees.get(username).equals(password);
}
}