There it goes
This commit is contained in:
@@ -51,12 +51,13 @@ pub mod request {
|
|||||||
|
|
||||||
impl UpdateScheduledMessageStatusRequest {
|
impl UpdateScheduledMessageStatusRequest {
|
||||||
pub fn is_valid(&self) -> bool {
|
pub fn is_valid(&self) -> bool {
|
||||||
if !self.status.is_empty() || !self.scheduled_message_id.is_nil() {
|
if !self.status.is_empty() || !self.scheduled_message_id.is_nil() {
|
||||||
if self.status == textsender_models::message::scheduling::PENDING ||
|
if self.status == textsender_models::message::scheduling::PENDING
|
||||||
self.status == textsender_models::message::scheduling::READY ||
|
|| self.status == textsender_models::message::scheduling::READY
|
||||||
self.status == textsender_models::message::scheduling::PROCESSING ||
|
|| self.status == textsender_models::message::scheduling::PROCESSING
|
||||||
self.status == textsender_models::message::scheduling::DONE {
|
|| self.status == textsender_models::message::scheduling::DONE
|
||||||
true
|
{
|
||||||
|
true
|
||||||
} else {
|
} else {
|
||||||
false
|
false
|
||||||
}
|
}
|
||||||
@@ -270,26 +271,31 @@ pub mod endpoint {
|
|||||||
match scheduling_repo::get(&pool, &payload.scheduled_message_id).await {
|
match scheduling_repo::get(&pool, &payload.scheduled_message_id).await {
|
||||||
Ok(scheduled_message) => {
|
Ok(scheduled_message) => {
|
||||||
let old_status = scheduled_message.status;
|
let old_status = scheduled_message.status;
|
||||||
match scheduling_repo::update_status(
|
if old_status == payload.status {
|
||||||
&pool,
|
response.message = String::from("No change");
|
||||||
&scheduled_message.id,
|
(axum::http::StatusCode::NOT_MODIFIED, axum::Json(response))
|
||||||
&payload.status,
|
} else {
|
||||||
)
|
match scheduling_repo::update_status(
|
||||||
.await
|
&pool,
|
||||||
{
|
&scheduled_message.id,
|
||||||
Ok(_) => {
|
&payload.status,
|
||||||
response.message =
|
)
|
||||||
String::from(super::super::super::response::SUCCESSFUL);
|
.await
|
||||||
response.data = vec![super::response::ChangedStatus { old_status }];
|
{
|
||||||
(axum::http::StatusCode::OK, axum::Json(response))
|
Ok(_) => {
|
||||||
}
|
response.message =
|
||||||
Err(err) => {
|
String::from(super::super::super::response::SUCCESSFUL);
|
||||||
eprintln!("Error: {err:?}");
|
response.data = vec![super::response::ChangedStatus { old_status }];
|
||||||
response.message = String::from("Invalid");
|
(axum::http::StatusCode::OK, axum::Json(response))
|
||||||
(
|
}
|
||||||
axum::http::StatusCode::INTERNAL_SERVER_ERROR,
|
Err(err) => {
|
||||||
axum::Json(response),
|
eprintln!("Error: {err:?}");
|
||||||
)
|
response.message = String::from("Invalid");
|
||||||
|
(
|
||||||
|
axum::http::StatusCode::INTERNAL_SERVER_ERROR,
|
||||||
|
axum::Json(response),
|
||||||
|
)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+10
-2
@@ -388,7 +388,9 @@ mod request {
|
|||||||
"status": updated_status
|
"status": updated_status
|
||||||
});
|
});
|
||||||
|
|
||||||
match super::super::run_post(Some(&payload), &uri, axum::http::Method::PATCH, true).await {
|
match super::super::run_post(Some(&payload), &uri, axum::http::Method::PATCH, true)
|
||||||
|
.await
|
||||||
|
{
|
||||||
Ok(req) => match app.clone().oneshot(req).await {
|
Ok(req) => match app.clone().oneshot(req).await {
|
||||||
Ok(response) => Ok(response),
|
Ok(response) => Ok(response),
|
||||||
Err(err) => Err(axum::http::Error::from(err)),
|
Err(err) => Err(axum::http::Error::from(err)),
|
||||||
@@ -1120,7 +1122,13 @@ async fn test_update_scheduled_message_status() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
match request::message::scheduling::update_scheduled_message_status(&app, &scheduled_message_id, textsender_models::message::scheduling::READY).await {
|
match request::message::scheduling::update_scheduled_message_status(
|
||||||
|
&app,
|
||||||
|
&scheduled_message_id,
|
||||||
|
textsender_models::message::scheduling::READY,
|
||||||
|
)
|
||||||
|
.await
|
||||||
|
{
|
||||||
Ok(response) => {
|
Ok(response) => {
|
||||||
let resp = util::get_resp_data::<
|
let resp = util::get_resp_data::<
|
||||||
textsender_api::caller::message::scheduling::response::UpdateScheduledMessageStatusResponse,
|
textsender_api::caller::message::scheduling::response::UpdateScheduledMessageStatusResponse,
|
||||||
|
|||||||
Reference in New Issue
Block a user