This commit is contained in:
2023-08-10 23:03:58 +02:00
parent 57340d0240
commit a9c6055b70
2 changed files with 87 additions and 0 deletions

View File

@@ -20,6 +20,10 @@ pub trait Update {
client: &Client,
source_id: i16,
) -> Result<(), Box<tokio_postgres::Error>>;
async fn after_update(
client: &Client,
) -> Result<(), Box<tokio_postgres::Error>>;
}
#[derive(Debug)]
@@ -93,6 +97,12 @@ impl Update for Author {
Err(err) => Err(Box::new(err)),
}
}
async fn after_update(
_client: &Client
) -> Result<(), Box<tokio_postgres::Error>> {
Ok(())
}
}
#[derive(Debug)]
@@ -187,6 +197,18 @@ impl Update for Book {
Err(err) => Err(Box::new(err)),
}
}
async fn after_update(
client: &Client
) -> Result<(), Box<tokio_postgres::Error>> {
match client.execute(
"UPDATE books SET is_deleted = 't' WHERE lang NOT IN ('ru', 'be', 'uk');",
&[]
).await {
Ok(_) => Ok(()),
Err(err) => Err(Box::new(err)),
}
}
}
#[derive(Debug)]
@@ -260,6 +282,12 @@ impl Update for BookAuthor {
Err(err) => Err(Box::new(err)),
}
}
async fn after_update(
_client: &Client
) -> Result<(), Box<tokio_postgres::Error>> {
Ok(())
}
}
#[derive(Debug)]
@@ -338,6 +366,12 @@ impl Update for Translator {
Err(err) => Err(Box::new(err)),
}
}
async fn after_update(
_client: &Client
) -> Result<(), Box<tokio_postgres::Error>> {
Ok(())
}
}
#[derive(Debug)]
@@ -400,6 +434,12 @@ impl Update for Sequence {
Err(err) => Err(Box::new(err)),
}
}
async fn after_update(
_client: &Client
) -> Result<(), Box<tokio_postgres::Error>> {
Ok(())
}
}
#[derive(Debug)]
@@ -487,6 +527,12 @@ impl Update for SequenceInfo {
Err(err) => Err(Box::new(err)),
}
}
async fn after_update(
_client: &Client
) -> Result<(), Box<tokio_postgres::Error>> {
Ok(())
}
}
#[derive(Debug)]
@@ -563,6 +609,12 @@ impl Update for BookAnnotation {
Err(err) => Err(Box::new(err)),
}
}
async fn after_update(
_client: &Client
) -> Result<(), Box<tokio_postgres::Error>> {
Ok(())
}
}
#[derive(Debug)]
@@ -615,6 +667,12 @@ WHERE book = books.id;\
Err(err) => Err(Box::new(err)),
}
}
async fn after_update(
_client: &Client
) -> Result<(), Box<tokio_postgres::Error>> {
Ok(())
}
}
#[derive(Debug)]
@@ -691,6 +749,12 @@ impl Update for AuthorAnnotation {
Err(err) => Err(Box::new(err)),
}
}
async fn after_update(
_client: &Client
) -> Result<(), Box<tokio_postgres::Error>> {
Ok(())
}
}
#[derive(Debug)]
@@ -742,6 +806,12 @@ WHERE author = authors.id;",
Err(err) => Err(Box::new(err)),
}
}
async fn after_update(
_client: &Client
) -> Result<(), Box<tokio_postgres::Error>> {
Ok(())
}
}
#[derive(Debug)]
@@ -817,6 +887,12 @@ impl Update for Genre {
Err(err) => Err(Box::new(err)),
}
}
async fn after_update(
_client: &Client
) -> Result<(), Box<tokio_postgres::Error>> {
Ok(())
}
}
#[derive(Debug)]
@@ -864,4 +940,10 @@ impl Update for BookGenre {
Err(err) => Err(Box::new(err)),
}
}
async fn after_update(
_client: &Client
) -> Result<(), Box<tokio_postgres::Error>> {
Ok(())
}
}

View File

@@ -167,6 +167,11 @@ where
}
}
match T::after_update(&pool.get().await.unwrap()).await {
Ok(_) => (),
Err(err) => return Err(err),
};
log::info!("Updated {file_name}...");
Ok(())