add loadUserInfo method;

set automatically call loadUserInfo after login
This commit is contained in:
高子兴 2024-07-14 13:34:40 +08:00
parent 98f49e07ce
commit 475a6f77cf

View File

@ -20,6 +20,7 @@ public class ProjectBean implements Serializable {
private final DatabaseService databaseService = new DatabaseService(); private final DatabaseService databaseService = new DatabaseService();
private List<Project> projects; // List to store all projects private List<Project> projects; // List to store all projects
private Project project; // Current project being worked on private Project project; // Current project being worked on
private UserInfo userInfo; // User info for the current user
private String username; private String username;
private String password; private String password;
public String projectKeywords = ""; // String to hold project keywords public String projectKeywords = ""; // String to hold project keywords
@ -57,6 +58,17 @@ public class ProjectBean implements Serializable {
databaseService.close(); databaseService.close();
} }
public void loadUserInfo() {
try {
UserInfo info = databaseService.getUserInfo(username);
if (userInfo != null) {
userInfo = info;
}
} catch (SQLException e) {
e.printStackTrace();
}
}
public void loadProjects() { public void loadProjects() {
projects = databaseService.getProjectsByUser(Objects.requireNonNullElse(username, "admin")); projects = databaseService.getProjectsByUser(Objects.requireNonNullElse(username, "admin"));
} }
@ -131,6 +143,7 @@ public class ProjectBean implements Serializable {
try { try {
if (databaseService.validateUser(username, password)) { if (databaseService.validateUser(username, password)) {
FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put("username", username); FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put("username", username);
loadUserInfo();
loadProjects(); loadProjects();
return "project"; return "project";
} else { } else {