From 9034f08637f063157e42cbf36032b8f4e1b9a0ee Mon Sep 17 00:00:00 2001 From: notdrone Date: Thu, 12 Apr 2018 18:10:01 +0530 Subject: [PATCH] Check for valid razorpay status in case where transaction has been approved by the reviewer but valid is still false #24 --- src/api/transaction-api.ts | 11 +++++++++-- src/helpers/color-helper.ts | 1 + 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/api/transaction-api.ts b/src/api/transaction-api.ts index 9b29cf1..0dc930b 100644 --- a/src/api/transaction-api.ts +++ b/src/api/transaction-api.ts @@ -34,6 +34,7 @@ export enum transactionActionEnum { } export enum nodalStatusEnum { + internalError = -2, noop = -1, notInitiated = 0, initiates = 1, @@ -110,7 +111,7 @@ export const getAllTransactionsAPI = ( mode: _.transaction_mode, nodal: { id: getNodalId(_), - status: getNodalStatus(_), + status: getNodalStatus(_, _.action_status), }, transactionDetails: _.eko_transactions.map(($: any) => ({ amount: $.amount, @@ -126,10 +127,16 @@ export const getAllTransactionsAPI = ( .catch(() => []) } -const getNodalStatus = (_: any) => { +const getNodalStatus = (_: any, actionStatus: transactionActionEnum) => { if (_.razorpay_payment_status.Valid) { return _.razorpay_payment_status.Int64 as nodalStatusEnum } + if ( + !_.razorpay_payment_status.Valid && + actionStatus === transactionActionEnum.approve + ) { + return nodalStatusEnum.internalError + } return nodalStatusEnum.noop } diff --git a/src/helpers/color-helper.ts b/src/helpers/color-helper.ts index cf2ebd8..7d0e631 100644 --- a/src/helpers/color-helper.ts +++ b/src/helpers/color-helper.ts @@ -61,6 +61,7 @@ export const getNodalTransactionColor = (status: nodalStatusEnum): string => { return positiveGreen case nodalStatusEnum.dispute: case nodalStatusEnum.failed: + case nodalStatusEnum.internalError: return alertRed case nodalStatusEnum.authorized: return identity