diff --git a/obp-api/src/main/scala/code/api/ResourceDocs1_4_0/SwaggerDefinitionsJSON.scala b/obp-api/src/main/scala/code/api/ResourceDocs1_4_0/SwaggerDefinitionsJSON.scala index 106dc8146..fa11b7426 100644 --- a/obp-api/src/main/scala/code/api/ResourceDocs1_4_0/SwaggerDefinitionsJSON.scala +++ b/obp-api/src/main/scala/code/api/ResourceDocs1_4_0/SwaggerDefinitionsJSON.scala @@ -26,7 +26,8 @@ import code.connectormethod.{JsonConnectorMethod, JsonConnectorMethodMethodBody} import code.dynamicMessageDoc.JsonDynamicMessageDoc import code.dynamicResourceDoc.JsonDynamicResourceDoc import code.sandbox.SandboxData -import code.transactionrequests.TransactionRequests.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.PaymentServiceTypes._ import com.github.dwickern.macros.NameOf.nameOf import com.openbankproject.commons.model import com.openbankproject.commons.model.PinResetReason.{FORGOT, GOOD_SECURITY_PRACTICE} diff --git a/obp-api/src/main/scala/code/api/berlin/group/v1_3/PaymentInitiationServicePISApi.scala b/obp-api/src/main/scala/code/api/berlin/group/v1_3/PaymentInitiationServicePISApi.scala index 0ec17cb66..3b196b7d4 100644 --- a/obp-api/src/main/scala/code/api/berlin/group/v1_3/PaymentInitiationServicePISApi.scala +++ b/obp-api/src/main/scala/code/api/berlin/group/v1_3/PaymentInitiationServicePISApi.scala @@ -12,9 +12,6 @@ import code.api.berlin.group.v1_3.model._ import code.bankconnectors.Connector import code.fx.fx import code.api.Constant._ -import code.transactionrequests.TransactionRequests.PaymentServiceTypes.PaymentServiceTypes -import code.transactionrequests.TransactionRequests.TransactionRequestTypes.{SEPA_CREDIT_TRANSFERS, TransactionRequestTypes} -import code.transactionrequests.TransactionRequests.{PaymentServiceTypes, TransactionRequestTypes} import code.util.Helper import code.views.Views import com.github.dwickern.macros.NameOf.nameOf @@ -22,7 +19,9 @@ import com.openbankproject.commons.ExecutionContext.Implicits.global import com.openbankproject.commons.model._ import com.openbankproject.commons.model.enums.ChallengeType.BERLIN_GROUP_PAYMENT_CHALLENGE import com.openbankproject.commons.model.enums.TransactionRequestStatus._ -import com.openbankproject.commons.model.enums.{ChallengeType, StrongCustomerAuthenticationStatus, SuppliedAnswerType, TransactionRequestStatus} +import com.openbankproject.commons.model.enums.{ChallengeType, StrongCustomerAuthenticationStatus, SuppliedAnswerType, TransactionRequestStatus,TransactionRequestTypes,PaymentServiceTypes} +import com.openbankproject.commons.model.enums.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.PaymentServiceTypes._ import com.openbankproject.commons.util.ApiVersion import net.liftweb import net.liftweb.common.Box.tryo diff --git a/obp-api/src/main/scala/code/api/dynamic/endpoint/APIMethodsDynamicEndpoint.scala b/obp-api/src/main/scala/code/api/dynamic/endpoint/APIMethodsDynamicEndpoint.scala index 126201d87..f6877bb60 100644 --- a/obp-api/src/main/scala/code/api/dynamic/endpoint/APIMethodsDynamicEndpoint.scala +++ b/obp-api/src/main/scala/code/api/dynamic/endpoint/APIMethodsDynamicEndpoint.scala @@ -10,7 +10,7 @@ import code.api.util.ErrorMessages._ import code.api.util.NewStyle.HttpCode import code.api.util._ import code.endpointMapping.EndpointMappingCommons -import code.transactionrequests.TransactionRequests.TransactionRequestTypes.{apply => _} +import com.openbankproject.commons.model.enums.TransactionRequestTypes._ import code.util.Helper import com.openbankproject.commons.ExecutionContext.Implicits.global import com.openbankproject.commons.model._ diff --git a/obp-api/src/main/scala/code/api/dynamic/entity/APIMethodsDynamicEntity.scala b/obp-api/src/main/scala/code/api/dynamic/entity/APIMethodsDynamicEntity.scala index 0e4c938d0..c4da3fa69 100644 --- a/obp-api/src/main/scala/code/api/dynamic/entity/APIMethodsDynamicEntity.scala +++ b/obp-api/src/main/scala/code/api/dynamic/entity/APIMethodsDynamicEntity.scala @@ -11,7 +11,8 @@ import code.api.util.ErrorMessages._ import code.api.util.NewStyle.HttpCode import code.api.util._ import code.endpointMapping.EndpointMappingCommons -import code.transactionrequests.TransactionRequests.TransactionRequestTypes.{apply => _} +import com.openbankproject.commons.model.enums.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.PaymentServiceTypes._ import code.util.Helper import com.openbankproject.commons.ExecutionContext.Implicits.global import com.openbankproject.commons.model._ diff --git a/obp-api/src/main/scala/code/api/util/NewStyle.scala b/obp-api/src/main/scala/code/api/util/NewStyle.scala index 39f7c7e5c..46eb6572c 100644 --- a/obp-api/src/main/scala/code/api/util/NewStyle.scala +++ b/obp-api/src/main/scala/code/api/util/NewStyle.scala @@ -44,6 +44,8 @@ import com.github.dwickern.macros.NameOf.nameOf import com.openbankproject.commons.dto.{CustomerAndAttribute, ProductCollectionItemsTree} import com.openbankproject.commons.model.enums.StrongCustomerAuthentication.SCA import com.openbankproject.commons.model.enums.StrongCustomerAuthenticationStatus.SCAStatus +import com.openbankproject.commons.model.enums.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.PaymentServiceTypes._ import com.openbankproject.commons.model.enums._ import com.openbankproject.commons.model.{AccountApplication, Bank, Customer, CustomerAddress, Product, ProductCollection, ProductCollectionItem, TaxResidence, UserAuthContext, UserAuthContextUpdate, _} import com.tesobe.CacheKeyFromArguments @@ -79,9 +81,6 @@ import code.dynamicMessageDoc.{DynamicMessageDocProvider, JsonDynamicMessageDoc} import code.dynamicResourceDoc.{DynamicResourceDocProvider, JsonDynamicResourceDoc} import code.endpointMapping.{EndpointMappingProvider, EndpointMappingT} import code.endpointTag.EndpointTagT -import code.transactionrequests.TransactionRequests.{PaymentServiceTypes, TransactionRequestTypes} -import code.transactionrequests.TransactionRequests.PaymentServiceTypes.PaymentServiceTypes -import code.transactionrequests.TransactionRequests.TransactionRequestTypes.TransactionRequestTypes import code.util.Helper.MdcLoggable import code.views.system.AccountAccess import com.openbankproject.commons.model.enums.SuppliedAnswerType diff --git a/obp-api/src/main/scala/code/api/v1_4_0/APIMethods140.scala b/obp-api/src/main/scala/code/api/v1_4_0/APIMethods140.scala index 3435ff100..b6d5ef033 100644 --- a/obp-api/src/main/scala/code/api/v1_4_0/APIMethods140.scala +++ b/obp-api/src/main/scala/code/api/v1_4_0/APIMethods140.scala @@ -486,7 +486,7 @@ trait APIMethods140 extends MdcLoggable with APIMethods130 with APIMethods121{ "Get all Transaction Requests", "", emptyObjectJson, - List(transactionRequestJson), + transactionRequestJson, List( UserNotLoggedIn, BankNotFound, diff --git a/obp-api/src/main/scala/code/api/v2_1_0/APIMethods210.scala b/obp-api/src/main/scala/code/api/v2_1_0/APIMethods210.scala index d11cc650a..af85c7a96 100644 --- a/obp-api/src/main/scala/code/api/v2_1_0/APIMethods210.scala +++ b/obp-api/src/main/scala/code/api/v2_1_0/APIMethods210.scala @@ -24,7 +24,6 @@ import code.fx.fx import code.metrics.APIMetrics import code.model.{BankAccountX, BankX, Consumer, UserX, toUserExtended} import code.sandbox.SandboxData -import code.transactionrequests.TransactionRequests.TransactionRequestTypes import code.usercustomerlinks.UserCustomerLink import code.users.Users import code.util.Helper.booleanToBox @@ -32,7 +31,9 @@ import code.views.Views import code.views.system.ViewDefinition import com.github.dwickern.macros.NameOf.nameOf import com.openbankproject.commons.model._ -import com.openbankproject.commons.model.enums.{ChallengeType, SuppliedAnswerType} +import com.openbankproject.commons.model.enums.{ChallengeType, SuppliedAnswerType, TransactionRequestTypes} +import com.openbankproject.commons.model.enums.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.PaymentServiceTypes._ import com.openbankproject.commons.util.ApiVersion import net.liftweb.json.Extraction import net.liftweb.util.Helpers.tryo @@ -48,7 +49,8 @@ import code.api.util.ApiRole._ import code.api.util.ErrorMessages._ import code.api.{APIFailure, ChargePolicy} import code.sandbox.{OBPDataImport, SandboxDataImport} -import code.transactionrequests.TransactionRequests.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.PaymentServiceTypes._ import code.util.Helper import code.util.Helper._ import net.liftweb.common.{Box, Full} diff --git a/obp-api/src/main/scala/code/api/v4_0_0/APIMethods400.scala b/obp-api/src/main/scala/code/api/v4_0_0/APIMethods400.scala index c158bd889..40844db73 100644 --- a/obp-api/src/main/scala/code/api/v4_0_0/APIMethods400.scala +++ b/obp-api/src/main/scala/code/api/v4_0_0/APIMethods400.scala @@ -67,8 +67,6 @@ import code.scope.Scope import code.snippet.{WebUIPlaceholder, WebUITemplate} import code.transactionChallenge.MappedExpectedChallengeAnswer import code.transactionrequests.MappedTransactionRequestProvider -import code.transactionrequests.TransactionRequests.TransactionRequestTypes -import code.transactionrequests.TransactionRequests.TransactionRequestTypes.{apply => _, _} import code.usercustomerlinks.UserCustomerLink import code.userlocks.UserLocksProvider import code.users.Users @@ -87,6 +85,8 @@ import com.openbankproject.commons.model.enums.ChallengeType.OBP_TRANSACTION_REQ import com.openbankproject.commons.model.enums.DynamicEntityOperation._ import com.openbankproject.commons.model.enums.{TransactionRequestStatus, _} import com.openbankproject.commons.model._ +import com.openbankproject.commons.model.enums.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.PaymentServiceTypes._ import com.openbankproject.commons.util.{ApiVersion, JsonUtils, ScannedApiVersion} import deletion._ import net.liftweb.common._ diff --git a/obp-api/src/main/scala/code/api/v5_0_0/APIMethods500.scala b/obp-api/src/main/scala/code/api/v5_0_0/APIMethods500.scala index 559e0db21..ab1a94dab 100644 --- a/obp-api/src/main/scala/code/api/v5_0_0/APIMethods500.scala +++ b/obp-api/src/main/scala/code/api/v5_0_0/APIMethods500.scala @@ -23,7 +23,8 @@ import code.entitlement.Entitlement import code.metrics.APIMetrics import code.model._ import code.model.dataAccess.BankAccountCreation -import code.transactionrequests.TransactionRequests.TransactionRequestTypes.{apply => _} +import com.openbankproject.commons.model.enums.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.TransactionRequestTypes import code.util.Helper import code.util.Helper.{SILENCE_IS_GOLDEN, booleanToFuture} import code.views.Views @@ -32,6 +33,8 @@ import com.openbankproject.commons.ExecutionContext.Implicits.global import com.openbankproject.commons.model.enums.StrongCustomerAuthentication import com.openbankproject.commons.model._ import com.openbankproject.commons.util.ApiVersion +import com.openbankproject.commons.model.enums.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.PaymentServiceTypes._ import net.liftweb.common.{Empty, Full} import net.liftweb.http.Req import net.liftweb.http.rest.RestHelper diff --git a/obp-api/src/main/scala/code/api/v5_1_0/APIMethods510.scala b/obp-api/src/main/scala/code/api/v5_1_0/APIMethods510.scala index 1ce44897b..66214c287 100644 --- a/obp-api/src/main/scala/code/api/v5_1_0/APIMethods510.scala +++ b/obp-api/src/main/scala/code/api/v5_1_0/APIMethods510.scala @@ -35,7 +35,6 @@ import code.metrics.APIMetrics import code.model.{AppType, BankAccountX} import code.model.dataAccess.MappedBankAccount import code.regulatedentities.MappedRegulatedEntityProvider -import code.transactionrequests.TransactionRequests.TransactionRequestTypes.{apply => _} import code.userlocks.UserLocksProvider import code.users.Users import code.util.Helper @@ -45,6 +44,8 @@ import code.views.system.{AccountAccess, ViewDefinition} import com.github.dwickern.macros.NameOf.nameOf import com.openbankproject.commons.ExecutionContext.Implicits.global import com.openbankproject.commons.model.enums.{AtmAttributeType, UserAttributeType} +import com.openbankproject.commons.model.enums.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.PaymentServiceTypes._ import com.openbankproject.commons.model._ import com.openbankproject.commons.util.{ApiVersion, ScannedApiVersion} import net.liftweb.common.Full diff --git a/obp-api/src/main/scala/code/bankconnectors/Connector.scala b/obp-api/src/main/scala/code/bankconnectors/Connector.scala index 970e24f15..1b5332516 100644 --- a/obp-api/src/main/scala/code/bankconnectors/Connector.scala +++ b/obp-api/src/main/scala/code/bankconnectors/Connector.scala @@ -32,8 +32,8 @@ import code.model.toUserExtended import code.productfee.ProductFeeX import code.standingorders.StandingOrderTrait import code.transactionrequests.TransactionRequests -import code.transactionrequests.TransactionRequests.PaymentServiceTypes.PaymentServiceTypes -import code.transactionrequests.TransactionRequests.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.PaymentServiceTypes._ import code.transactionrequests.TransactionRequests._ import code.users.{UserAttribute, Users} import code.util.Helper._ diff --git a/obp-api/src/main/scala/code/bankconnectors/ConnectorBuilderUtil.scala b/obp-api/src/main/scala/code/bankconnectors/ConnectorBuilderUtil.scala index a5abd178f..42f39ce1b 100644 --- a/obp-api/src/main/scala/code/bankconnectors/ConnectorBuilderUtil.scala +++ b/obp-api/src/main/scala/code/bankconnectors/ConnectorBuilderUtil.scala @@ -346,6 +346,8 @@ object ConnectorBuilderUtil { "createChallenges", "createTransactionRequestv400", + "createTransactionRequestSepaCreditTransfersBGV1", + "createTransactionRequestPeriodicSepaCreditTransfersBGV1", "getCustomersByCustomerPhoneNumber", "getTransactionAttributeById", "createOrUpdateCustomerAttribute", diff --git a/obp-api/src/main/scala/code/bankconnectors/LocalMappedConnector.scala b/obp-api/src/main/scala/code/bankconnectors/LocalMappedConnector.scala index f86d932d4..6070559da 100644 --- a/obp-api/src/main/scala/code/bankconnectors/LocalMappedConnector.scala +++ b/obp-api/src/main/scala/code/bankconnectors/LocalMappedConnector.scala @@ -67,9 +67,10 @@ import code.transaction.MappedTransaction import code.transactionChallenge.{Challenges, MappedExpectedChallengeAnswer} import code.transactionRequestAttribute.TransactionRequestAttributeX import code.transactionattribute.TransactionAttributeX -import code.transactionrequests.TransactionRequests.PaymentServiceTypes.PaymentServiceTypes -import code.transactionrequests.TransactionRequests.TransactionRequestTypes._ -import code.transactionrequests.TransactionRequests.TransactionRequestTypes +import com.openbankproject.commons.model.enums.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.TransactionRequestTypes +import com.openbankproject.commons.model.enums.PaymentServiceTypes._ +import com.openbankproject.commons.model.enums.PaymentServiceTypes import code.transactionrequests._ import code.users.{UserAttribute, UserAttributeProvider, Users} import code.util.Helper @@ -84,6 +85,8 @@ import com.openbankproject.commons.model.enums.StrongCustomerAuthentication.SCA import com.openbankproject.commons.model.enums.StrongCustomerAuthenticationStatus.SCAStatus import com.openbankproject.commons.model.enums.SuppliedAnswerType import com.openbankproject.commons.model.enums.{TransactionRequestStatus, _} +import com.openbankproject.commons.model.enums.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.PaymentServiceTypes._ import com.openbankproject.commons.model.{AccountApplication, AccountAttribute, ConsentImplicitSCAT, DirectDebitTrait, FXRate, Product, ProductAttribute, ProductCollectionItem, TaxResidence, TransactionRequestCommonBodyJSON, _} import com.tesobe.CacheKeyFromArguments import com.tesobe.model.UpdateBankAccount diff --git a/obp-api/src/main/scala/code/bankconnectors/LocalMappedConnectorHelper.scala b/obp-api/src/main/scala/code/bankconnectors/LocalMappedConnectorHelper.scala index 96d183191..817b277b5 100644 --- a/obp-api/src/main/scala/code/bankconnectors/LocalMappedConnectorHelper.scala +++ b/obp-api/src/main/scala/code/bankconnectors/LocalMappedConnectorHelper.scala @@ -5,14 +5,14 @@ import code.api.util.APIUtil._ import code.api.util.ErrorMessages._ import code.api.util._ import code.bankconnectors.LocalMappedConnector._ -import code.transactionrequests.TransactionRequests.PaymentServiceTypes.PaymentServiceTypes -import code.transactionrequests.TransactionRequests.TransactionRequestTypes._ import code.transactionrequests._ import code.util.Helper import code.util.Helper._ import com.openbankproject.commons.ExecutionContext.Implicits.global import com.openbankproject.commons.model._ import com.openbankproject.commons.model.enums.TransactionRequestStatus +import com.openbankproject.commons.model.enums.TransactionRequestTypes +import com.openbankproject.commons.model.enums.PaymentServiceTypes import net.liftweb.common._ import net.liftweb.json.Serialization.write import net.liftweb.json.{NoTypeHints, Serialization} diff --git a/obp-api/src/main/scala/code/bankconnectors/storedprocedure/StoredProcedureConnector_vDec2019.scala b/obp-api/src/main/scala/code/bankconnectors/storedprocedure/StoredProcedureConnector_vDec2019.scala index 7ef71b169..0cdfb49e9 100644 --- a/obp-api/src/main/scala/code/bankconnectors/storedprocedure/StoredProcedureConnector_vDec2019.scala +++ b/obp-api/src/main/scala/code/bankconnectors/storedprocedure/StoredProcedureConnector_vDec2019.scala @@ -75,7 +75,7 @@ trait StoredProcedureConnector_vDec2019 extends Connector with MdcLoggable { val connectorName = "stored_procedure_vDec2019" //---------------- dynamic start -------------------please don't modify this line -// ---------- created on 2024-09-13T09:50:02Z +// ---------- created on 2024-09-20T12:17:12Z messageDocs += getAdapterInfoDoc def getAdapterInfoDoc = MessageDoc( @@ -2508,8 +2508,7 @@ trait StoredProcedureConnector_vDec2019 extends Connector with MdcLoggable { documentNumber=Some(documentNumberExample.value), amount=Some(amountExample.value), currency=Some(currencyExample.value), - description=Some(descriptionExample.value)))) - ) + description=Some(descriptionExample.value))))) ), exampleInboundMessage = ( InBoundCreateTransactionRequestv400(inboundAdapterCallContext=MessageDocsSwaggerDefinitions.inboundAdapterCallContext, @@ -2604,6 +2603,141 @@ trait StoredProcedureConnector_vDec2019 extends Connector with MdcLoggable { response.map(convertToTuple[TransactionRequest](callContext)) } + messageDocs += createTransactionRequestSepaCreditTransfersBGV1Doc + def createTransactionRequestSepaCreditTransfersBGV1Doc = MessageDoc( + process = "obp.createTransactionRequestSepaCreditTransfersBGV1", + messageFormat = messageFormat, + description = "Create Transaction Request Sepa Credit Transfers BG V1", + outboundTopic = None, + inboundTopic = None, + exampleOutboundMessage = ( + OutBoundCreateTransactionRequestSepaCreditTransfersBGV1(outboundAdapterCallContext=MessageDocsSwaggerDefinitions.outboundAdapterCallContext, + initiator= UserCommons(userPrimaryKey=UserPrimaryKey(123), + userId=userIdExample.value, + idGivenByProvider="string", + provider=providerExample.value, + emailAddress=emailAddressExample.value, + name=userNameExample.value, + createdByConsentId=Some("string"), + createdByUserInvitationId=Some("string"), + isDeleted=Some(true), + lastMarketingAgreementSignedDate=Some(toDate(dateExample))), + paymentServiceType=com.openbankproject.commons.model.enums.PaymentServiceTypes.example, + transactionRequestType=com.openbankproject.commons.model.enums.TransactionRequestTypes.example, + transactionRequestBody= SepaCreditTransfersBerlinGroupV13(endToEndIdentification=Some("string"), + instructionIdentification=Some("string"), + debtorName=Some("string"), + debtorAccount=PaymentAccount("string"), + debtorId=Some("string"), + ultimateDebtor=Some("string"), + instructedAmount= AmountOfMoneyJsonV121(currency=currencyExample.value, + amount=amountExample.value), + currencyOfTransfer=Some("string"), + exchangeRateInformation=Some("string"), + creditorAccount=PaymentAccount("string"), + creditorAgent=Some("string"), + creditorAgentName=Some("string"), + creditorName="string", + creditorId=Some("string"), + creditorAddress=Some("string"), + creditorNameAndAddress=Some("string"), + ultimateCreditor=Some("string"), + purposeCode=Some("string"), + chargeBearer=Some("string"), + serviceLevel=Some("string"), + remittanceInformationUnstructured=Some("string"), + remittanceInformationUnstructuredArray=Some("string"), + remittanceInformationStructured=Some("string"), + remittanceInformationStructuredArray=Some("string"), + requestedExecutionDate=Some("string"), + requestedExecutionTime=Some("string"))) + ), + exampleInboundMessage = ( + InBoundCreateTransactionRequestSepaCreditTransfersBGV1(inboundAdapterCallContext=MessageDocsSwaggerDefinitions.inboundAdapterCallContext, + status=MessageDocsSwaggerDefinitions.inboundStatus, + data= TransactionRequestBGV1(id=TransactionRequestId(idExample.value), + status=statusExample.value)) + ), + adapterImplementation = Some(AdapterImplementation("- Core", 1)) + ) + + override def createTransactionRequestSepaCreditTransfersBGV1(initiator: User, paymentServiceType: PaymentServiceTypes, transactionRequestType: TransactionRequestTypes, transactionRequestBody: SepaCreditTransfersBerlinGroupV13, callContext: Option[CallContext]): OBPReturnType[Box[TransactionRequestBGV1]] = { + import com.openbankproject.commons.dto.{InBoundCreateTransactionRequestSepaCreditTransfersBGV1 => InBound, OutBoundCreateTransactionRequestSepaCreditTransfersBGV1 => OutBound} + val req = OutBound(callContext.map(_.toOutboundAdapterCallContext).orNull, initiator, paymentServiceType, transactionRequestType, transactionRequestBody) + val response: Future[Box[InBound]] = sendRequest[InBound]("obp_create_transaction_request_sepa_credit_transfers_bgv1", req, callContext) + response.map(convertToTuple[TransactionRequestBGV1](callContext)) + } + + messageDocs += createTransactionRequestPeriodicSepaCreditTransfersBGV1Doc + def createTransactionRequestPeriodicSepaCreditTransfersBGV1Doc = MessageDoc( + process = "obp.createTransactionRequestPeriodicSepaCreditTransfersBGV1", + messageFormat = messageFormat, + description = "Create Transaction Request Periodic Sepa Credit Transfers BG V1", + outboundTopic = None, + inboundTopic = None, + exampleOutboundMessage = ( + OutBoundCreateTransactionRequestPeriodicSepaCreditTransfersBGV1(outboundAdapterCallContext=MessageDocsSwaggerDefinitions.outboundAdapterCallContext, + initiator= UserCommons(userPrimaryKey=UserPrimaryKey(123), + userId=userIdExample.value, + idGivenByProvider="string", + provider=providerExample.value, + emailAddress=emailAddressExample.value, + name=userNameExample.value, + createdByConsentId=Some("string"), + createdByUserInvitationId=Some("string"), + isDeleted=Some(true), + lastMarketingAgreementSignedDate=Some(toDate(dateExample))), + paymentServiceType=com.openbankproject.commons.model.enums.PaymentServiceTypes.example, + transactionRequestType=com.openbankproject.commons.model.enums.TransactionRequestTypes.example, + transactionRequestBody= PeriodicSepaCreditTransfersBerlinGroupV13(endToEndIdentification=Some("string"), + instructionIdentification=Some("string"), + debtorName=Some("string"), + debtorAccount=PaymentAccount("string"), + debtorId=Some("string"), + ultimateDebtor=Some("string"), + instructedAmount= AmountOfMoneyJsonV121(currency=currencyExample.value, + amount=amountExample.value), + currencyOfTransfer=Some("string"), + exchangeRateInformation=Some("string"), + creditorAccount=PaymentAccount("string"), + creditorAgent=Some("string"), + creditorAgentName=Some("string"), + creditorName="string", + creditorId=Some("string"), + creditorAddress=Some("string"), + creditorNameAndAddress=Some("string"), + ultimateCreditor=Some("string"), + purposeCode=Some("string"), + chargeBearer=Some("string"), + serviceLevel=Some("string"), + remittanceInformationUnstructured=Some("string"), + remittanceInformationUnstructuredArray=Some("string"), + remittanceInformationStructured=Some("string"), + remittanceInformationStructuredArray=Some("string"), + requestedExecutionDate=Some("string"), + requestedExecutionTime=Some("string"), + startDate=startDateExample.value, + executionRule=Some("string"), + endDate=Some(endDateExample.value), + frequency=frequencyExample.value, + dayOfExecution=Some("string"))) + ), + exampleInboundMessage = ( + InBoundCreateTransactionRequestPeriodicSepaCreditTransfersBGV1(inboundAdapterCallContext=MessageDocsSwaggerDefinitions.inboundAdapterCallContext, + status=MessageDocsSwaggerDefinitions.inboundStatus, + data= TransactionRequestBGV1(id=TransactionRequestId(idExample.value), + status=statusExample.value)) + ), + adapterImplementation = Some(AdapterImplementation("- Core", 1)) + ) + + override def createTransactionRequestPeriodicSepaCreditTransfersBGV1(initiator: User, paymentServiceType: PaymentServiceTypes, transactionRequestType: TransactionRequestTypes, transactionRequestBody: PeriodicSepaCreditTransfersBerlinGroupV13, callContext: Option[CallContext]): OBPReturnType[Box[TransactionRequestBGV1]] = { + import com.openbankproject.commons.dto.{InBoundCreateTransactionRequestPeriodicSepaCreditTransfersBGV1 => InBound, OutBoundCreateTransactionRequestPeriodicSepaCreditTransfersBGV1 => OutBound} + val req = OutBound(callContext.map(_.toOutboundAdapterCallContext).orNull, initiator, paymentServiceType, transactionRequestType, transactionRequestBody) + val response: Future[Box[InBound]] = sendRequest[InBound]("obp_create_transaction_request_periodic_sepa_credit_transfers_bgv1", req, callContext) + response.map(convertToTuple[TransactionRequestBGV1](callContext)) + } + messageDocs += getTransactionRequests210Doc def getTransactionRequests210Doc = MessageDoc( process = "obp.getTransactionRequests210", @@ -6794,8 +6928,8 @@ trait StoredProcedureConnector_vDec2019 extends Connector with MdcLoggable { response.map(convertToTuple[Boolean](callContext)) } -// ---------- created on 2024-09-13T09:50:02Z -//---------------- dynamic end ---------------------please don't modify this line +// ---------- created on 2024-09-20T12:17:12Z +//---------------- dynamic end ---------------------please don't modify this line private val availableOperation = DynamicEntityOperation.values.map(it => s""""$it"""").mkString("[", ", ", "]") diff --git a/obp-api/src/main/scala/code/transactionrequests/MappedTransactionRequestProvider.scala b/obp-api/src/main/scala/code/transactionrequests/MappedTransactionRequestProvider.scala index 262f19e98..3c7b17809 100644 --- a/obp-api/src/main/scala/code/transactionrequests/MappedTransactionRequestProvider.scala +++ b/obp-api/src/main/scala/code/transactionrequests/MappedTransactionRequestProvider.scala @@ -5,10 +5,12 @@ import code.api.util.CustomJsonFormats import code.api.util.ErrorMessages._ import code.bankconnectors.Connector import code.model._ -import code.transactionrequests.TransactionRequests.{TransactionRequestTypes, _} import code.util.{AccountIdString, UUIDString} import com.openbankproject.commons.model._ import com.openbankproject.commons.model.enums.{AccountRoutingScheme, TransactionRequestStatus} +import com.openbankproject.commons.model.enums.TransactionRequestTypes +import com.openbankproject.commons.model.enums.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.PaymentServiceTypes._ import net.liftweb.common.{Box, Failure, Full, Logger} import net.liftweb.json import net.liftweb.json.JsonAST.{JField, JObject, JString} diff --git a/obp-api/src/main/scala/code/transactionrequests/TransactionRequests.scala b/obp-api/src/main/scala/code/transactionrequests/TransactionRequests.scala index 16a673678..80f4766d8 100644 --- a/obp-api/src/main/scala/code/transactionrequests/TransactionRequests.scala +++ b/obp-api/src/main/scala/code/transactionrequests/TransactionRequests.scala @@ -7,20 +7,6 @@ import net.liftweb.common.{Box, Logger} import net.liftweb.util.SimpleInjector object TransactionRequests extends SimpleInjector { - - //These are berlin Group Standard - object PaymentServiceTypes extends Enumeration { - type PaymentServiceTypes = Value - val payments, bulk_payments, periodic_payments = Value - } - - object TransactionRequestTypes extends Enumeration { - type TransactionRequestTypes = Value - val SANDBOX_TAN, ACCOUNT, ACCOUNT_OTP, COUNTERPARTY, SEPA, FREE_FORM, SIMPLE, CARD, - TRANSFER_TO_PHONE, TRANSFER_TO_ATM, TRANSFER_TO_ACCOUNT, TRANSFER_TO_REFERENCE_ACCOUNT, - //The following are BerlinGroup Standard - SEPA_CREDIT_TRANSFERS, INSTANT_SEPA_CREDIT_TRANSFERS, TARGET_2_PAYMENTS, CROSS_BORDER_CREDIT_TRANSFERS, REFUND = Value - } def updatestatus(newStatus: String) = {} diff --git a/obp-api/src/test/scala/code/api/berlin/group/v1_3/PaymentInitiationServicePISApiTest.scala b/obp-api/src/test/scala/code/api/berlin/group/v1_3/PaymentInitiationServicePISApiTest.scala index 277b9e742..e9385aed7 100644 --- a/obp-api/src/test/scala/code/api/berlin/group/v1_3/PaymentInitiationServicePISApiTest.scala +++ b/obp-api/src/test/scala/code/api/berlin/group/v1_3/PaymentInitiationServicePISApiTest.scala @@ -12,7 +12,10 @@ import code.api.util.APIUtil.extractErrorMessageCode import code.api.util.ErrorMessages.{AuthorisationNotFound, InvalidJsonFormat, NotPositiveAmount, _} import code.model.dataAccess.{BankAccountRouting, MappedBankAccount} import code.setup.{APIResponse, DefaultUsers} -import code.transactionrequests.TransactionRequests.{PaymentServiceTypes, TransactionRequestTypes} +import com.openbankproject.commons.model.enums.TransactionRequestTypes +import com.openbankproject.commons.model.enums.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.PaymentServiceTypes +import com.openbankproject.commons.model.enums.PaymentServiceTypes._ import code.views.Views import com.github.dwickern.macros.NameOf.nameOf import com.openbankproject.commons.model.enums.AccountRoutingScheme diff --git a/obp-api/src/test/scala/code/api/v1_4_0/TransactionRequestsTest.scala b/obp-api/src/test/scala/code/api/v1_4_0/TransactionRequestsTest.scala index 9ab5301ec..e9d52ec6a 100644 --- a/obp-api/src/test/scala/code/api/v1_4_0/TransactionRequestsTest.scala +++ b/obp-api/src/test/scala/code/api/v1_4_0/TransactionRequestsTest.scala @@ -7,13 +7,15 @@ import com.openbankproject.commons.model.AmountOfMoneyJsonV121 import code.api.v1_4_0.JSONFactory1_4_0._ import code.bankconnectors.Connector import code.setup.DefaultUsers -import code.transactionrequests.TransactionRequests.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.TransactionRequestTypes import com.openbankproject.commons.model.enums.{ChallengeType, TransactionRequestStatus} import net.liftweb.json.JsonAST.JString import net.liftweb.json.Serialization.write import org.scalatest.Tag import code.api.util.ErrorMessages._ import code.model.BankAccountX +import com.openbankproject.commons.model.enums.TransactionRequestTypes.SANDBOX_TAN import com.openbankproject.commons.model.{AccountId, BankAccount, TransactionRequestId} import scala.collection.immutable.List diff --git a/obp-api/src/test/scala/code/api/v2_0_0/TransactionRequestsTest.scala b/obp-api/src/test/scala/code/api/v2_0_0/TransactionRequestsTest.scala index fd6a57369..de9644a92 100644 --- a/obp-api/src/test/scala/code/api/v2_0_0/TransactionRequestsTest.scala +++ b/obp-api/src/test/scala/code/api/v2_0_0/TransactionRequestsTest.scala @@ -10,7 +10,8 @@ import code.bankconnectors.Connector import code.fx.fx import code.setup.DefaultUsers import com.openbankproject.commons.model.enums.TransactionRequestStatus -import code.transactionrequests.TransactionRequests.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.TransactionRequestTypes import net.liftweb.json.JsonAST.JString import net.liftweb.json.Serialization.write import net.liftweb.util.Props diff --git a/obp-api/src/test/scala/code/api/v2_1_0/TransactionRequestsTest.scala b/obp-api/src/test/scala/code/api/v2_1_0/TransactionRequestsTest.scala index 4d2eae3a5..0466c4d13 100644 --- a/obp-api/src/test/scala/code/api/v2_1_0/TransactionRequestsTest.scala +++ b/obp-api/src/test/scala/code/api/v2_1_0/TransactionRequestsTest.scala @@ -17,7 +17,8 @@ import code.fx.fx import code.model.BankAccountX import code.setup.{APIResponse, DefaultUsers} import com.openbankproject.commons.model.enums.TransactionRequestStatus -import code.transactionrequests.TransactionRequests.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.TransactionRequestTypes import com.openbankproject.commons.model.{AccountId, BankAccount, TransactionRequestId} import net.liftweb.json.Serialization.write import org.scalatest.Tag diff --git a/obp-api/src/test/scala/code/api/v4_0_0/TransactionRequestsTest.scala b/obp-api/src/test/scala/code/api/v4_0_0/TransactionRequestsTest.scala index 7a09a0a2d..7dde15ebb 100644 --- a/obp-api/src/test/scala/code/api/v4_0_0/TransactionRequestsTest.scala +++ b/obp-api/src/test/scala/code/api/v4_0_0/TransactionRequestsTest.scala @@ -22,7 +22,8 @@ import code.fx.fx import code.model.BankAccountX import code.setup.{APIResponse, DefaultUsers} import com.openbankproject.commons.model.enums.TransactionRequestStatus -import code.transactionrequests.TransactionRequests.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.TransactionRequestTypes._ +import com.openbankproject.commons.model.enums.TransactionRequestTypes import com.github.dwickern.macros.NameOf.nameOf import com.openbankproject.commons.model._ import com.openbankproject.commons.util.ApiVersion diff --git a/obp-api/src/test/scala/code/connector/RestConnector_vMar2019_frozen_meta_data b/obp-api/src/test/scala/code/connector/RestConnector_vMar2019_frozen_meta_data index 25923a7f9..e5c023717 100644 Binary files a/obp-api/src/test/scala/code/connector/RestConnector_vMar2019_frozen_meta_data and b/obp-api/src/test/scala/code/connector/RestConnector_vMar2019_frozen_meta_data differ diff --git a/obp-commons/src/main/scala/com/openbankproject/commons/dto/JsonsTransfer.scala b/obp-commons/src/main/scala/com/openbankproject/commons/dto/JsonsTransfer.scala index 9599f00f0..cff2c084d 100644 --- a/obp-commons/src/main/scala/com/openbankproject/commons/dto/JsonsTransfer.scala +++ b/obp-commons/src/main/scala/com/openbankproject/commons/dto/JsonsTransfer.scala @@ -27,7 +27,7 @@ TESOBE (http://www.tesobe.com/) package com.openbankproject.commons.dto import java.util.Date -import com.openbankproject.commons.model.enums.{CardAttributeType, ChallengeType, CustomerAttributeType, DynamicEntityOperation, StrongCustomerAuthentication, SuppliedAnswerType, TransactionAttributeType, TransactionRequestStatus} +import com.openbankproject.commons.model.enums.{CardAttributeType, ChallengeType, CustomerAttributeType, DynamicEntityOperation, PaymentServiceTypes, StrongCustomerAuthentication, SuppliedAnswerType, TransactionAttributeType, TransactionRequestStatus, TransactionRequestTypes} import com.openbankproject.commons.model.enums.StrongCustomerAuthentication.SCA import com.openbankproject.commons.model.enums.StrongCustomerAuthenticationStatus.SCAStatus import com.openbankproject.commons.model.enums.SuppliedAnswerType @@ -1105,6 +1105,24 @@ case class OutBoundCreateTransactionRequestv400(outboundAdapterCallContext: Outb ) extends TopicTrait case class InBoundCreateTransactionRequestv400(inboundAdapterCallContext: InboundAdapterCallContext, status: Status, data: TransactionRequest) extends InBoundTrait[TransactionRequest] +case class OutBoundCreateTransactionRequestSepaCreditTransfersBGV1( + outboundAdapterCallContext: OutboundAdapterCallContext, initiator: User, + paymentServiceType: PaymentServiceTypes.Value, + transactionRequestType: TransactionRequestTypes.Value, + transactionRequestBody: SepaCreditTransfersBerlinGroupV13, +) extends TopicTrait + +case class InBoundCreateTransactionRequestSepaCreditTransfersBGV1 (inboundAdapterCallContext: InboundAdapterCallContext, status: Status, data: TransactionRequestBGV1) extends InBoundTrait[TransactionRequestBGV1] + +case class OutBoundCreateTransactionRequestPeriodicSepaCreditTransfersBGV1( + outboundAdapterCallContext: OutboundAdapterCallContext, initiator: User, + paymentServiceType: PaymentServiceTypes.Value, + transactionRequestType: TransactionRequestTypes.Value, + transactionRequestBody: PeriodicSepaCreditTransfersBerlinGroupV13, +) extends TopicTrait + +case class InBoundCreateTransactionRequestPeriodicSepaCreditTransfersBGV1(inboundAdapterCallContext: InboundAdapterCallContext, status: Status, data: TransactionRequestBGV1) extends InBoundTrait[TransactionRequestBGV1] + case class OutBoundCreateTransactionRequestImpl(transactionRequestId: TransactionRequestId, transactionRequestType: TransactionRequestType, fromAccount: BankAccount, counterparty: BankAccount, body: TransactionRequestBody, status: String, charge: TransactionRequestCharge) extends TopicTrait case class InBoundCreateTransactionRequestImpl(status: Status, data: TransactionRequest) extends InBoundTrait[TransactionRequest] { override val inboundAdapterCallContext: InboundAdapterCallContext = InboundAdapterCallContext() diff --git a/obp-commons/src/main/scala/com/openbankproject/commons/model/enums/Enumerations.scala b/obp-commons/src/main/scala/com/openbankproject/commons/model/enums/Enumerations.scala index 38a604467..e65d502d3 100644 --- a/obp-commons/src/main/scala/com/openbankproject/commons/model/enums/Enumerations.scala +++ b/obp-commons/src/main/scala/com/openbankproject/commons/model/enums/Enumerations.scala @@ -79,6 +79,34 @@ object TransactionRequestAttributeType extends OBPEnumeration[TransactionReques } //------api enumerations ---- +sealed trait PaymentServiceTypes extends EnumValue +object PaymentServiceTypes extends OBPEnumeration[PaymentServiceTypes]{ + object payments extends Value + object bulk_payments extends Value + object periodic_payments extends Value +} + +sealed trait TransactionRequestTypes extends EnumValue +object TransactionRequestTypes extends OBPEnumeration[TransactionRequestTypes]{ + object SANDBOX_TAN extends Value + object ACCOUNT extends Value + object ACCOUNT_OTP extends Value + object COUNTERPARTY extends Value + object SEPA extends Value + object FREE_FORM extends Value + object SIMPLE extends Value + object CARD extends Value + object TRANSFER_TO_PHONE extends Value + object TRANSFER_TO_ATM extends Value + object TRANSFER_TO_ACCOUNT extends Value + object TRANSFER_TO_REFERENCE_ACCOUNT extends Value + object SEPA_CREDIT_TRANSFERS extends Value + object INSTANT_SEPA_CREDIT_TRANSFERS extends Value + object TARGET_2_PAYMENTS extends Value + object CROSS_BORDER_CREDIT_TRANSFERS extends Value + object REFUND extends Value +} + sealed trait StrongCustomerAuthentication extends EnumValue object StrongCustomerAuthentication extends OBPEnumeration[StrongCustomerAuthentication] { type SCA = Value