Exemplo n.º 1
0
        public ATM_IMPS_VAS_ResponseModel IMPS_Reversal(ATM_IMPS_VAS_RequestModel model)
        {
            var ResponseModel = new ATM_IMPS_VAS_ResponseModel();

            //IMPS Trans(in,out and intra)
            //Transaction_type : IMPS,VM
            //ProcessingCodeType  : 41-intra, 42-outward, 43-inward
            if (model.TransactionType == "45" || model.TransactionType == "32" || model.TransactionType == "48" || model.TransactionType == "34")
            {
                ResponseModel = DBobject.IMPS_Reversal(model);
                return(ResponseModel);
            }
            ////P2A IMPS Trans(in,out and intra)
            ////Transaction_type : 48-IMPS, 34-VM
            ////ProcessingCodeType  : 41-intra, 42-outward, 43-inward
            //else if ((model.TransactionType == "48" || model.TransactionType == "34") && (model.ProcesingCode == "41" || model.ProcesingCode == "42" || model.ProcesingCode == "43"))
            //{
            //    ResponseModel = DBobject.P2A_IMPS_Reversal(model);
            //    return ResponseModel;
            //}
            ////P2U IMPS Trans(in,out and intra)
            ////Transaction_type : -IMPS, -VM
            ////ProcessingCodeType  : -intra, -outward, -inward
            //else if (model.TransactionType == "" && model.ProcesingCode == "")
            //{
            //    ResponseModel = DBobject.P2U_IMPS_Reversal(model);
            //    return ResponseModel;
            //}
            ////VAS Trans(in,out and intra)
            ////Transaction_type : 94
            ////ProcessingCodeType  : 94
            //else if (model.TransactionType == "94" && model.ProcesingCode == "94")
            //{
            //    ResponseModel = DBobject.VAS_Reversal(model);
            //    return ResponseModel;
            //}
            //NEFT Trans(in,out and intra)
            //Transaction_type : 88
            //ProcessingCodeType  : 88
            else if (model.TransactionType == "88" && model.ProcesingCode == "88")
            {
                ResponseModel = DBobject.NEFT_Reversal(model);
                return(ResponseModel);
            }
            //RTGS Trans(in,out and intra)
            //Transaction_type : 89
            //ProcessingCodeType  : 89
            else if (model.TransactionType == "89" && model.ProcesingCode == "89")
            {
                ResponseModel = DBobject.RTGS_Reversal(model);
                return(ResponseModel);
            }

            return(ResponseModel);
        }
Exemplo n.º 2
0
        public ATM_IMPS_VAS_ResponseModel AcquirerCashWithdrawal(ATM_IMPS_VAS_RequestModel model)
        {
            var WithdrawalResponse = new ATM_IMPS_VAS_ResponseModel();

            try
            {
                var sql_string = "select sf_process_atm_acquirer_withdrawals('" + model.ProcesingCode + "','" + model.AtmCardNumber + "','" + model.PAN + "','" + model.Date + "','" + model.Amount + "','" + model.AccountType + "','" + model.TrackerID + "','" + model.AtmDetails + "') response_code";
                WithdrawalResponse.ResponseCode = mFields_obj.ResponseCode(Convert.ToString(db_select_operation(sql_string, "response_code")));
            }
            catch (Exception ex)
            {
                WithdrawalResponse.ResponseCode = "transaction rejected";
            }
            return(WithdrawalResponse);
        }
Exemplo n.º 3
0
        public ATM_IMPS_VAS_ResponseModel CashWithdrwalReverse(ATM_IMPS_VAS_RequestModel model)
        {
            var ReversalResponse = new ATM_IMPS_VAS_ResponseModel();

            try
            {
                sql_string = "select sf_process_ATMs_PoS_ecommerce_reversal('" + model.ProcesingCode + "','" + model.AtmCardNumber + "','" + model.PAN + "','" + model.Date + "','" + model.STAN + "','" + model.Amount + "' ,'" + model.OriginalData + "','" + model.TrackerID + "','" + model.AtmDetails + "') response_code";
                ReversalResponse.ResponseCode = mFields_obj.ResponseCode(Convert.ToString(db_select_operation(sql_string, "response_code")));
            }
            catch (Exception ex)
            {
                ReversalResponse.ResponseCode = mFields_obj.ResponseCode("transaction rejected");
            }
            return(ReversalResponse);
        }
