mirror of
https://github.com/OpenBankProject/OBP-API.git
synced 2026-02-06 18:46:46 +00:00
tweaking the error message for payments
This commit is contained in:
parent
5840e43f8f
commit
5eb48afd89
@ -323,20 +323,21 @@ val dateformat = new java.text.SimpleDateFormat("yyyy-MM-dd")
|
||||
val InvalidConnectorResponseForGetChallengeThreshold = "OBP-50206: Connector did not return the set of challenge threshold we requested."
|
||||
val InvalidConnectorResponseForGetChargeLevel = "OBP-50207: Connector did not return the set of challenge level we requested."
|
||||
val InvalidConnectorResponseForCreateTransactionRequestImpl210 = "OBP-50208: Connector did not return the set of transactions requests we requested."
|
||||
val InvalidConnectorResponseForMakePaymentImpl = "OBP-50209: Connector did not return the set of transactions we requested."
|
||||
val InvalidConnectorResponseForMakePayment = "OBP-50209: Connector did not return the set of transactions we requested."
|
||||
val InvalidConnectorResponseForMakePaymentv200 = "OBP-50210: Connector did not return the set of transaction id we requested."
|
||||
|
||||
|
||||
// Adapter Exceptions (OBP-6XXXX)
|
||||
// Reserved for adapter (south of Kafka) messages
|
||||
// Also used for connector == mapped, and show it as the Internal errors.
|
||||
val GetStatusException = "INTERNAL-OBP-60001: Save Transaction Exception. "
|
||||
val GetChargeValueException = "INTERNAL-OBP-60002: Get ChargeValue Exception. "
|
||||
val CreateTransactionsException = "INTERNAL-OBP-60003: Create transaction Exception. "
|
||||
val UpdateBankAccountException = "INTERNAL-OBP-60004: Update bank account Exception. "
|
||||
val SaveTransactionRequestTransactionException = "INTERNAL-OBP-60005: Save Transaction Request Transaction Exception. "
|
||||
val SaveTransactionRequestChallengeException = "INTERNAL-OBP-60006: Save Transaction Request Challenge Exception. "
|
||||
val SaveTransactionRequestStatusException = "INTERNAL-OBP-60007: Save Transaction Request Status Exception. "
|
||||
val GetStatusException = "OBP-60001: Save Transaction Exception. "
|
||||
val GetChargeValueException = "OBP-60002: Get ChargeValue Exception. "
|
||||
val CreateTransactionsException = "OBP-60003: Create transaction Exception. "
|
||||
val UpdateBankAccountException = "OBP-60004: Update bank account Exception. "
|
||||
val SaveTransactionRequestTransactionException = "OBP-60005: Save Transaction Request Transaction Exception. "
|
||||
val SaveTransactionRequestChallengeException = "OBP-60006: Save Transaction Request Challenge Exception. "
|
||||
val SaveTransactionRequestStatusException = "OBP-60007: Save Transaction Request Status Exception. "
|
||||
val TransactionRequestDetailsExtractException = "OBP-60008: Transaction detail body extract exception. "
|
||||
|
||||
|
||||
///////////
|
||||
|
||||
@ -1319,7 +1319,7 @@ trait APIMethods200 {
|
||||
answerJson <- tryo{json.extract[ChallengeAnswerJSON]} ?~! InvalidJsonFormat
|
||||
answerOk <- Connector.connector.vend.answerTransactionRequestChallenge(transReqId, answerJson.answer)
|
||||
//check the transReqId validation.
|
||||
existingTransactionRequest <- Connector.connector.vend.getTransactionRequestImpl(transReqId) ?~! {ErrorMessages.InvalidTransactionRequestId}
|
||||
existingTransactionRequest <- Connector.connector.vend.getTransactionRequestImpl(transReqId) ?~! s"${ErrorMessages.InvalidTransactionRequestId} : $transReqId"
|
||||
|
||||
//check the input transactionRequestType is same as when the user create the existingTransactionRequest
|
||||
existingTransactionRequestType <- Full(existingTransactionRequest.`type`)
|
||||
|
||||
@ -602,7 +602,7 @@ trait APIMethods210 {
|
||||
view <- tryo(fromAccount.permittedViews(user).find(_ == viewId)) ?~ {UserNoPermissionAccessView}
|
||||
|
||||
// Check transReqId is valid
|
||||
existingTransactionRequest <- Connector.connector.vend.getTransactionRequestImpl(transReqId) ?~! {InvalidTransactionRequestId}
|
||||
existingTransactionRequest <- Connector.connector.vend.getTransactionRequestImpl(transReqId) ?~! s"${InvalidTransactionRequestId} : $transReqId"
|
||||
|
||||
// Check the Transaction Request is still INITIATED
|
||||
isTransReqStatueInitiated <- booleanToBox(existingTransactionRequest.status.equals("INITIATED"),TransactionRequestStatusNotInitiated)
|
||||
|
||||
@ -388,7 +388,7 @@ trait Connector extends MdcLoggable{
|
||||
transactionRequestType: TransactionRequestType,
|
||||
chargePolicy: String): Box[TransactionId] = {
|
||||
for {
|
||||
transactionId <- makePaymentImpl(fromAccount, toAccount, transactionRequestCommonBody, amount, description, transactionRequestType, chargePolicy) ?~! InvalidConnectorResponseForMakePaymentImpl
|
||||
transactionId <- makePaymentImpl(fromAccount, toAccount, transactionRequestCommonBody, amount, description, transactionRequestType, chargePolicy) ?~! InvalidConnectorResponseForMakePayment
|
||||
} yield transactionId
|
||||
}
|
||||
|
||||
@ -794,7 +794,7 @@ trait Connector extends MdcLoggable{
|
||||
//It is only used for V140 and V200, has been deprecated from V210.
|
||||
@deprecated
|
||||
def answerTransactionRequestChallenge(transReqId: TransactionRequestId, answer: String) : Box[Boolean] = {
|
||||
val tr = getTransactionRequestImpl(transReqId) ?~ s"${ErrorMessages.InvalidTransactionRequestId} : $transReqId"
|
||||
val tr = getTransactionRequestImpl(transReqId) ?~! s"${ErrorMessages.InvalidTransactionRequestId} : $transReqId"
|
||||
|
||||
tr match {
|
||||
case Full(tr: TransactionRequest) =>
|
||||
@ -823,13 +823,13 @@ trait Connector extends MdcLoggable{
|
||||
|
||||
def createTransactionAfterChallenge(initiator: User, transReqId: TransactionRequestId) : Box[TransactionRequest] = {
|
||||
for {
|
||||
tr <- getTransactionRequestImpl(transReqId) ?~ "Transaction Request not found"
|
||||
tr <- getTransactionRequestImpl(transReqId) ?~! s"${ErrorMessages.InvalidTransactionRequestId} : $transReqId"
|
||||
transId <- makePayment(initiator, BankIdAccountId(BankId(tr.from.bank_id), AccountId(tr.from.account_id)),
|
||||
BankIdAccountId (BankId(tr.body.to.bank_id), AccountId(tr.body.to.account_id)), BigDecimal (tr.body.value.amount), tr.body.description, TransactionRequestType(tr.`type`)) ?~ "Couldn't create Transaction"
|
||||
BankIdAccountId (BankId(tr.body.to.bank_id), AccountId(tr.body.to.account_id)), BigDecimal (tr.body.value.amount), tr.body.description, TransactionRequestType(tr.`type`)) ?~! InvalidConnectorResponseForMakePayment
|
||||
didSaveTransId <- saveTransactionRequestTransaction(transReqId, transId)
|
||||
didSaveStatus <- saveTransactionRequestStatusImpl(transReqId, TransactionRequestStatus.COMPLETED.toString)
|
||||
//get transaction request again now with updated values
|
||||
tr <- getTransactionRequestImpl(transReqId)
|
||||
tr <- getTransactionRequestImpl(transReqId)?~! s"${ErrorMessages.InvalidTransactionRequestId} : $transReqId"
|
||||
} yield {
|
||||
tr
|
||||
}
|
||||
@ -846,7 +846,7 @@ trait Connector extends MdcLoggable{
|
||||
transactionRequest.body.description,
|
||||
TransactionRequestType(transactionRequest.`type`),
|
||||
"" //Note chargePolicy started to use from V210
|
||||
) ?~ "Couldn't create Transaction"
|
||||
) ?~! InvalidConnectorResponseForMakePayment
|
||||
didSaveTransId <- saveTransactionRequestTransaction(transRequestId, transactionId)
|
||||
didSaveStatus <- saveTransactionRequestStatusImpl(transRequestId, TransactionRequestStatus.COMPLETED.toString)
|
||||
|
||||
@ -866,18 +866,13 @@ trait Connector extends MdcLoggable{
|
||||
//Note, it should be four different type of details in mappedtransactionrequest.
|
||||
//But when we design "createTransactionRequest", we try to make it the same as SandBoxTan. There is still some different now.
|
||||
// Take a look at TransactionRequestDetailsMapperJSON, TransactionRequestDetailsMapperCounterpartyJSON, TransactionRequestDetailsMapperSEPAJSON and TransactionRequestDetailsMapperFreeFormJSON
|
||||
detailsJsonExtract <- tryo{details.extract[TransactionRequestDetailsMapperJSON]} ?~! s"create transaction detail body, can not extract to $TransactionRequestDetailsMapperJSON "
|
||||
|
||||
|
||||
detailsJsonExtract <- tryo{details.extract[TransactionRequestDetailsMapperJSON]} ?~! s"$TransactionRequestDetailsExtractException It can not extract to $TransactionRequestDetailsMapperJSON "
|
||||
|
||||
valueAmount = detailsJsonExtract.value.amount
|
||||
|
||||
description = detailsJsonExtract.description
|
||||
|
||||
|
||||
// Note for 'toCounterparty' in the following :
|
||||
// We update the makePaymentImpl in V210, added the new parameter 'toCounterparty: CounterpartyTrait' for V210
|
||||
// And it only used for COUNTERPARTY.toString and SEPA.toString ,other types keep it empty now.
|
||||
toAccount <- TransactionRequestTypes.withName(transactionRequestType) match {
|
||||
case COUNTERPARTY | SEPA =>
|
||||
for{
|
||||
@ -906,12 +901,12 @@ trait Connector extends MdcLoggable{
|
||||
description,
|
||||
TransactionRequestType(transactionRequestType),
|
||||
transactionRequest.charge_policy
|
||||
) ?~ "Couldn't create Transaction"
|
||||
) ?~! InvalidConnectorResponseForMakePayment
|
||||
|
||||
didSaveTransId <- saveTransactionRequestTransaction(transactionRequestId, transactionId)
|
||||
didSaveStatus <- saveTransactionRequestStatusImpl(transactionRequestId, TransactionRequestStatus.COMPLETED.toString)
|
||||
//After `makePaymentv200` and update data for request, we get the new requqest from database again.
|
||||
transactionReques <- Connector.connector.vend.getTransactionRequestImpl(transactionRequestId) ?~! s"get new Transaction problem..."
|
||||
transactionReques <- Connector.connector.vend.getTransactionRequestImpl(transactionRequestId) ?~! s"${ErrorMessages.InvalidTransactionRequestId} : $transactionRequestId. Get updated transaction exeception."
|
||||
|
||||
} yield {
|
||||
transactionReques
|
||||
|
||||
Loading…
Reference in New Issue
Block a user