mirror of
https://github.com/juspay/hyperswitch.git
synced 2025-10-29 09:07:09 +08:00
feat(analytics): refactor and introduce analytics APIs to accommodate OrgLevel, MerchantLevel and ProfileLevel authentication (#5729)
Co-authored-by: hyperswitch-bot[bot] <148525504+hyperswitch-bot[bot]@users.noreply.github.com> Co-authored-by: Sampras Lopes <sampras.lopes@juspay.in>
This commit is contained in:
@ -210,6 +210,10 @@ impl<'a> FromRow<'a, PgRow> for super::refunds::metrics::RefundMetricRow {
|
||||
ColumnNotFound(_) => Ok(Default::default()),
|
||||
e => Err(e),
|
||||
})?;
|
||||
let profile_id: Option<String> = row.try_get("profile_id").or_else(|e| match e {
|
||||
ColumnNotFound(_) => Ok(Default::default()),
|
||||
e => Err(e),
|
||||
})?;
|
||||
let total: Option<bigdecimal::BigDecimal> = row.try_get("total").or_else(|e| match e {
|
||||
ColumnNotFound(_) => Ok(Default::default()),
|
||||
e => Err(e),
|
||||
@ -230,6 +234,7 @@ impl<'a> FromRow<'a, PgRow> for super::refunds::metrics::RefundMetricRow {
|
||||
refund_status,
|
||||
connector,
|
||||
refund_type,
|
||||
profile_id,
|
||||
total,
|
||||
count,
|
||||
start_bucket,
|
||||
@ -321,6 +326,10 @@ impl<'a> FromRow<'a, PgRow> for super::payments::metrics::PaymentMetricRow {
|
||||
ColumnNotFound(_) => Ok(Default::default()),
|
||||
e => Err(e),
|
||||
})?;
|
||||
let profile_id: Option<String> = row.try_get("profile_id").or_else(|e| match e {
|
||||
ColumnNotFound(_) => Ok(Default::default()),
|
||||
e => Err(e),
|
||||
})?;
|
||||
let total: Option<bigdecimal::BigDecimal> = row.try_get("total").or_else(|e| match e {
|
||||
ColumnNotFound(_) => Ok(Default::default()),
|
||||
e => Err(e),
|
||||
@ -345,6 +354,7 @@ impl<'a> FromRow<'a, PgRow> for super::payments::metrics::PaymentMetricRow {
|
||||
payment_method_type,
|
||||
client_source,
|
||||
client_version,
|
||||
profile_id,
|
||||
total,
|
||||
count,
|
||||
start_bucket,
|
||||
@ -393,6 +403,10 @@ impl<'a> FromRow<'a, PgRow> for super::payments::distribution::PaymentDistributi
|
||||
ColumnNotFound(_) => Ok(Default::default()),
|
||||
e => Err(e),
|
||||
})?;
|
||||
let profile_id: Option<String> = row.try_get("profile_id").or_else(|e| match e {
|
||||
ColumnNotFound(_) => Ok(Default::default()),
|
||||
e => Err(e),
|
||||
})?;
|
||||
let total: Option<bigdecimal::BigDecimal> = row.try_get("total").or_else(|e| match e {
|
||||
ColumnNotFound(_) => Ok(Default::default()),
|
||||
e => Err(e),
|
||||
@ -421,6 +435,7 @@ impl<'a> FromRow<'a, PgRow> for super::payments::distribution::PaymentDistributi
|
||||
payment_method_type,
|
||||
client_source,
|
||||
client_version,
|
||||
profile_id,
|
||||
total,
|
||||
count,
|
||||
error_message,
|
||||
@ -430,7 +445,7 @@ impl<'a> FromRow<'a, PgRow> for super::payments::distribution::PaymentDistributi
|
||||
}
|
||||
}
|
||||
|
||||
impl<'a> FromRow<'a, PgRow> for super::payments::filters::FilterRow {
|
||||
impl<'a> FromRow<'a, PgRow> for super::payments::filters::PaymentFilterRow {
|
||||
fn from_row(row: &'a PgRow) -> sqlx::Result<Self> {
|
||||
let currency: Option<DBEnumWrapper<Currency>> =
|
||||
row.try_get("currency").or_else(|e| match e {
|
||||
@ -470,6 +485,10 @@ impl<'a> FromRow<'a, PgRow> for super::payments::filters::FilterRow {
|
||||
ColumnNotFound(_) => Ok(Default::default()),
|
||||
e => Err(e),
|
||||
})?;
|
||||
let profile_id: Option<String> = row.try_get("profile_id").or_else(|e| match e {
|
||||
ColumnNotFound(_) => Ok(Default::default()),
|
||||
e => Err(e),
|
||||
})?;
|
||||
Ok(Self {
|
||||
currency,
|
||||
status,
|
||||
@ -479,6 +498,7 @@ impl<'a> FromRow<'a, PgRow> for super::payments::filters::FilterRow {
|
||||
payment_method_type,
|
||||
client_source,
|
||||
client_version,
|
||||
profile_id,
|
||||
})
|
||||
}
|
||||
}
|
||||
@ -495,6 +515,10 @@ impl<'a> FromRow<'a, PgRow> for super::payment_intents::metrics::PaymentIntentMe
|
||||
ColumnNotFound(_) => Ok(Default::default()),
|
||||
e => Err(e),
|
||||
})?;
|
||||
let profile_id: Option<String> = row.try_get("profile_id").or_else(|e| match e {
|
||||
ColumnNotFound(_) => Ok(Default::default()),
|
||||
e => Err(e),
|
||||
})?;
|
||||
let total: Option<bigdecimal::BigDecimal> = row.try_get("total").or_else(|e| match e {
|
||||
ColumnNotFound(_) => Ok(Default::default()),
|
||||
e => Err(e),
|
||||
@ -513,6 +537,7 @@ impl<'a> FromRow<'a, PgRow> for super::payment_intents::metrics::PaymentIntentMe
|
||||
Ok(Self {
|
||||
status,
|
||||
currency,
|
||||
profile_id,
|
||||
total,
|
||||
count,
|
||||
start_bucket,
|
||||
@ -533,7 +558,16 @@ impl<'a> FromRow<'a, PgRow> for super::payment_intents::filters::PaymentIntentFi
|
||||
ColumnNotFound(_) => Ok(Default::default()),
|
||||
e => Err(e),
|
||||
})?;
|
||||
Ok(Self { status, currency })
|
||||
let profile_id: Option<String> = row.try_get("profile_id").or_else(|e| match e {
|
||||
ColumnNotFound(_) => Ok(Default::default()),
|
||||
e => Err(e),
|
||||
})?;
|
||||
|
||||
Ok(Self {
|
||||
status,
|
||||
currency,
|
||||
profile_id,
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
@ -558,11 +592,16 @@ impl<'a> FromRow<'a, PgRow> for super::refunds::filters::RefundFilterRow {
|
||||
ColumnNotFound(_) => Ok(Default::default()),
|
||||
e => Err(e),
|
||||
})?;
|
||||
let profile_id: Option<String> = row.try_get("profile_id").or_else(|e| match e {
|
||||
ColumnNotFound(_) => Ok(Default::default()),
|
||||
e => Err(e),
|
||||
})?;
|
||||
Ok(Self {
|
||||
currency,
|
||||
refund_status,
|
||||
connector,
|
||||
refund_type,
|
||||
profile_id,
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user