diff --git a/obp-api/pom.xml b/obp-api/pom.xml
index e8e167401..9dd2f2323 100644
--- a/obp-api/pom.xml
+++ b/obp-api/pom.xml
@@ -8,7 +8,7 @@
com.tesobe
obp-parent
../pom.xml
- 1.6.2
+ 1.6.3
obp-api
war
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 ab82ef11e..481aae679 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
@@ -37,7 +37,7 @@ import code.metadata.tags.Tags
import code.model.dataAccess.{AuthUser, BankAccountCreation}
import code.model.{toUserExtended, _}
import code.transactionChallenge.MappedExpectedChallengeAnswer
-import code.transactionrequests.{MappedTransactionRequestProvider, TransactionRequestReasons}
+import code.transactionrequests.MappedTransactionRequestProvider
import code.transactionrequests.TransactionRequests.TransactionChallengeTypes._
import code.transactionrequests.TransactionRequests.TransactionRequestTypes
import code.transactionrequests.TransactionRequests.TransactionRequestTypes.{apply => _, _}
@@ -671,20 +671,7 @@ trait APIMethods400 {
getScaMethodAtInstance(transactionRequestType.value).toOption,
transDetailsSEPAJson.reasons,
callContext)
- } yield {
- for (reason <- transDetailsSEPAJson.reasons.getOrElse(Nil)) {
- TransactionRequestReasons
- .create
- .TransactionRequestId(createdTransactionRequest.id.value)
- .Amount(reason.amount.getOrElse(""))
- .Code(reason.code)
- .Currency(reason.currency.getOrElse(""))
- .DocumentNumber(reason.documentNumber.getOrElse(""))
- .Description(reason.description.getOrElse(""))
- .save()
- }
- (createdTransactionRequest, callContext)
- }
+ } yield (createdTransactionRequest, callContext)
}
case FREE_FORM => {
for {
diff --git a/obp-api/src/main/scala/code/bankconnectors/LocalMappedConnector.scala b/obp-api/src/main/scala/code/bankconnectors/LocalMappedConnector.scala
index 62102daeb..b7b8833b8 100644
--- a/obp-api/src/main/scala/code/bankconnectors/LocalMappedConnector.scala
+++ b/obp-api/src/main/scala/code/bankconnectors/LocalMappedConnector.scala
@@ -3654,13 +3654,15 @@ object LocalMappedConnector extends Connector with MdcLoggable {
charge = TransactionRequestCharge("Total charges for completed transaction", AmountOfMoney(transactionRequestCommonBody.value.currency, chargeValue))
// Always create a new Transaction Request
transactionRequest <- Future {
- createTransactionRequestImpl210(TransactionRequestId(generateUUID()), transactionRequestType, fromAccount, toAccount, transactionRequestCommonBody, detailsPlain, status.toString, charge, chargePolicy)
+ val transactionRequest = createTransactionRequestImpl210(TransactionRequestId(generateUUID()), transactionRequestType, fromAccount, toAccount, transactionRequestCommonBody, detailsPlain, status.toString, charge, chargePolicy)
+ saveTransactionRequestReasons(reasons, transactionRequest)
+ transactionRequest
} map {
unboxFullOrFail(_, callContext, s"$InvalidConnectorResponseForCreateTransactionRequestImpl210")
}
// If no challenge necessary, create Transaction immediately and put in data store and object to return
- (transactionRequest, callConext) <- status match {
+ (transactionRequest, callContext) <- status match {
case TransactionRequestStatus.COMPLETED =>
for {
(createdTransactionId, callContext) <- NewStyle.function.makePaymentv210(
@@ -3745,6 +3747,20 @@ object LocalMappedConnector extends Connector with MdcLoggable {
}
}
+ private def saveTransactionRequestReasons(reasons: Option[List[TransactionRequestReason]], transactionRequest: Box[TransactionRequest]) = {
+ for (reason <- reasons.getOrElse(Nil)) {
+ TransactionRequestReasons
+ .create
+ .TransactionRequestId(transactionRequest.map(_.id.value).getOrElse(""))
+ .Amount(reason.amount.getOrElse(""))
+ .Code(reason.code)
+ .Currency(reason.currency.getOrElse(""))
+ .DocumentNumber(reason.documentNumber.getOrElse(""))
+ .Description(reason.description.getOrElse(""))
+ .save()
+ }
+ }
+
override def saveTransactionRequestTransaction(transactionRequestId: TransactionRequestId, transactionId: TransactionId) = {
//put connector agnostic logic here if necessary
saveTransactionRequestTransactionImpl(transactionRequestId, transactionId)
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 6974b9464..55b3548d7 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
@@ -74,7 +74,7 @@ trait StoredProcedureConnector_vDec2019 extends Connector with MdcLoggable {
val connectorName = "stored_procedure_vDec2019"
//---------------- dynamic start -------------------please don't modify this line
-// ---------- created on 2020-07-27T16:34:44Z
+// ---------- created on 2020-07-28T13:44:41Z
messageDocs += getAdapterInfoDoc
def getAdapterInfoDoc = MessageDoc(
@@ -1834,7 +1834,12 @@ trait StoredProcedureConnector_vDec2019 extends Connector with MdcLoggable {
detailsPlain="string",
chargePolicy="string",
challengeType=Some("string"),
- scaMethod=Some(com.openbankproject.commons.model.enums.StrongCustomerAuthentication.SMS))
+ scaMethod=Some(com.openbankproject.commons.model.enums.StrongCustomerAuthentication.SMS),
+ reasons=Some(List( TransactionRequestReason(code="string",
+ documentNumber=Some("string"),
+ amount=Some(amountExample.value),
+ currency=Some(currencyExample.value),
+ description=Some("string")))))
),
exampleInboundMessage = (
InBoundCreateTransactionRequestv400(inboundAdapterCallContext=MessageDocsSwaggerDefinitions.inboundAdapterCallContext,
@@ -1909,9 +1914,9 @@ trait StoredProcedureConnector_vDec2019 extends Connector with MdcLoggable {
adapterImplementation = Some(AdapterImplementation("- Core", 1))
)
- override def createTransactionRequestv400(initiator: User, viewId: ViewId, fromAccount: BankAccount, toAccount: BankAccount, transactionRequestType: TransactionRequestType, transactionRequestCommonBody: TransactionRequestCommonBodyJSON, detailsPlain: String, chargePolicy: String, challengeType: Option[String], scaMethod: Option[StrongCustomerAuthentication.SCA], callContext: Option[CallContext]): OBPReturnType[Box[TransactionRequest]] = {
+ override def createTransactionRequestv400(initiator: User, viewId: ViewId, fromAccount: BankAccount, toAccount: BankAccount, transactionRequestType: TransactionRequestType, transactionRequestCommonBody: TransactionRequestCommonBodyJSON, detailsPlain: String, chargePolicy: String, challengeType: Option[String], scaMethod: Option[StrongCustomerAuthentication.SCA], reasons: Option[List[TransactionRequestReason]], callContext: Option[CallContext]): OBPReturnType[Box[TransactionRequest]] = {
import com.openbankproject.commons.dto.{OutBoundCreateTransactionRequestv400 => OutBound, InBoundCreateTransactionRequestv400 => InBound}
- val req = OutBound(callContext.map(_.toOutboundAdapterCallContext).orNull, initiator, viewId, fromAccount, toAccount, transactionRequestType, transactionRequestCommonBody, detailsPlain, chargePolicy, challengeType, scaMethod)
+ val req = OutBound(callContext.map(_.toOutboundAdapterCallContext).orNull, initiator, viewId, fromAccount, toAccount, transactionRequestType, transactionRequestCommonBody, detailsPlain, chargePolicy, challengeType, scaMethod, reasons)
val response: Future[Box[InBound]] = sendRequest[InBound]("obp_create_transaction_requestv400", req, callContext)
response.map(convertToTuple[TransactionRequest](callContext))
}
@@ -5736,8 +5741,8 @@ trait StoredProcedureConnector_vDec2019 extends Connector with MdcLoggable {
response.map(convertToTuple[Boolean](callContext))
}
-// ---------- created on 2020-07-27T16:34:44Z
-//---------------- dynamic end ---------------------please don't modify this line
+// ---------- created on 2020-07-28T13:44:41Z
+//---------------- dynamic end ---------------------please don't modify this line
private val availableOperation = DynamicEntityOperation.values.map(it => s""""$it"""").mkString("[", ", ", "]")
diff --git a/obp-commons/pom.xml b/obp-commons/pom.xml
index d0034b61b..01f90fb07 100644
--- a/obp-commons/pom.xml
+++ b/obp-commons/pom.xml
@@ -7,7 +7,7 @@
com.tesobe
obp-parent
../pom.xml
- 1.6.2
+ 1.6.3
obp-commons
jar
diff --git a/pom.xml b/pom.xml
index 6914b59d7..d50991cdb 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
4.0.0
com.tesobe
obp-parent
- 1.6.2
+ 1.6.3
pom
Open Bank Project API Parent
2011