only-last-30-days-notifications #332
@ -58,7 +58,16 @@ impl Notification {
|
|||||||
pub async fn for_user(db: &SqlitePool, user: &User) -> Vec<Self> {
|
pub async fn for_user(db: &SqlitePool, user: &User) -> Vec<Self> {
|
||||||
sqlx::query_as!(
|
sqlx::query_as!(
|
||||||
Self,
|
Self,
|
||||||
"SELECT * FROM notification WHERE user_id = ? ORDER BY created_at DESC",
|
"
|
||||||
|
SELECT * FROM notification
|
||||||
|
WHERE
|
||||||
|
user_id = ?
|
||||||
|
AND (
|
||||||
|
read_at IS NULL
|
||||||
|
OR read_at >= datetime('now', '-30 days')
|
||||||
|
)
|
||||||
|
ORDER BY read_at DESC, created_at DESC;
|
||||||
|
",
|
||||||
user.id
|
user.id
|
||||||
)
|
)
|
||||||
.fetch_all(db)
|
.fetch_all(db)
|
||||||
|
Loading…
Reference in New Issue
Block a user