public ActionResult LandLinePayment() { Dictionary <string, string> dictonary = new Dictionary <string, string>(); ViewBag.productdenominationList = ApplicationUtilities.SetDDLValue(getdenominationlist("0", dictonary), "", "--select--"); string AgentId = Session["AgentId"].ToString(); var TxnLimit = _transactionLimit.GetTransactionLimitForUser(AgentId); LandLinePaymentModel landlinepayment = new LandLinePaymentModel() { TxnLimitMax = TxnLimit.TxnLimitMax, TxnDailyLimitMax = TxnLimit.TxnDailyLimitMax, TxnMonthlyLimitMax = TxnLimit.TxnMonthlyLimitMax, TxnDailyRemainingLimit = TxnLimit.TxnDailyRemainingLimit, TxnMonthlyRemainingLimit = TxnLimit.TxnMonthlyRemainingLimit }; return(View(landlinepayment)); }
public ActionResult LandLinePayment(LandLinePaymentModel landmodel) { var validMobileNo = landlinenumbervalidation(landmodel.LandLineNo); if (validMobileNo.Code != "0") { ModelState.AddModelError("LandLineNo", validMobileNo.Message); return(View(landmodel)); } MobileTopUpPaymentRequest mtpr = new MobileTopUpPaymentRequest() { action_user = Session["UserName"].ToString(), product_id = landmodel.ProductId, amount = landmodel.Amount, subscriber_no = landmodel.LandLineNo, quantity = "", additonal_data = "", CardNo = landmodel.CardNo, CardAmount = landmodel.CardAmount }; var response = _mtp.MobileTopUpPaymentRequest(mtpr); if (response.Code == 0) { var tranid = response.Extra1; var amt = landmodel.Amount.Contains(".") ? landmodel.Amount.Split('.')[0].ToString() : landmodel.Amount; var payment = _LLpay.DirectPayment(tranid); //var payment = _mpaymentPP.ConsumeService(clientModel.MobileNo, long.Parse(amt)); bool failed = true; if (payment.GatewayName == "PAYPOINT") { if (payment.Code == shared.Models.ResponseCode.Success) { var billNo = payment.Extra1; var refStan = payment.Extra2; var ppresponse = (PPResponse)payment.Data; var data = new MobileTopUpPaymentUpdateRequest(); data.action_user = Session["UserName"].ToString(); data.transaction_id = response.Extra1; data.additonal_data = Newtonsoft.Json.JsonConvert.SerializeObject(ppresponse); data.amount = landmodel.Amount; data.bill_number = billNo; data.refstan = refStan; data.status_code = ppresponse.Result; data.remarks = ppresponse.ResultMessage; data.ip_address = ApplicationUtilities.GetIP(); data.product_id = landmodel.ProductId; data.partner_txn_id = ppresponse.TransactionId; response = _mtp.MobileTopUpPaymentResponse(data); failed = false; } else { var ppresponse = (PPResponse)payment.Data; var data = new MobileTopUpPaymentUpdateRequest(); data.action_user = Session["UserName"].ToString(); data.transaction_id = response.Extra1; data.additonal_data = Newtonsoft.Json.JsonConvert.SerializeObject(ppresponse); data.amount = landmodel.Amount; data.status_code = ((int)payment.Code).ToString(); data.remarks = payment.Message; data.ip_address = ApplicationUtilities.GetIP(); data.product_id = landmodel.ProductId; response = _mtp.MobileTopUpPaymentResponse(data); } } if (payment.GatewayName == "PRABHUPAY") { if (payment.Code == ResponseCode.Success) { var ppresponse = (prabhupay.service.data.ReturnTransaction)payment.Data; var billNo = ppresponse.TransactionId; //payment.Extra1; var refStan = ppresponse.TransactionId; //payment.Extra2; var data = new MobileTopUpPaymentUpdateRequest(); data.action_user = Session["UserName"].ToString(); data.transaction_id = response.Extra1; data.additonal_data = Newtonsoft.Json.JsonConvert.SerializeObject(ppresponse); data.amount = landmodel.Amount; data.bill_number = billNo; data.refstan = refStan; data.status_code = ppresponse.Code; data.remarks = ppresponse.Message; data.ip_address = ApplicationUtilities.GetIP(); data.product_id = landmodel.ProductId; data.partner_txn_id = ppresponse.TransactionId; response = _mtp.MobileTopUpPaymentResponse(data); failed = false; } else if (payment.Code == ResponseCode.Exception) { var ppresponse = (prabhupay.service.data.ReturnTransaction)payment.Data; var billNo = ppresponse.TransactionId; //payment.Extra1; var refStan = ppresponse.TransactionId; //payment.Extra2; var data = new MobileTopUpPaymentUpdateRequest(); data.action_user = Session["UserName"].ToString(); data.transaction_id = response.Extra1; data.additonal_data = Newtonsoft.Json.JsonConvert.SerializeObject(ppresponse); data.amount = landmodel.Amount; data.bill_number = billNo; data.refstan = refStan; data.status_code = ppresponse.Code; data.remarks = ppresponse.Message; data.ip_address = ApplicationUtilities.GetIP(); data.product_id = landmodel.ProductId; data.partner_txn_id = ppresponse.TransactionId; response = _mtp.MobileTopUpPaymentResponse(data); failed = false; } else { var ppresponse = (prabhupay.service.data.ReturnTransaction)payment.Data; var data = new MobileTopUpPaymentUpdateRequest(); data.action_user = Session["UserName"].ToString(); data.transaction_id = response.Extra1; data.additonal_data = Newtonsoft.Json.JsonConvert.SerializeObject(ppresponse); data.amount = landmodel.Amount; data.status_code = "999"; data.remarks = payment.Message; data.ip_address = ApplicationUtilities.GetIP(); data.product_id = landmodel.ProductId; response = _mtp.MobileTopUpPaymentResponse(data); } } if (failed) { response.Code = shared.Models.ResponseCode.Failed; response.Message = "Transaction Failed"; } response.SetMessageInTempData(this, "LandLinePayment"); if (failed) { return(RedirectToAction("LandLinePayment")); } return(RedirectToAction("ResultPage", ControllerName, new { txnid = response.Extra1.EncryptParameter() })); //return RedirectToAction("MobileTopup"); } response.SetMessageInTempData(this, "LandLinePayment"); //if (Session["UserType"].ToString().ToLower() == "merchant") // return RedirectToAction("MobileTopUp3"); return(RedirectToAction("LandLinePayment")); }