28 lines
630 B
Rust
28 lines
630 B
Rust
// src/adresar/handlers/delete_adresar.rs
|
|
use tonic::Status;
|
|
use sqlx::PgPool;
|
|
use crate::proto::multieko2::{DeleteAdresarRequest, DeleteAdresarResponse};
|
|
|
|
pub async fn delete_adresar(
|
|
db_pool: &PgPool,
|
|
request: DeleteAdresarRequest,
|
|
) -> Result<DeleteAdresarResponse, Status> {
|
|
let rows_affected = sqlx::query!(
|
|
r#"
|
|
UPDATE adresar
|
|
SET deleted = true
|
|
WHERE id = $1
|
|
"#,
|
|
request.id
|
|
)
|
|
.execute(db_pool)
|
|
.await
|
|
.map_err(|e| Status::internal(e.to_string()))?
|
|
.rows_affected();
|
|
|
|
Ok(DeleteAdresarResponse {
|
|
success: rows_affected > 0,
|
|
})
|
|
}
|
|
|