There it goes

This commit is contained in:
2026-06-19 17:06:30 -04:00
parent 5721990f5f
commit 700bc61d92
2 changed files with 42 additions and 28 deletions
+32 -26
View File
@@ -51,12 +51,13 @@ pub mod request {
impl UpdateScheduledMessageStatusRequest {
pub fn is_valid(&self) -> bool {
if !self.status.is_empty() || !self.scheduled_message_id.is_nil() {
if self.status == textsender_models::message::scheduling::PENDING ||
self.status == textsender_models::message::scheduling::READY ||
self.status == textsender_models::message::scheduling::PROCESSING ||
self.status == textsender_models::message::scheduling::DONE {
true
if !self.status.is_empty() || !self.scheduled_message_id.is_nil() {
if self.status == textsender_models::message::scheduling::PENDING
|| self.status == textsender_models::message::scheduling::READY
|| self.status == textsender_models::message::scheduling::PROCESSING
|| self.status == textsender_models::message::scheduling::DONE
{
true
} else {
false
}
@@ -270,26 +271,31 @@ pub mod endpoint {
match scheduling_repo::get(&pool, &payload.scheduled_message_id).await {
Ok(scheduled_message) => {
let old_status = scheduled_message.status;
match scheduling_repo::update_status(
&pool,
&scheduled_message.id,
&payload.status,
)
.await
{
Ok(_) => {
response.message =
String::from(super::super::super::response::SUCCESSFUL);
response.data = vec![super::response::ChangedStatus { old_status }];
(axum::http::StatusCode::OK, axum::Json(response))
}
Err(err) => {
eprintln!("Error: {err:?}");
response.message = String::from("Invalid");
(
axum::http::StatusCode::INTERNAL_SERVER_ERROR,
axum::Json(response),
)
if old_status == payload.status {
response.message = String::from("No change");
(axum::http::StatusCode::NOT_MODIFIED, axum::Json(response))
} else {
match scheduling_repo::update_status(
&pool,
&scheduled_message.id,
&payload.status,
)
.await
{
Ok(_) => {
response.message =
String::from(super::super::super::response::SUCCESSFUL);
response.data = vec![super::response::ChangedStatus { old_status }];
(axum::http::StatusCode::OK, axum::Json(response))
}
Err(err) => {
eprintln!("Error: {err:?}");
response.message = String::from("Invalid");
(
axum::http::StatusCode::INTERNAL_SERVER_ERROR,
axum::Json(response),
)
}
}
}
}