|
@@ -119,7 +119,7 @@ pub async fn rollback_melt_quote(
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// Get and lock the quote, then reset state from Pending to Unpaid
|
|
// Get and lock the quote, then reset state from Pending to Unpaid
|
|
|
- if let Some(mut quote) = tx.get_melt_quote(quote_id).await? {
|
|
|
|
|
|
|
+ let quote_option = if let Some(mut quote) = tx.get_melt_quote(quote_id).await? {
|
|
|
let previous_state = tx
|
|
let previous_state = tx
|
|
|
.update_melt_quote_state(&mut quote, MeltQuoteState::Unpaid, None)
|
|
.update_melt_quote_state(&mut quote, MeltQuoteState::Unpaid, None)
|
|
|
.await?;
|
|
.await?;
|
|
@@ -130,7 +130,10 @@ pub async fn rollback_melt_quote(
|
|
|
previous_state
|
|
previous_state
|
|
|
);
|
|
);
|
|
|
}
|
|
}
|
|
|
- }
|
|
|
|
|
|
|
+ Some(quote)
|
|
|
|
|
+ } else {
|
|
|
|
|
+ None
|
|
|
|
|
+ };
|
|
|
|
|
|
|
|
// Delete melt request tracking record
|
|
// Delete melt request tracking record
|
|
|
tx.delete_melt_request(quote_id).await?;
|
|
tx.delete_melt_request(quote_id).await?;
|
|
@@ -154,6 +157,10 @@ pub async fn rollback_melt_quote(
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ if let Some(quote) = quote_option {
|
|
|
|
|
+ pubsub.melt_quote_status(&*quote, None, None, MeltQuoteState::Unpaid);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
tracing::info!(
|
|
tracing::info!(
|
|
|
"Successfully rolled back melt quote {} and deleted saga {}",
|
|
"Successfully rolled back melt quote {} and deleted saga {}",
|
|
|
quote_id,
|
|
quote_id,
|