Skip to content

Commit

Permalink
Feat: Users get inbox
Browse files Browse the repository at this point in the history
  • Loading branch information
AdrianBalunan committed Apr 7, 2026
1 parent e17ae39 commit a9aad5b
Showing 1 changed file with 39 additions and 5 deletions.
Original file line number Diff line number Diff line change
@@ -1,14 +1,13 @@
package ntnu.systemutvikling.team6.database;

import java.sql.*;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;

import ntnu.systemutvikling.team6.models.*;
import ntnu.systemutvikling.team6.models.user.Language;
import ntnu.systemutvikling.team6.models.user.Settings;
import ntnu.systemutvikling.team6.models.user.User;
import ntnu.systemutvikling.team6.models.user.*;
import ntnu.systemutvikling.team6.scraper.APICharityData;

/**
Expand Down Expand Up @@ -480,7 +479,10 @@ public User getUserFromDBUuid(UUID uuid){
rs.getString("user_password"),
rs.getString("role")
);
Settings settings = getAndSetSettingsForUserObject(user.getId().toString());
Settings settings = getSettingsForUser(user.getId().toString());
user.setSettings(settings);

Inbox inbox = getInboxForUser(user.getId().toString());
user.setSettings(settings);
}
} catch (SQLException e) {
Expand All @@ -490,7 +492,7 @@ public User getUserFromDBUuid(UUID uuid){
return user;
}

public Settings getAndSetSettingsForUserObject(String user_id){
public Settings getSettingsForUser(String user_id){
Settings settings = null;
Connection conn = null;
try {
Expand Down Expand Up @@ -520,6 +522,38 @@ public Settings getAndSetSettingsForUserObject(String user_id){
return settings;
}

public Inbox getInboxForUser(String user_id){
Inbox inbox = null;
Connection conn = null;
try {
conn = connection.getMySqlConnection();
String sql_query =
"""
SELECT UUID_message, message_title, message_content, message_date, sender_user_id, sender_charity_id, user_id FROM Settings
WHERE User_UUID_User = ?;
""";
PreparedStatement stmt = conn.prepareStatement(sql_query);
stmt.setString(1, user_id);
stmt.setMaxRows(1);
ResultSet rs = stmt.executeQuery();

while (rs.next()) {
Message message = new Message(
rs.getString("message_title"),
UUID.fromString(rs.getString("sender_charity_id")),
rs.getString("message_date"),
LocalDate.parse(rs.getString("message_date"))
);
inbox.addMessage(message);
}
} catch (SQLException e) {
e.printStackTrace();
throw new RuntimeException("ERROR: Something went wrong during updating charities table.");
}

return inbox;
}


public DonationRegistry getDonationFromDB() {
DonationRegistry registry = null;
Expand Down

0 comments on commit a9aad5b

Please sign in to comment.