Exemplo n.º 4
0
        public ATM_IMPS_VAS_ResponseModel Statement_IMPS(ATM_IMPS_VAS_RequestModel model)
        {
            ATM_IMPS_VAS_ResponseModel ResponseModel = new ATM_IMPS_VAS_ResponseModel();

            try
            {
                DataTable dt         = new DataTable();
                string    sql_string = "select sf_get_IMPS_statement('" + model.PAN + "','" + model.Date + "','" + model.FromDateStmt + "','" + model.ToDateStmt + "','" + model.FromAcNo + "','" + model.TrackerID + "') stmt_data";
                return_value = Convert.ToString(db_select_operation(sql_string, "stmt_data")).Split('*');
                ResponseModel.ResponseCode = mFields_obj.ResponseCode(return_value[0]);
            }
            catch (Exception ex)
            {
                return(null);
            }
            return(ResponseModel);
        }
        public ATM_IMPS_VAS_RequestModel SetRequestModel(string[] request)
        {
            ATM_IMPS_VAS_RequestModel reqObject = new ATM_IMPS_VAS_RequestModel();

            reqObject.MessageType          = request[0];
            reqObject.PAN                  = request[2];
            reqObject.STAN                 = request[11];
            reqObject.AIIC                 = request[32];
            reqObject.RRN                  = request[37];
            reqObject.TerminalID           = request[41];
            reqObject.TerminalNameLocation = request[42];
            reqObject.AtmCardNumber        = request[48];
            reqObject.OriginalData         = request[90];
            reqObject.FromAcNo             = request[102];
            reqObject.ToAcNo               = request[103];
            reqObject.ProductName          = request[123];
            reqObject.IMPSdata             = request[125];
            reqObject.AtmDetails           = request[41] + "*" + request[43];
            if (request[28] != null && request[28] != "")
            {
                reqObject.Fee = Convert.ToDouble(request[28].Substring(1, 6) + "." + (request[28].Substring(7, 2)));
            }
            if (request[3] != null && request[3] != "")
            {
                reqObject.ProcesingCode = request[3].Substring(0, 2);
                reqObject.AccountType   = request[3].Substring(2, 2);
            }
            if (request[4] != null && request[4] != "")
            {
                reqObject.Amount = Convert.ToDouble(request[4].Substring(0, 10) + "." + request[4].Substring(10, 2));
            }
            if (request[95] != null && request[95] != "")
            {
                reqObject.ActualAmount = Convert.ToDouble(request[95].Substring(0, 10) + "." + request[95].Substring(10, 2));
            }
            if (request[7] != null && request[7] != "")
            {
                reqObject.Date = request[60].Substring(0, 4) + "-" + request[7].Substring(0, 2) + "-" + request[7].Substring(2, 2);
            }
            if (request[125] != null && request[125] != "")
            {
                reqObject.TransactionType = request[125].Substring((request[125].IndexOf('|', request[125].IndexOf('|') + 1)) + 1, 2);
            }
            return(reqObject);
        }
Exemplo n.º 6
0
        public ATM_IMPS_VAS_ResponseModel RTGS_Reversal(ATM_IMPS_VAS_RequestModel model)
        {
            ATM_IMPS_VAS_ResponseModel ResponseModel = new ATM_IMPS_VAS_ResponseModel();

            try
            {
                string sql_string = "select sf_process_imps_rtgs_transfer('" + model.TrackerID + "','" + model.PAN + "','" + model.ProcesingCode + "','" + model.TransactionType + "','" + model.Amount + "','" + model.Date + "','" + model.STAN + "','" + model.AIIC + "','" + model.RRN + "','" + model.TerminalID + "*" + model.TerminalNameLocation + "','" + model.FromAcNo + "','" + model.ToAcNo + "','" + model.IMPSdata + "','" + model.OriginalData + "') rtgs_data";
                return_value = Convert.ToString(db_select_operation(sql_string, "rtgs_data")).Split('*');
                ResponseModel.AdditionalAmount   = return_value[0];
                ResponseModel.ResponseCode       = mFields_obj.ResponseCode(return_value[1]);
                ResponseModel.CustomerNameMobile = return_value[2];
            }
            catch (Exception ex)
            {
                return(null);
            }
            return(ResponseModel);
        }
