mirror of
https://github.com/juspay/hyperswitch.git
synced 2025-11-01 19:42:27 +08:00
feat(payments): Add audit events for PaymentUpdate update (#6426)
This commit is contained in:
committed by
GitHub
parent
3d9f4432bc
commit
1be2654b4f
@ -25,6 +25,7 @@ use crate::{
|
||||
payments::{self, helpers, operations, CustomerDetails, PaymentAddress, PaymentData},
|
||||
utils as core_utils,
|
||||
},
|
||||
events::audit_events::{AuditEvent, AuditEventType},
|
||||
routes::{app::ReqState, SessionState},
|
||||
services,
|
||||
types::{
|
||||
@ -694,7 +695,7 @@ impl<F: Clone> UpdateTracker<F, PaymentData<F>, api::PaymentsRequest> for Paymen
|
||||
async fn update_trackers<'b>(
|
||||
&'b self,
|
||||
_state: &'b SessionState,
|
||||
_req_state: ReqState,
|
||||
req_state: ReqState,
|
||||
mut _payment_data: PaymentData<F>,
|
||||
_customer: Option<domain::Customer>,
|
||||
_storage_scheme: storage_enums::MerchantStorageScheme,
|
||||
@ -714,7 +715,7 @@ impl<F: Clone> UpdateTracker<F, PaymentData<F>, api::PaymentsRequest> for Paymen
|
||||
async fn update_trackers<'b>(
|
||||
&'b self,
|
||||
state: &'b SessionState,
|
||||
_req_state: ReqState,
|
||||
req_state: ReqState,
|
||||
mut payment_data: PaymentData<F>,
|
||||
customer: Option<domain::Customer>,
|
||||
storage_scheme: storage_enums::MerchantStorageScheme,
|
||||
@ -925,6 +926,12 @@ impl<F: Clone> UpdateTracker<F, PaymentData<F>, api::PaymentsRequest> for Paymen
|
||||
)
|
||||
.await
|
||||
.to_not_found_response(errors::ApiErrorResponse::PaymentNotFound)?;
|
||||
let amount = payment_data.amount;
|
||||
req_state
|
||||
.event_context
|
||||
.event(AuditEvent::new(AuditEventType::PaymentUpdate { amount }))
|
||||
.with(payment_data.to_event())
|
||||
.emit();
|
||||
|
||||
Ok((
|
||||
payments::is_confirm(self, payment_data.confirm),
|
||||
|
||||
@ -1,3 +1,4 @@
|
||||
use api_models::payments::Amount;
|
||||
use common_utils::types::MinorUnit;
|
||||
use diesel_models::fraud_check::FraudCheck;
|
||||
use events::{Event, EventInfo};
|
||||
@ -27,6 +28,9 @@ pub enum AuditEventType {
|
||||
capture_amount: Option<MinorUnit>,
|
||||
multiple_capture_count: Option<i16>,
|
||||
},
|
||||
PaymentUpdate {
|
||||
amount: Amount,
|
||||
},
|
||||
PaymentApprove,
|
||||
PaymentCreate,
|
||||
}
|
||||
@ -67,6 +71,7 @@ impl Event for AuditEvent {
|
||||
AuditEventType::RefundSuccess => "refund_success",
|
||||
AuditEventType::RefundFail => "refund_fail",
|
||||
AuditEventType::PaymentCancelled { .. } => "payment_cancelled",
|
||||
AuditEventType::PaymentUpdate { .. } => "payment_update",
|
||||
AuditEventType::PaymentApprove { .. } => "payment_approve",
|
||||
AuditEventType::PaymentCreate { .. } => "payment_create",
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user