mirror of
https://github.com/juspay/hyperswitch.git
synced 2025-10-29 17:19:15 +08:00
refactor(payouts): openAPI schemas and mintlify docs (#5284)
Co-authored-by: hyperswitch-bot[bot] <148525504+hyperswitch-bot[bot]@users.noreply.github.com> Co-authored-by: Narayan Bhat <48803246+Narayanbhat166@users.noreply.github.com> Co-authored-by: Vrishab Srivatsa <136090360+vsrivatsa-juspay@users.noreply.github.com> Co-authored-by: Prajjwal Kumar <prajjwal.kumar@juspay.in>
This commit is contained in:
@ -619,9 +619,13 @@ impl DataModelExt for PayoutAttemptUpdate {
|
||||
Self::BusinessUpdate {
|
||||
business_country,
|
||||
business_label,
|
||||
address_id,
|
||||
customer_id,
|
||||
} => DieselPayoutAttemptUpdate::BusinessUpdate {
|
||||
business_country,
|
||||
business_label,
|
||||
address_id,
|
||||
customer_id,
|
||||
},
|
||||
Self::UpdateRouting {
|
||||
connector,
|
||||
|
||||
@ -8,7 +8,7 @@ use common_utils::ext_traits::Encode;
|
||||
))]
|
||||
use diesel::JoinOnDsl;
|
||||
#[cfg(feature = "olap")]
|
||||
use diesel::{associations::HasTable, ExpressionMethods, QueryDsl};
|
||||
use diesel::{associations::HasTable, ExpressionMethods, NullableExpressionMethods, QueryDsl};
|
||||
#[cfg(feature = "olap")]
|
||||
use diesel_models::{
|
||||
customers::Customer as DieselCustomer, query::generics::db_metrics,
|
||||
@ -47,7 +47,13 @@ use router_env::logger;
|
||||
use router_env::{instrument, tracing};
|
||||
|
||||
#[cfg(feature = "olap")]
|
||||
use crate::connection;
|
||||
use crate::{
|
||||
connection,
|
||||
store::schema::{
|
||||
customers::all_columns as cust_all_columns, payout_attempt::all_columns as poa_all_columns,
|
||||
payouts::all_columns as po_all_columns,
|
||||
},
|
||||
};
|
||||
use crate::{
|
||||
diesel_error_to_data_error,
|
||||
errors::RedisErrorExt,
|
||||
@ -320,7 +326,7 @@ impl<T: DatabaseStore> PayoutsInterface for KVRouterStore<T> {
|
||||
merchant_id: &common_utils::id_type::MerchantId,
|
||||
filters: &PayoutFetchConstraints,
|
||||
storage_scheme: MerchantStorageScheme,
|
||||
) -> error_stack::Result<Vec<(Payouts, PayoutAttempt, diesel_models::Customer)>, StorageError>
|
||||
) -> error_stack::Result<Vec<(Payouts, PayoutAttempt, Option<DieselCustomer>)>, StorageError>
|
||||
{
|
||||
self.router_store
|
||||
.filter_payouts_and_attempts(merchant_id, filters, storage_scheme)
|
||||
@ -541,7 +547,8 @@ impl<T: DatabaseStore> PayoutsInterface for crate::RouterStore<T> {
|
||||
merchant_id: &common_utils::id_type::MerchantId,
|
||||
filters: &PayoutFetchConstraints,
|
||||
storage_scheme: MerchantStorageScheme,
|
||||
) -> error_stack::Result<Vec<(Payouts, PayoutAttempt, DieselCustomer)>, StorageError> {
|
||||
) -> error_stack::Result<Vec<(Payouts, PayoutAttempt, Option<DieselCustomer>)>, StorageError>
|
||||
{
|
||||
use common_utils::errors::ReportSwitchExt;
|
||||
|
||||
let conn = connection::pg_connection_read(self).await.switch()?;
|
||||
@ -553,7 +560,7 @@ impl<T: DatabaseStore> PayoutsInterface for crate::RouterStore<T> {
|
||||
)
|
||||
.inner_join(
|
||||
diesel_models::schema::customers::table
|
||||
.on(cust_dsl::customer_id.eq(po_dsl::customer_id)),
|
||||
.on(cust_dsl::customer_id.nullable().eq(po_dsl::customer_id)),
|
||||
)
|
||||
.filter(po_dsl::merchant_id.eq(merchant_id.to_owned()))
|
||||
.order(po_dsl::created_at.desc())
|
||||
@ -645,7 +652,8 @@ impl<T: DatabaseStore> PayoutsInterface for crate::RouterStore<T> {
|
||||
logger::debug!(filter = %diesel::debug_query::<diesel::pg::Pg,_>(&query).to_string());
|
||||
|
||||
query
|
||||
.get_results_async::<(DieselPayouts, DieselPayoutAttempt, DieselCustomer)>(conn)
|
||||
.select((po_all_columns, poa_all_columns, cust_all_columns.nullable()))
|
||||
.get_results_async::<(DieselPayouts, DieselPayoutAttempt, Option<DieselCustomer>)>(conn)
|
||||
.await
|
||||
.map(|results| {
|
||||
results
|
||||
@ -836,6 +844,8 @@ impl DataModelExt for PayoutsUpdate {
|
||||
status,
|
||||
confirm,
|
||||
payout_type,
|
||||
address_id,
|
||||
customer_id,
|
||||
} => DieselPayoutsUpdate::Update {
|
||||
amount,
|
||||
destination_currency,
|
||||
@ -850,6 +860,8 @@ impl DataModelExt for PayoutsUpdate {
|
||||
status,
|
||||
confirm,
|
||||
payout_type,
|
||||
address_id,
|
||||
customer_id,
|
||||
},
|
||||
Self::PayoutMethodIdUpdate { payout_method_id } => {
|
||||
DieselPayoutsUpdate::PayoutMethodIdUpdate { payout_method_id }
|
||||
|
||||
Reference in New Issue
Block a user