Exemplo n.º 7
0
        public ATM_IMPS_VAS_ResponseModel AcquirerCashWithdrwalReverse(ATM_IMPS_VAS_RequestModel model)
        {
            var ReversalResponse = new ATM_IMPS_VAS_ResponseModel();

            try
            {
                var originalMti  = model.OriginalData.Substring(0, 4);
                var originalStan = model.OriginalData.Substring(4, 6);
                var originalDate = model.OriginalData.Substring(10, 10);
                var originalAiic = model.OriginalData.Substring(20, 6);
                sql_string = "select sf_process_atm_acquirer_withdrawals_reversal('" + model.ProcesingCode + "','" + model.AtmCardNumber + "','" + model.PAN + "','" + model.Date + "','" + model.STAN + "','" + model.Amount + "' ,'" + originalMti + "','" + originalStan + "','" + originalAiic + "','" + originalDate + "','" + model.TrackerID + "','" + model.AtmDetails + "') response_code";
                ReversalResponse.ResponseCode = mFields_obj.ResponseCode(Convert.ToString(db_select_operation(sql_string, "response_code")));
            }
            catch (Exception)
            {
                ReversalResponse.ResponseCode = "transaction rejected";
            }
            return(ReversalResponse);
        }
        public string[] Response(string[] request)
        {
            Int64  trackId       = 0;
            string MessageType   = null;
            string requestBitmap = null;

            string[] responseMessage      = new string[128];
            string[] responseBitmapBinary = new string[128] {
                "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"
            };
            requestBitmap = request[1];
            ATM_IMPS_VAS_RequestModel requestModel = new ATM_IMPS_VAS_RequestModel();

            try
            {
                if (request[0] != "0800")
                {
                    trackId = MTObject.Msg_Tracker(request);
                }
                MessageType = request[0];
                var echoData = EchoBuilder(request, responseBitmapBinary);
                responseMessage         = echoData[0];
                responseBitmapBinary    = echoData[1];
                responseMessage[0]      = mFields.messageType(MessageType);
                responseBitmapBinary[0] = "1";
                if (request[0] != "0800")
                {
                    requestModel           = SetRequestModel(request);
                    requestModel.TrackerID = trackId;
                    var responseData = NonEchoResponse(responseMessage, responseBitmapBinary, requestModel);
                    responseMessage      = responseData.ResponseArray;
                    responseBitmapBinary = responseData.BitmapBinary;
                }
                responseMessage[1] = BitMapBuilder(responseBitmapBinary);
                return(responseMessage);
            }
            catch (Exception ex)
            {
                return(null);
            }
        }
Exemplo n.º 9
0
        public ATM_IMPS_VAS_ResponseModel BalanceInquiry(ATM_IMPS_VAS_RequestModel model)
        {
            var BalanceData = new ATM_IMPS_VAS_ResponseModel();

            try
            {
                sql_string   = "select sf_get_atm_balance_enquiry('" + model.AtmCardNumber + "','" + model.PAN + "','" + model.Date + "','" + model.AccountType + "','" + model.TrackerID + "','" + model.Fee + "','" + model.ProcesingCode + "') additional_amounts";
                return_value = Convert.ToString(db_select_operation(sql_string, "additional_amounts")).Split('*');
                BalanceData.AdditionalAmount = return_value[0];
                BalanceData.ResponseCode     = mFields_obj.ResponseCode(return_value[1]);
            }
            catch (Exception)
            {
                BalanceData.ResponseCode = "error_occured";
            }
            if (BalanceData.AdditionalAmount == "" || BalanceData.AdditionalAmount == "0")
            {
                BalanceData.AdditionalAmount = null;
            }
            return(BalanceData);
        }
Exemplo n.º 10
0
        public ATM_IMPS_VAS_ResponseModel ChequeRequest_IMPS(ATM_IMPS_VAS_RequestModel model)
        {
            ATM_IMPS_VAS_ResponseModel ResponseModel = new ATM_IMPS_VAS_ResponseModel();

            try
            {
                string sql_string = "select sf_get_IMPS_cheque_request('" + model.PAN + "','" + model.Date + "','" + model.FromAcNo + "','" + model.TrackerID + "') stmt_data";
                return_value = Convert.ToString(db_select_operation(sql_string, "stmt_data")).Split('*');
                ResponseModel.MimiStatement = mFields_obj.ResponseCode(return_value[0]);
                ResponseModel.ResponseCode  = mFields_obj.ResponseCode(return_value[1]);
            }
            catch (Exception ex)
            {
                return(null);
            }
            if (ResponseModel.MimiStatement == "" || ResponseModel.MimiStatement == "0")
            {
                ResponseModel.MimiStatement = null;
            }
            return(ResponseModel);
        }
