remove notificatoin about canceled trip if cancelation has been canceled #521

Merged
philipp merged 1 commits from remove-notification into main 2024-05-21 22:18:13 +02:00
3 changed files with 22 additions and 0 deletions

View File

@ -154,4 +154,14 @@ ORDER BY read_at DESC, created_at DESC;
}
}
}
pub(crate) async fn delete_by_action(db: &sqlx::Pool<Sqlite>, action: &str) {
sqlx::query!(
"DELETE FROM notification WHERE action_after_reading=? and read_at = null",
action
)
.execute(db)
.await
.unwrap();
}
}

View File

@ -232,6 +232,12 @@ WHERE day=?
.await;
}
}
} else {
Notification::delete_by_action(
db,
&format!("remove_user_trip_with_trip_details_id:{}", trip_details_id),
)
.await;
}
let trip_details = TripDetails::find_by_id(db, trip_details_id).await.unwrap();

View File

@ -77,6 +77,12 @@ WHERE day = ? AND planned_starting_time = ?
return;
}
if self.max_people == 0 {
// Cox cancelled event, thus it's probably bad weather. Don't bother with sending
// notifications
return;
}
if Trip::find_by_trip_details(db, self.id).await.is_none() {
// This trip_details belongs to a planned_event, no need to do anything
return;