diff --git a/helpmehelpapplication/src/main/java/ntnu/systemutvikling/team6/database/DatabaseManager.java b/helpmehelpapplication/src/main/java/ntnu/systemutvikling/team6/database/DatabaseManager.java index 3af2fd7..b158b39 100644 --- a/helpmehelpapplication/src/main/java/ntnu/systemutvikling/team6/database/DatabaseManager.java +++ b/helpmehelpapplication/src/main/java/ntnu/systemutvikling/team6/database/DatabaseManager.java @@ -114,6 +114,7 @@ FOREIGN KEY (`user_id`) -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `apbaluna`.`User` ( `UUID_User` CHAR(36) NOT NULL, + `user_displayname` VARCHAR(255) NOT NULL, `user_name` VARCHAR(255) NOT NULL, `user_email` VARCHAR(255) NOT NULL, `user_password` VARCHAR(255) NOT NULL, @@ -419,6 +420,9 @@ public CharityRegistry getCharitiesFromDB() { rs.getString("charity_name"), rs.getBoolean("pre_approved"), rs.getString("status")); + ArrayList feedbacks = getFeedbackforChairtyUUID(charity.getUUID().toString()); + charity.setFeedbacks(feedbacks); + registry.addCharity(charity); } } catch (SQLException e) { @@ -460,7 +464,7 @@ public UserRegistry getUsersFromDB(){ return registry; } - public User getUserFromDBUuid(UUID uuid){ + public User getUserFromDBUuid(String user_id){ User user = null; Connection conn = null; try { @@ -471,7 +475,7 @@ public User getUserFromDBUuid(UUID uuid){ WHERE UUID_User = ?; """; PreparedStatement stmt = conn.prepareStatement(sql_query); - stmt.setString(1, uuid.toString()); + stmt.setString(1, user_id); stmt.setMaxRows(1); ResultSet rs = stmt.executeQuery(); @@ -608,8 +612,8 @@ public DonationRegistry getDonationFromDB() { } return registry; } - public ArrayList setFeedbackforChairty(Charity charity){ - /* + + public ArrayList getFeedbackforChairtyUUID(String charity_uuid) { ArrayList Feedbacks = new ArrayList<>(); Connection conn = null; try { @@ -617,18 +621,21 @@ public ArrayList setFeedbackforChairty(Charity charity){ String sql_query = """ SELECT - * - FROM Feedback f + UUID_feedback, feedback_comment, feedback_date, isAnonymous, charity_id, user_id + FROM Feedback WHERE f.charity_id = ?; """; PreparedStatement stmt = conn.prepareStatement(sql_query); - stmt.setString(1, charity.getUUID().toString()); + stmt.setString(1, charity_uuid); ResultSet rs = stmt.executeQuery(sql_query); - while (rs.next()){ + while (rs. next()){ Feedback feedback = new Feedback( - - ) + rs.getString("UUID_feedback"), + getUserFromDBUuid(rs.getString("user_id")), + rs.getString("feedback_comment"), + LocalDate.parse(rs.getString("feedback_date")) + ); } } catch (Exception e) { e.printStackTrace(); @@ -636,8 +643,6 @@ public ArrayList setFeedbackforChairty(Charity charity){ } finally { conn = null; } - - */ - return null; - } -} + return Feedbacks; + } +} \ No newline at end of file diff --git a/helpmehelpapplication/src/main/java/ntnu/systemutvikling/team6/models/Feedback.java b/helpmehelpapplication/src/main/java/ntnu/systemutvikling/team6/models/Feedback.java index 2f167c8..6d071cf 100644 --- a/helpmehelpapplication/src/main/java/ntnu/systemutvikling/team6/models/Feedback.java +++ b/helpmehelpapplication/src/main/java/ntnu/systemutvikling/team6/models/Feedback.java @@ -23,7 +23,7 @@ public class Feedback { private boolean isAnonymous; /** - * Constructor for creating a new feedback. + * Constructor for creating a new feedback now. * * @param user The user who gives the feedback. * @param comment The content of the feedback. @@ -33,19 +33,19 @@ public Feedback(User user, String comment) { this.user = user; this.comment = comment; this.date = LocalDate.now(); - this.isAnonymous = user.getSettings().isAnonymous(); } /** - * Constructor for creating a new feedback, based on getting the data from DATABASE. + * Constructor for creating a new feedback, based on making a feedback previously made. * * @param user The user who gives the feedback. * @param comment The content of the feedback. - */ - public Feedback(User user_id, String feedback_comment, LocalDate feedback_date) { + * @param feedback_date The content of the feedback. - this.feedbackId = UUID.randomUUID(); + */ + public Feedback(String feedback_id, User user, String feedback_comment, LocalDate feedback_date) { + this.feedbackId = UUID.fromString(feedback_id); this.user = user; this.comment = comment; this.date = feedback_date;