2026-05-31 20:24:10 +02:00
|
|
|
use anyhow::Error;
|
|
|
|
|
|
|
|
|
|
use super::Repository;
|
|
|
|
|
use crate::database::Queryer;
|
|
|
|
|
use crate::domain::typ::{entity, model};
|
|
|
|
|
|
|
|
|
|
impl Repository {
|
|
|
|
|
pub async fn typ_update<'c, C: Queryer<'c>>(
|
|
|
|
|
&self,
|
|
|
|
|
db: C,
|
2026-06-03 22:08:44 +02:00
|
|
|
typ: &entity::TypUpdate,
|
2026-05-31 20:24:10 +02:00
|
|
|
) -> Result<model::Typ, Error> {
|
|
|
|
|
const QUERY: &str = r#"
|
|
|
|
|
UPDATE typen
|
|
|
|
|
SET geaendert_am = $2, typname = $3 WHERE id = $1
|
|
|
|
|
RETURNING id, erstellt_am, geaendert_am, typname;
|
|
|
|
|
"#;
|
|
|
|
|
|
|
|
|
|
let typ = sqlx::query_as::<_, model::Typ>(QUERY)
|
2026-06-04 22:42:57 +02:00
|
|
|
.bind(typ.id)
|
2026-05-31 20:24:10 +02:00
|
|
|
.bind(typ.geaendert_am)
|
|
|
|
|
.bind(&typ.typname)
|
|
|
|
|
.fetch_one(db)
|
|
|
|
|
.await?;
|
2026-06-04 22:42:57 +02:00
|
|
|
// .map(model::Typ::from)?;
|
2026-05-31 20:24:10 +02:00
|
|
|
|
|
|
|
|
Ok(typ)
|
|
|
|
|
}
|
|
|
|
|
}
|