create gruppen, rollen, etc...

This commit is contained in:
Peter Schiwy
2024-12-06 14:06:27 +01:00
parent bfce29c8ee
commit 623d28f77b
63 changed files with 735 additions and 185 deletions

View File

@@ -1,37 +1,27 @@
mod benutzer_gruppen;
mod benutzer_gruppen_kumulativ;
mod benutzer_rollen;
mod rollen_gruppen;
pub use benutzer_gruppen::BenutzerGruppenLoader;
use crate::domain::{
gruppe::dataloader::gruppen::GruppenLoader, rolle::dataloader::rollen::RollenLoader,
};
pub use benutzer_gruppen_kumulativ::BenutzerGruppenKumulativLoader;
pub use benutzer_rollen::BenutzerRollenLoader;
pub use rollen_gruppen::RollenGruppenLoader;
use async_graphql::dataloader::DataLoader;
pub struct LoaderContext {
pub benutzer_gruppen: DataLoader<BenutzerGruppenLoader>,
pub benutzer_rollen: DataLoader<BenutzerRollenLoader>,
pub rollen_gruppen: DataLoader<RollenGruppenLoader>,
pub gruppen: DataLoader<GruppenLoader>,
// pub benutzer_rollen: DataLoader<BenutzerRollenLoader>,
pub rollen: DataLoader<RollenLoader>,
pub benutzer_gruppen_kumulativ: DataLoader<BenutzerGruppenKumulativLoader>,
}
impl LoaderContext {
pub fn new(pool: sqlx::PgPool) -> Self {
Self {
benutzer_gruppen: DataLoader::new(
BenutzerGruppenLoader { pool: pool.clone() },
tokio::spawn,
),
benutzer_rollen: DataLoader::new(
BenutzerRollenLoader { pool: pool.clone() },
tokio::spawn,
),
rollen_gruppen: DataLoader::new(
RollenGruppenLoader { pool: pool.clone() },
tokio::spawn,
),
gruppen: DataLoader::new(GruppenLoader { pool: pool.clone() }, tokio::spawn),
rollen: DataLoader::new(RollenLoader { pool: pool.clone() }, tokio::spawn),
benutzer_gruppen_kumulativ: DataLoader::new(
BenutzerGruppenKumulativLoader { pool: pool.clone() },
tokio::spawn,