Exemplo n.º 11
0
        public ATM_IMPS_VAS_ResponseModel BalanceInquiry_IMPS(ATM_IMPS_VAS_RequestModel model)
        {
            ATM_IMPS_VAS_ResponseModel ResponseModel = new ATM_IMPS_VAS_ResponseModel();

            try
            {
                string sql_string = "select sf_get_IMPS_balance_enquiry('" + model.PAN + "','" + model.Date + "','" + model.FromAcNo + "','" + model.TrackerID + "','" + model.ProcesingCode + "','" + model.TransactionType + "') balance_data";
                return_value = Convert.ToString(db_select_operation(sql_string, "balance_data")).Split('*');
                ResponseModel.AdditionalAmount = return_value[0];
                ResponseModel.ResponseCode     = mFields_obj.ResponseCode(return_value[1]);
            }
            catch (Exception ex)
            {
                return(null);
            }
            if (ResponseModel.AdditionalAmount == "" || ResponseModel.AdditionalAmount == "0")
            {
                ResponseModel.AdditionalAmount = null;
            }
            return(ResponseModel);
        }
Exemplo n.º 12
0
        public ATM_IMPS_VAS_ResponseModel Ministatement(ATM_IMPS_VAS_RequestModel model)
        {
            var MinistatementData = new ATM_IMPS_VAS_ResponseModel();

            try
            {
                sql_string   = "select sf_get_atm_mini_statement('" + model.AtmCardNumber + "','" + model.PAN + "','" + model.Date + "','" + model.AccountType + "','" + model.TrackerID + "') return_value";
                return_value = Convert.ToString(db_select_operation(sql_string, "return_value")).Split('*');
                MinistatementData.MimiStatement = return_value[0];
                MinistatementData.ResponseCode  = mFields_obj.ResponseCode(return_value[1]);
            }
            catch (Exception)
            {
                MinistatementData.MimiStatement = null;
                return(MinistatementData);
            }
            if (MinistatementData.MimiStatement == "" || MinistatementData.MimiStatement == "0")
            {
                MinistatementData.MimiStatement = null;
            }
            return(MinistatementData);
        }
Exemplo n.º 13
0
        public ATM_IMPS_VAS_ResponseModel IMPS(ATM_IMPS_VAS_RequestModel model)
        {
            var ResponseModel = new ATM_IMPS_VAS_ResponseModel();

            ////IMPS Trans(in,out and intra)
            ////Transaction_type : -IMPS
            ////ProcessingCodeType  : -intra, -outward, -inward
            if (model.TransactionType == "45" || model.TransactionType == "48" || model.TransactionType == "94")
            {
                ResponseModel = DBobject.IMPS_Trans(model);
                return(ResponseModel);
            }
            ////IMPS Trans VM(in,out and intra)
            ////Transaction_type :  -VM
            ////ProcessingCodeType  : inward
            if (model.TransactionType == "32" || model.TransactionType == "34")
            {
                ResponseModel = DBobject.IMPS_Trans_VM(model);
                return(ResponseModel);
            }
            //NEFT Trans(in, out and intra)
            //Transaction_type : 88
            //ProcessingCodeType  : 88
            else if (model.TransactionType == "88" && model.ProcesingCode == "88")
            {
                ResponseModel = DBobject.NEFT(model);
                return(ResponseModel);
            }
            //RTGS Trans(in,out and intra)
            //Transaction_type : 89
            //ProcessingCodeType  : 89
            else if (model.TransactionType == "89" && model.ProcesingCode == "89")
            {
                ResponseModel = DBobject.RTGS(model);
                return(ResponseModel);
            }
            return(ResponseModel);
        }
