more self-explanatory roles + formatted_names for roles
Some checks failed
CI/CD Pipeline / deploy-staging (push) Has been cancelled
CI/CD Pipeline / test (push) Has been cancelled
CI/CD Pipeline / deploy-main (push) Has been cancelled

This commit is contained in:
2025-04-30 15:55:19 +02:00
parent b2e07653e6
commit 68cf563964
5 changed files with 56 additions and 15 deletions

View File

@ -7,6 +7,9 @@ use sqlx::{FromRow, Sqlite, SqlitePool, Transaction};
pub struct Role {
pub(crate) id: i64,
pub(crate) name: String,
pub(crate) formatted_name: Option<String>,
pub(crate) desc: Option<String>,
pub(crate) hide_in_lists: bool,
pub(crate) cluster: Option<String>,
}
@ -18,17 +21,20 @@ impl Display for Role {
impl Role {
pub async fn all(db: &SqlitePool) -> Vec<Role> {
sqlx::query_as!(Role, "SELECT id, name, cluster FROM role")
.fetch_all(db)
.await
.unwrap()
sqlx::query_as!(
Role,
"SELECT id, name, formatted_name, desc, hide_in_lists, cluster FROM role"
)
.fetch_all(db)
.await
.unwrap()
}
pub async fn find_by_id(db: &SqlitePool, name: i32) -> Option<Self> {
sqlx::query_as!(
Self,
"
SELECT id, name, cluster
SELECT id, name, formatted_name, desc, hide_in_lists, cluster
FROM role
WHERE id like ?
",
@ -42,7 +48,7 @@ WHERE id like ?
sqlx::query_as!(
Self,
"
SELECT id, name, cluster
SELECT id, name, formatted_name, desc, hide_in_lists, cluster
FROM role
WHERE id like ?
",
@ -57,7 +63,7 @@ WHERE id like ?
sqlx::query_as!(
Self,
"
SELECT id, name, cluster
SELECT id, name, formatted_name, desc, hide_in_lists, cluster
FROM role
WHERE cluster = ?
",
@ -72,7 +78,7 @@ WHERE cluster = ?
sqlx::query_as!(
Self,
"
SELECT id, name, cluster
SELECT id, name, formatted_name, desc, hide_in_lists, cluster
FROM role
WHERE name like ?
",
@ -87,7 +93,7 @@ WHERE name like ?
sqlx::query_as!(
Self,
"
SELECT id, name, cluster
SELECT id, name, formatted_name, desc, hide_in_lists, cluster
FROM role
WHERE name like ?
",

View File

@ -315,7 +315,7 @@ ASKÖ Ruderverein Donau Linz", self.name),
pub async fn real_roles(&self, db: &SqlitePool) -> Vec<Role> {
sqlx::query_as!(
Role,
"SELECT r.id, r.name, r.cluster
"SELECT r.id, r.name, r.cluster, r.formatted_name, r.desc, r.hide_in_lists
FROM role r
JOIN user_role ur ON r.id = ur.role_id
JOIN user u ON u.id = ur.user_id