mirror of
				https://github.com/juspay/hyperswitch.git
				synced 2025-10-31 18:17:13 +08:00 
			
		
		
		
	refactor(router): add id field in MerchantConnectorAccountNotFound (#1098)
				
					
				
			This commit is contained in:
		| @ -88,8 +88,8 @@ pub enum StripeErrorCode { | |||||||
|     #[error(error_type = StripeErrorType::InvalidRequestError, code = "resource_missing", message = "No such resource ID")] |     #[error(error_type = StripeErrorType::InvalidRequestError, code = "resource_missing", message = "No such resource ID")] | ||||||
|     ResourceIdNotFound, |     ResourceIdNotFound, | ||||||
|  |  | ||||||
|     #[error(error_type = StripeErrorType::InvalidRequestError, code = "resource_missing", message = "No such merchant connector account")] |     #[error(error_type = StripeErrorType::InvalidRequestError, code = "resource_missing", message = "Merchant connector account with id '{id}' does not exist in our records")] | ||||||
|     MerchantConnectorAccountNotFound, |     MerchantConnectorAccountNotFound { id: String }, | ||||||
|  |  | ||||||
|     #[error(error_type = StripeErrorType::InvalidRequestError, code = "resource_missing", message = "No such mandate")] |     #[error(error_type = StripeErrorType::InvalidRequestError, code = "resource_missing", message = "No such mandate")] | ||||||
|     MandateNotFound, |     MandateNotFound, | ||||||
| @ -429,8 +429,8 @@ impl From<errors::ApiErrorResponse> for StripeErrorCode { | |||||||
|             | errors::ApiErrorResponse::ClientSecretExpired => Self::ClientSecretNotFound, |             | errors::ApiErrorResponse::ClientSecretExpired => Self::ClientSecretNotFound, | ||||||
|             errors::ApiErrorResponse::MerchantAccountNotFound => Self::MerchantAccountNotFound, |             errors::ApiErrorResponse::MerchantAccountNotFound => Self::MerchantAccountNotFound, | ||||||
|             errors::ApiErrorResponse::ResourceIdNotFound => Self::ResourceIdNotFound, |             errors::ApiErrorResponse::ResourceIdNotFound => Self::ResourceIdNotFound, | ||||||
|             errors::ApiErrorResponse::MerchantConnectorAccountNotFound => { |             errors::ApiErrorResponse::MerchantConnectorAccountNotFound { id } => { | ||||||
|                 Self::MerchantConnectorAccountNotFound |                 Self::MerchantConnectorAccountNotFound { id } | ||||||
|             } |             } | ||||||
|             errors::ApiErrorResponse::MandateNotFound => Self::MandateNotFound, |             errors::ApiErrorResponse::MandateNotFound => Self::MandateNotFound, | ||||||
|             errors::ApiErrorResponse::ApiKeyNotFound => Self::ApiKeyNotFound, |             errors::ApiErrorResponse::ApiKeyNotFound => Self::ApiKeyNotFound, | ||||||
| @ -518,7 +518,7 @@ impl actix_web::ResponseError for StripeErrorCode { | |||||||
|             | Self::PaymentNotFound |             | Self::PaymentNotFound | ||||||
|             | Self::PaymentMethodNotFound |             | Self::PaymentMethodNotFound | ||||||
|             | Self::MerchantAccountNotFound |             | Self::MerchantAccountNotFound | ||||||
|             | Self::MerchantConnectorAccountNotFound |             | Self::MerchantConnectorAccountNotFound { .. } | ||||||
|             | Self::MandateNotFound |             | Self::MandateNotFound | ||||||
|             | Self::ApiKeyNotFound |             | Self::ApiKeyNotFound | ||||||
|             | Self::DuplicateMerchantAccount |             | Self::DuplicateMerchantAccount | ||||||
|  | |||||||
| @ -449,7 +449,9 @@ pub async fn retrieve_payment_connector( | |||||||
|             &merchant_connector_id, |             &merchant_connector_id, | ||||||
|         ) |         ) | ||||||
|         .await |         .await | ||||||
|         .to_not_found_response(errors::ApiErrorResponse::MerchantConnectorAccountNotFound)?; |         .to_not_found_response(errors::ApiErrorResponse::MerchantConnectorAccountNotFound { | ||||||
|  |             id: merchant_connector_id.clone(), | ||||||
|  |         })?; | ||||||
|  |  | ||||||
|     Ok(service_api::ApplicationResponse::Json( |     Ok(service_api::ApplicationResponse::Json( | ||||||
|         ForeignTryFrom::foreign_try_from(mca)?, |         ForeignTryFrom::foreign_try_from(mca)?, | ||||||
| @ -469,7 +471,7 @@ pub async fn list_payment_connectors( | |||||||
|     let merchant_connector_accounts = store |     let merchant_connector_accounts = store | ||||||
|         .find_merchant_connector_account_by_merchant_id_and_disabled_list(&merchant_id, true) |         .find_merchant_connector_account_by_merchant_id_and_disabled_list(&merchant_id, true) | ||||||
|         .await |         .await | ||||||
|         .to_not_found_response(errors::ApiErrorResponse::MerchantConnectorAccountNotFound)?; |         .to_not_found_response(errors::ApiErrorResponse::InternalServerError)?; | ||||||
|     let mut response = vec![]; |     let mut response = vec![]; | ||||||
|  |  | ||||||
|     // The can be eliminated once [#79711](https://github.com/rust-lang/rust/issues/79711) is stabilized |     // The can be eliminated once [#79711](https://github.com/rust-lang/rust/issues/79711) is stabilized | ||||||
| @ -497,7 +499,9 @@ pub async fn update_payment_connector( | |||||||
|             merchant_connector_id, |             merchant_connector_id, | ||||||
|         ) |         ) | ||||||
|         .await |         .await | ||||||
|         .to_not_found_response(errors::ApiErrorResponse::MerchantConnectorAccountNotFound)?; |         .to_not_found_response(errors::ApiErrorResponse::MerchantConnectorAccountNotFound { | ||||||
|  |             id: merchant_connector_id.to_string(), | ||||||
|  |         })?; | ||||||
|  |  | ||||||
|     let payment_methods_enabled = req.payment_methods_enabled.map(|pm_enabled| { |     let payment_methods_enabled = req.payment_methods_enabled.map(|pm_enabled| { | ||||||
|         pm_enabled |         pm_enabled | ||||||
| @ -557,7 +561,9 @@ pub async fn delete_payment_connector( | |||||||
|             &merchant_connector_id, |             &merchant_connector_id, | ||||||
|         ) |         ) | ||||||
|         .await |         .await | ||||||
|         .to_not_found_response(errors::ApiErrorResponse::MerchantConnectorAccountNotFound)?; |         .to_not_found_response(errors::ApiErrorResponse::MerchantConnectorAccountNotFound { | ||||||
|  |             id: merchant_connector_id.clone(), | ||||||
|  |         })?; | ||||||
|     let response = api::MerchantConnectorDeleteResponse { |     let response = api::MerchantConnectorDeleteResponse { | ||||||
|         merchant_id, |         merchant_id, | ||||||
|         merchant_connector_id, |         merchant_connector_id, | ||||||
|  | |||||||
| @ -136,8 +136,8 @@ pub enum ApiErrorResponse { | |||||||
|     PaymentMethodNotFound, |     PaymentMethodNotFound, | ||||||
|     #[error(error_type = ErrorType::ObjectNotFound, code = "HE_02", message = "Merchant account does not exist in our records")] |     #[error(error_type = ErrorType::ObjectNotFound, code = "HE_02", message = "Merchant account does not exist in our records")] | ||||||
|     MerchantAccountNotFound, |     MerchantAccountNotFound, | ||||||
|     #[error(error_type = ErrorType::ObjectNotFound, code = "HE_02", message = "Merchant connector account does not exist in our records")] |     #[error(error_type = ErrorType::ObjectNotFound, code = "HE_02", message = "Merchant connector account with id '{id}' does not exist in our records")] | ||||||
|     MerchantConnectorAccountNotFound, |     MerchantConnectorAccountNotFound { id: String }, | ||||||
|     #[error(error_type = ErrorType::ObjectNotFound, code = "HE_02", message = "Resource ID does not exist in our records")] |     #[error(error_type = ErrorType::ObjectNotFound, code = "HE_02", message = "Resource ID does not exist in our records")] | ||||||
|     ResourceIdNotFound, |     ResourceIdNotFound, | ||||||
|     #[error(error_type = ErrorType::ObjectNotFound, code = "HE_02", message = "Mandate does not exist in our records")] |     #[error(error_type = ErrorType::ObjectNotFound, code = "HE_02", message = "Mandate does not exist in our records")] | ||||||
| @ -259,7 +259,7 @@ impl actix_web::ResponseError for ApiErrorResponse { | |||||||
|             | Self::PaymentNotFound |             | Self::PaymentNotFound | ||||||
|             | Self::PaymentMethodNotFound |             | Self::PaymentMethodNotFound | ||||||
|             | Self::MerchantAccountNotFound |             | Self::MerchantAccountNotFound | ||||||
|             | Self::MerchantConnectorAccountNotFound |             | Self::MerchantConnectorAccountNotFound { .. } | ||||||
|             | Self::MandateNotFound |             | Self::MandateNotFound | ||||||
|             | Self::ClientSecretNotGiven |             | Self::ClientSecretNotGiven | ||||||
|             | Self::ClientSecretExpired |             | Self::ClientSecretExpired | ||||||
| @ -438,8 +438,8 @@ impl common_utils::errors::ErrorSwitch<api_models::errors::types::ApiErrorRespon | |||||||
|             Self::MerchantAccountNotFound => { |             Self::MerchantAccountNotFound => { | ||||||
|                 AER::NotFound(ApiError::new("HE", 2, "Merchant account does not exist in our records", None)) |                 AER::NotFound(ApiError::new("HE", 2, "Merchant account does not exist in our records", None)) | ||||||
|             } |             } | ||||||
|             Self::MerchantConnectorAccountNotFound => { |             Self::MerchantConnectorAccountNotFound { id } => { | ||||||
|                 AER::NotFound(ApiError::new("HE", 2, "Merchant connector account does not exist in our records", None)) |                 AER::NotFound(ApiError::new("HE", 2, format!("Merchant connector account with id '{id}' does not exist in our records"), None)) | ||||||
|             } |             } | ||||||
|             Self::ResourceIdNotFound => { |             Self::ResourceIdNotFound => { | ||||||
|                 AER::NotFound(ApiError::new("HE", 2, "Resource ID does not exist in our records", None)) |                 AER::NotFound(ApiError::new("HE", 2, "Resource ID does not exist in our records", None)) | ||||||
|  | |||||||
| @ -1565,7 +1565,9 @@ pub async fn get_merchant_connector_account( | |||||||
|                 .find_config_by_key(format!("mcd_{merchant_id}_{creds_identifier}").as_str()) |                 .find_config_by_key(format!("mcd_{merchant_id}_{creds_identifier}").as_str()) | ||||||
|                 .await |                 .await | ||||||
|                 .to_not_found_response( |                 .to_not_found_response( | ||||||
|                     errors::ApiErrorResponse::MerchantConnectorAccountNotFound, |                     errors::ApiErrorResponse::MerchantConnectorAccountNotFound { | ||||||
|  |                         id: connector_label.to_string(), | ||||||
|  |                     }, | ||||||
|                 )?; |                 )?; | ||||||
|  |  | ||||||
|             #[cfg(feature = "kms")] |             #[cfg(feature = "kms")] | ||||||
| @ -1605,7 +1607,9 @@ pub async fn get_merchant_connector_account( | |||||||
|             ) |             ) | ||||||
|             .await |             .await | ||||||
|             .map(MerchantConnectorAccountType::DbVal) |             .map(MerchantConnectorAccountType::DbVal) | ||||||
|             .change_context(errors::ApiErrorResponse::MerchantConnectorAccountNotFound), |             .change_context(errors::ApiErrorResponse::MerchantConnectorAccountNotFound { | ||||||
|  |                 id: connector_label.to_string(), | ||||||
|  |             }), | ||||||
|     } |     } | ||||||
| } | } | ||||||
|  |  | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user
	 EliKalter
					EliKalter