Exemplo n.º 14
0
        public ATM_IMPS_VAS_ResponseModel Ministatement_IMPS(ATM_IMPS_VAS_RequestModel model)
        {
            ATM_IMPS_VAS_ResponseModel ResponseModel = new ATM_IMPS_VAS_ResponseModel();

            try
            {
                DataTable dt         = new DataTable();
                string    sql_string = "select sf_get_IMPS_mini_statement('" + model.PAN + "','" + model.Date + "','" + model.FromAcNo + "','" + model.TrackerID + "') statement_data";
                return_value = Convert.ToString(db_select_operation(sql_string, "statement_data")).Split('*');
                ResponseModel.MimiStatement    = return_value[0];
                ResponseModel.AdditionalAmount = return_value[1];
                ResponseModel.ResponseCode     = mFields_obj.ResponseCode(return_value[2]);
            }
            catch (Exception ex)
            {
                return(null);
            }
            if (ResponseModel.MimiStatement == "" || ResponseModel.MimiStatement == "0")
            {
                ResponseModel.MimiStatement = null;
            }
            return(ResponseModel);
        }
Exemplo n.º 15
0
        public ATM_IMPS_VAS_ResponseModel Ministatement(ATM_IMPS_VAS_RequestModel model)
        {
            var MinitmtData = DBobject.Ministatement(model);

            return(MinitmtData);
        }
        public NonEchoResponseModel NonEchoResponse(string[] responseArray, string[] bitMapArray, ATM_IMPS_VAS_RequestModel requestModel)
        {
            string additionalAmounts     = null;
            string accountIdentification = null;
            string miniStatement         = null;
            string responseCode          = "00";
            string nuupData                   = null;
            string utrRefNo                   = null;
            string customerNameMobile         = null;
            NonEchoResponseModel responseData = new NonEchoResponseModel();

            if (requestModel.MessageType != "0800" && requestModel.ProductName != "IMPS")
            {
                switch (requestModel.MessageType)
                {
                //Finantial TransactonMessage
                case "0200":
                    //Balance Inquiry
                    if (requestModel.ProcesingCode == "30" || requestModel.ProcesingCode == "31" || requestModel.ProcesingCode == "32")
                    {
                        var BalanceData = MTObject.BalanceInquiry(requestModel);
                        additionalAmounts     = BalanceData.AdditionalAmount;
                        responseCode          = BalanceData.ResponseCode;
                        accountIdentification = requestModel.PAN;
                    }
                    //Cash Withdrawal-00,10 POS Purchase-45,46,44,49 (no Reversal)
                    else if (requestModel.ProcesingCode == "00" || requestModel.ProcesingCode == "01" || requestModel.ProcesingCode == "45" || requestModel.ProcesingCode == "46" || requestModel.ProcesingCode == "44" || requestModel.ProcesingCode == "49")    //
                    {
                        if (requestModel.Amount <= 0)
                        {
                            responseCode = mFields.ResponseCode("invalid_amount_requested");
                        }
                        else
                        {
                            var WithdrawalData = MTObject.CashWithdrawal(requestModel);
                            responseCode = WithdrawalData.ResponseCode;
                            if (responseCode == "00")
                            {
                                var BalanceData = MTObject.BalanceInquiry(requestModel);
                                additionalAmounts = BalanceData.AdditionalAmount;
                            }
                            accountIdentification = requestModel.PAN;
                        }
                    }
                    //MiniStatement
                    else if (requestModel.ProcesingCode == "35" || requestModel.ProcesingCode == "36" || requestModel.ProcesingCode == "37")
                    {
                        var MinistmtData = MTObject.Ministatement(requestModel);
                        miniStatement = MinistmtData.MimiStatement;
                        responseCode  = MinistmtData.ResponseCode;
                        if (responseCode == "00")
                        {
                            var BalanceData = MTObject.BalanceInquiry(requestModel);
                            additionalAmounts = BalanceData.AdditionalAmount;
                        }
                        accountIdentification = requestModel.PAN;
                    }
                    //PIN Change Notificatuon
                    else if (requestModel.ProcesingCode == "90" || requestModel.ProcesingCode == "92")
                    {
                        if (requestModel.Fee > 0)
                        {
                            var BalanceData = MTObject.BalanceInquiry(requestModel);
                            additionalAmounts     = BalanceData.AdditionalAmount;
                            responseCode          = BalanceData.ResponseCode;
                            accountIdentification = requestModel.PAN;
                        }
                    }
                    else
                    {
                        responseCode = "99";
                    }
                    break;

                //Cash Withdrawal Reversal and POS Reversal Message
                case "0420":
                    if (requestModel.ProcesingCode == "00" || requestModel.ProcesingCode == "01" || requestModel.ProcesingCode == "45" || requestModel.ProcesingCode == "46" || requestModel.ProcesingCode == "44" || requestModel.ProcesingCode == "49")
                    {
                        double Actual_amount_reversal = 0;
                        if (requestModel.ActualAmount > 0)
                        {
                            Actual_amount_reversal = requestModel.Amount - requestModel.ActualAmount;
                        }
                        else
                        {
                            Actual_amount_reversal = requestModel.Amount;
                        }

                        var ReversalData1 = MTObject.CashWithdrwalReverse(requestModel);
                        responseCode = ReversalData1.ResponseCode;
                        if (responseCode == "00")
                        {
                            var BalanceData = MTObject.BalanceInquiry(requestModel);
                            additionalAmounts = BalanceData.AdditionalAmount;
                        }
                        accountIdentification = requestModel.PAN;

                        if (responseCode != "00" && (requestModel.ProcesingCode == "45" || requestModel.ProcesingCode == "46" || requestModel.ProcesingCode == "44" || requestModel.ProcesingCode == "49"))
                        {
                            responseArray[4] = "000000000000";
                        }
                    }
                    else if (requestModel.ProcesingCode == "19")
                    {
                        double Actual_amount_reversal = 0;
                        if (requestModel.ActualAmount > 0)
                        {
                            Actual_amount_reversal = requestModel.Amount - requestModel.ActualAmount;
                        }
                        else
                        {
                            Actual_amount_reversal = requestModel.Amount;
                        }
                        var ReversalData = MTObject.AcquirerCashWithdrwalReverse(requestModel);
                        accountIdentification = requestModel.PAN;
                    }
                    else
                    {
                        responseCode = "99";
                    }
                    break;

                //NFS Acquirer Withdrwal Message
                case "0220":
                    if (requestModel.ProcesingCode == "19")
                    {
                        responseArray[28] = "C00000000";
                        if (requestModel.Amount <= 0)
                        {
                            responseCode = mFields.ResponseCode("invalid_amount_requested");
                        }
                        else
                        {
                            var WithdrawalData = MTObject.AcquirerCashWithdrawal(requestModel);
                            accountIdentification = requestModel.PAN;
                        }
                    }
                    else
                    {
                        responseCode = "99";
                    }
                    break;

                case "800":
                    break;

                default:
                    responseCode = "97";
                    break;
                }
            }
            //FOR IMPS
            else if (requestModel.ProductName == "IMPS")
            {
                switch (requestModel.MessageType)
                {
                case "0200":
                    //Balance Inquiry
                    if (requestModel.ProcesingCode == "31")    //
                    {
                        var BalanceData = MTObject.BalanceInquiry_IMPS(requestModel);
                        additionalAmounts = BalanceData.AdditionalAmount;
                        nuupData          = BalanceData.NUUPdata;
                        responseCode      = BalanceData.ResponseCode;
                    }
                    //MiniStatement
                    else if (requestModel.ProcesingCode == "36")
                    {
                        var StatementData = MTObject.Ministatement_IMPS(requestModel);
                        miniStatement = StatementData.MimiStatement;
                        responseCode  = StatementData.ResponseCode;
                        if (responseCode == "00")
                        {
                            additionalAmounts = StatementData.AdditionalAmount;
                        }
                    }
                    //Cheque Book Request
                    else if (requestModel.ProcesingCode == "95")
                    {
                        var ChequeResponse = MTObject.ChequeRequest_IMPS(requestModel);
                        responseCode = ChequeResponse.ResponseCode;
                    }
                    //Statement request
                    else if (requestModel.ProcesingCode == "97")
                    {
                        var StatementData = MTObject.Statement_IMPS(requestModel);
                        responseCode = StatementData.ResponseCode;
                    }
                    //P2P,P2A,P2U IMPS Trans(in,out and intra)
                    //Transaction_type : 45-IMPS, 43-VAS
                    //ProcessingCodeType  : 41-intra, 42-inward, 43-outward
                    else if (requestModel.ProcesingCode == "41" || requestModel.ProcesingCode == "42" || requestModel.ProcesingCode == "43" || requestModel.ProcesingCode == "88" || requestModel.ProcesingCode == "89" || requestModel.ProcesingCode == "94")
                    {
                        var Response = MTObject.IMPS(requestModel);
                        responseCode = Response.ResponseCode;
                        if (responseCode == "00")
                        {
                            additionalAmounts  = Response.AdditionalAmount;
                            customerNameMobile = Response.CustomerNameMobile;
                            utrRefNo           = Response.UTRReferenceNumber;
                        }
                    }

                    else
                    {
                        responseCode = "99";
                    }
                    break;

                //Reversal Message
                case "0420":
                    if (requestModel.ProcesingCode == "41" || requestModel.ProcesingCode == "42" || requestModel.ProcesingCode == "43" || requestModel.ProcesingCode == "88" || requestModel.ProcesingCode == "89" || requestModel.ProcesingCode == "94")
                    {
                        var Response = MTObject.IMPS_Reversal(requestModel);
                        responseCode = Response.ResponseCode;
                        if (responseCode == "00")
                        {
                            additionalAmounts  = Response.AdditionalAmount;
                            customerNameMobile = Response.CustomerNameMobile;
                        }
                    }
                    break;

                case "800":
                    break;

                default:
                    responseCode = "97";
                    break;
                }
            }

            //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
            /////////////////////////// APPENDING PROCESSED RESPONSE TO RESPONSE MESSAGE//////////////////////////////////////////////////////////////
            //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            if (bitMapArray[70 - 1] == "1")
            {
                bitMapArray[70 - 1] = "0";
            }
            if (responseCode != null)
            {
                responseArray[39]   = responseCode;
                bitMapArray[39 - 1] = "1";
            }
            if (additionalAmounts != null)
            {
                responseArray[54]   = Convert.ToString(additionalAmounts.Length).PadLeft(3, '0') + additionalAmounts;
                bitMapArray[54 - 1] = "1";
            }
            if (accountIdentification != null)
            {
                responseArray[102]   = Convert.ToString(accountIdentification.Length).PadLeft(2, '0') + accountIdentification;
                bitMapArray[102 - 1] = "1";
            }
            if (miniStatement != null)
            {
                responseArray[121]   = Convert.ToString(miniStatement.Length).PadLeft(3, '0') + miniStatement;
                bitMapArray[121 - 1] = "1";
            }
            if (customerNameMobile != null && customerNameMobile != "")
            {
                responseArray[126]   = Convert.ToString(customerNameMobile.Length).PadLeft(3, '0') + customerNameMobile;
                bitMapArray[126 - 1] = "1";
            }
            if (utrRefNo != null && utrRefNo != "")
            {
                responseArray[127]   = Convert.ToString(utrRefNo.Length).PadLeft(3, '0') + utrRefNo;
                bitMapArray[127 - 1] = "1";
            }
            responseData.BitmapBinary  = bitMapArray;
            responseData.ResponseArray = responseArray;
            return(responseData);
        }
