Skip to content

Commit

Permalink
Feat: Added new table for favourites + new method to get favourites
Browse files Browse the repository at this point in the history
  • Loading branch information
AdrianBalunan committed Apr 16, 2026
1 parent 83f5135 commit 54303fc
Show file tree
Hide file tree
Showing 2 changed files with 46 additions and 0 deletions.
Binary file modified docs/SqlDatabase/ER-DiagramFile.mwb
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
import java.time.LocalDate;
import java.util.UUID;
import ntnu.systemutvikling.team6.database.DatabaseConnection;
import ntnu.systemutvikling.team6.models.Charity;
import ntnu.systemutvikling.team6.models.registry.CharityRegistry;
import ntnu.systemutvikling.team6.models.registry.UserRegistry;
import ntnu.systemutvikling.team6.models.user.*;
import ntnu.systemutvikling.team6.security.PasswordHasher;
Expand Down Expand Up @@ -387,4 +389,48 @@ public Inbox getInboxForUser(String user_id) {
}
return inbox;
}

public CharityRegistry getFavouritesForUser(String user_id) {
CharityRegistry charityRegistry = null;
Connection conn = null;
try {
conn = connection.getMySqlConnection();
String sql_query =
"""
SELECT
uf.Favourite_Charity,
c.UUID_charities, c.org_number, c.pre_approved, c.status,
cv.charity_name, cv.charity_link, cv.description, cv.logoURL, cv.key_values, cv.logoBLOB,
FROM User_has_favourites uf
INNER JOIN Charities c ON uf.Favourite_Charity = c.UUID_charities
INNER JOIN CharityVanity cv ON uf.Favourite_Charity = cv.UUID_charity
WHERE Favourer = ?;
""";
PreparedStatement stmt = conn.prepareStatement(sql_query);
stmt.setString(1, user_id);
ResultSet rs = stmt.executeQuery();

while (rs.next()) {
Charity charity =
new Charity(
rs.getString("UUID_charities"),
rs.getString("org_number"),
rs.getString("charity_name"),
rs.getString("charity_link"),
rs.getString("status"),
rs.getBoolean("pre_approved"),
rs.getString("description"),
rs.getString("logoURL"),
rs.getString("key_values"),
rs.getBytes("logoBLOB"));
charityRegistry.addCharity(charity);
}
} catch (SQLException e) {
e.printStackTrace();
throw new RuntimeException("ERROR: Something went wrong during updating charities table.");
} finally {
conn = null;
}
return charityRegistry;
}
}

0 comments on commit 54303fc

Please sign in to comment.