From 04671bba9f73e07b78f690177da56872669342e1 Mon Sep 17 00:00:00 2001 From: Adhidarma Hadiwinoto <gua@adhisimon.org> Date: Fri, 20 May 2016 18:43:29 +0700 Subject: [PATCH] pendingLimit --- partner-kospinjasa.js | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/partner-kospinjasa.js b/partner-kospinjasa.js index ef60701..1d2cf8f 100644 --- a/partner-kospinjasa.js +++ b/partner-kospinjasa.js @@ -21,7 +21,6 @@ var logger; var options; var mongodb; - function start(_config, _callbackReport, options) { config = _config; callbackReport = _callbackReport @@ -140,12 +139,29 @@ function isMongoReady() { } function topupRequest(task, retry) { - if (config && config.globals && config.globals.reject_on_pending_count && matrix && matrix.strikeStatus && matrix.strikeStatus.pending) { - if (parseInt(config.globals.reject_on_pending_count) <= matrix.strikeStatus.pending) { - callbackReport(task.requestId, '13', 'Reject trx karena pending terlalu banyak'); - return; + + try { + if (config && config.globals && config.globals.reject_on_pending_count && matrix && matrix.strikeStatus && matrix.strikeStatus.pending) { + + var pendingCount = matrix.strikeStatus.pending; + var pendingLimitCount = parseInt(config.globals.reject_on_pending_count); + + if (pendingLimitCount <= matrix.strikeStatus.pending) { + + logger.warn( + 'Reject trx karena pending terlalu banyak', + {pendingCount: pendingCount, pendingLimitCount: pendingLimitCount} + ); + + callbackReport(task.requestId, '13', 'Reject trx karena pending terlalu banyak'); + return; + } } } + catch(err) { + logger.warn("Exception saat periksa pendingLimit: " + err); + } + task.ts = moment(task.timestamp, 'YYYYMMDDHHmmss').format('YYYY-MM-DD HH:mm:ss'); task.ts_date = moment(task.timestamp, 'YYYYMMDDHHmmss').format('YYYY-MM-DD'); -- 1.9.0