Exemplo n.º 17
0
        public ATM_IMPS_VAS_ResponseModel AcquirerCashWithdrawal(ATM_IMPS_VAS_RequestModel model)
        {
            var WithdrawlaData = DBobject.AcquirerCashWithdrawal(model);

            return(WithdrawlaData);
        }
Exemplo n.º 18
0
        public ATM_IMPS_VAS_ResponseModel AcquirerCashWithdrwalReverse(ATM_IMPS_VAS_RequestModel model)
        {
            var ReversalData = DBobject.AcquirerCashWithdrwalReverse(model);

            return(ReversalData);
        }
Exemplo n.º 19
0
 public ATM_IMPS_VAS_ResponseModel Statement_IMPS(ATM_IMPS_VAS_RequestModel model)
 {
     return(DBobject.Statement_IMPS(model));
 }
Exemplo n.º 20
0
        public ATM_IMPS_VAS_ResponseModel BalanceInquiry_IMPS(ATM_IMPS_VAS_RequestModel model)
        {
            var ResultData = DBobject.BalanceInquiry_IMPS(model);

            return(ResultData);
        }
Exemplo n.º 21
0
        public ATM_IMPS_VAS_ResponseModel BalanceInquiry(ATM_IMPS_VAS_RequestModel model)
        {
            var BalanceData = DBobject.BalanceInquiry(model);

            return(BalanceData);
        }
Exemplo n.º 22
0
 public ATM_IMPS_VAS_ResponseModel ChequeRequest_IMPS(ATM_IMPS_VAS_RequestModel model)
 {
     return(DBobject.ChequeRequest_IMPS(model));
 }