diff --git a/src/main/java/org/to/telegramfinalproject/Database/MessageDatabase.java b/src/main/java/org/to/telegramfinalproject/Database/MessageDatabase.java index fcdaf7c..370c022 100644 --- a/src/main/java/org/to/telegramfinalproject/Database/MessageDatabase.java +++ b/src/main/java/org/to/telegramfinalproject/Database/MessageDatabase.java @@ -480,5 +480,37 @@ public class MessageDatabase { return messages; } + public static List getMessages(UUID chatId, UUID userId) { + String sql = """ + SELECT * FROM messages + WHERE receiver_id = ? + AND is_deleted_globally = false + AND message_id NOT IN ( + SELECT message_id FROM deleted_messages + WHERE user_id = ? + ) + ORDER BY send_at + """; + + List messages = new ArrayList<>(); + try (Connection conn = ConnectionDb.connect(); + PreparedStatement ps = conn.prepareStatement(sql)) { + + ps.setObject(1, chatId); + ps.setObject(2, userId); + + ResultSet rs = ps.executeQuery(); + while (rs.next()) { + Message m = extractMessage(rs); + messages.add(m); + } + } catch (SQLException e) { + e.printStackTrace(); + } + + return messages; + } + + }