kleine änderungen
This commit is contained in:
@@ -3,7 +3,6 @@ use async_graphql::{ComplexObject, Context, FieldResult, SimpleObject};
|
||||
use crate::{
|
||||
dataloader::LoaderContext,
|
||||
domain::{gruppe::model::Gruppe, rolle::model::Rolle},
|
||||
models::gruppe_ansicht::GruppeAnsicht,
|
||||
scalar::Id,
|
||||
};
|
||||
|
||||
@@ -37,12 +36,12 @@ impl Benutzer {
|
||||
Ok(loader.gruppen.load_one(self.id).await?)
|
||||
}
|
||||
|
||||
/// Die Gruppen eines Benutzer kumulativ mit den Gruppen aus den Rollen
|
||||
pub async fn gruppen_kumulativ(
|
||||
&self,
|
||||
ctx: &Context<'_>,
|
||||
) -> FieldResult<Option<Vec<GruppeAnsicht>>> {
|
||||
let loader = ctx.data::<LoaderContext>()?;
|
||||
Ok(loader.benutzer_gruppen_kumulativ.load_one(self.id).await?)
|
||||
}
|
||||
// /// Die Gruppen eines Benutzer kumulativ mit den Gruppen aus den Rollen
|
||||
// pub async fn gruppen_kumulativ(
|
||||
// &self,
|
||||
// ctx: &Context<'_>,
|
||||
// ) -> FieldResult<Option<Vec<GruppeAnsicht>>> {
|
||||
// let loader = ctx.data::<LoaderContext>()?;
|
||||
// Ok(loader.benutzer_gruppen_kumulativ.load_one(self.id).await?)
|
||||
// }
|
||||
}
|
||||
|
||||
@@ -17,14 +17,14 @@ impl Repository {
|
||||
let rows = sqlx::query!(
|
||||
r#"
|
||||
SELECT
|
||||
bg.benutzer_id,
|
||||
rg.rolle_id,
|
||||
g.id,
|
||||
g.gruppenname,
|
||||
g.erstellt_am,
|
||||
g.geaendert_am
|
||||
FROM gruppen AS g
|
||||
LEFT JOIN benutzer_gruppen AS bg ON g.id = bg.gruppe_id
|
||||
WHERE bg.benutzer_id = ANY($1);
|
||||
LEFT JOIN rollen_gruppen AS rg ON g.id = rg.gruppe_id
|
||||
WHERE rg.rolle_id = ANY($1);
|
||||
"#,
|
||||
keys
|
||||
)
|
||||
@@ -33,7 +33,7 @@ impl Repository {
|
||||
.into_iter()
|
||||
.map(|row| {
|
||||
(
|
||||
row.benutzer_id,
|
||||
row.rolle_id,
|
||||
Gruppe {
|
||||
id: row.id,
|
||||
gruppenname: row.gruppenname,
|
||||
|
||||
@@ -13,7 +13,7 @@ impl Repository {
|
||||
const QUERY: &str = r#"
|
||||
UPDATE gruppen
|
||||
SET geaendert_am = $2, ruppenname = $3 WHERE gruppeid = $1
|
||||
RETURNING id, geaendert_am, gruppenname, gruppenname;
|
||||
RETURNING id, geaendert_am, erstellt_am, gruppenname;
|
||||
"#;
|
||||
|
||||
let gruppe = sqlx::query_as::<_, model::Gruppe>(QUERY)
|
||||
|
||||
@@ -9,7 +9,7 @@ impl Service {
|
||||
&self,
|
||||
keys: &[Id],
|
||||
) -> Result<HashMap<Id, Vec<Gruppe>>, Arc<sqlx::Error>> {
|
||||
let grupen_dataloader = self.repo.gruppe_dataloader(&self.db, keys).await?;
|
||||
Ok(grupen_dataloader)
|
||||
let gruppen_dataloader = self.repo.gruppe_dataloader(&self.db, keys).await?;
|
||||
Ok(gruppen_dataloader)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
mod typ_alle;
|
||||
mod typ_dataloader;
|
||||
mod typ_einen_zeigen;
|
||||
mod typ_erstelle_viele;
|
||||
mod typ_erstellen;
|
||||
mod typ_loeschen;
|
||||
mod typ_update;
|
||||
|
||||
@@ -6,7 +6,7 @@ use crate::{database::Queryer, domain::typ::model};
|
||||
impl Repository {
|
||||
pub async fn typ_alle<'c, C: Queryer<'c>>(&self, db: C) -> Result<Vec<model::Typ>, Error> {
|
||||
const QUERY: &str = r#"
|
||||
SELECT * FROM typen
|
||||
SELECT id, erstellt_am, geaendert_am, typname FROM typen
|
||||
"#;
|
||||
|
||||
let typen = sqlx::query_as::<_, model::Typ>(QUERY).fetch_all(db).await?;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
mod typ_alle;
|
||||
// mod typ_dataloader;
|
||||
mod typ_erstellen;
|
||||
mod typ_erstellen_viele;
|
||||
mod typ_loeschen;
|
||||
mod typ_update;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user