Example #1
0
 public IActionResult DirectDebitStatus(DirectDebitTransactionResponse model)
 {
     return(View(model));
 }
Example #2
0
        public IActionResult DebitStatus(IFormCollection response, string au)
        {
            var userprofile = new AuthenticateResponse();
            var _user       = new AuthenticateResponse();

            if (!String.IsNullOrEmpty(au))
            {
                var base64EncodedBytes = System.Convert.FromBase64String(au);
                var decodedJson        = System.Text.Encoding.UTF8.GetString(base64EncodedBytes);

                userprofile = JsonConvert.DeserializeObject <AuthenticateResponse>(decodedJson);
                _user       = userprofile;
            }

            //var _user = HttpContext.Session.Get<AuthenticateResponse>("ArmUser");
            //if (_user == null)
            //{
            //    HttpContext.Session.Set("ArmUser", userprofile);
            //}

            var getClientBalance = _client.GetTotalAccountBalance(_user.MembershipKey);

            if (getClientBalance != null)
            {
                //HttpContext.Session.Set("ArmClientBalance", getClientBalance);
                //set session at this point.
            }

            var ddResponse   = response;
            var ddRef        = ddResponse["arm_ddref"];
            var ddStatusCode = ddResponse["arm_dd_status_code"];
            var ddStatusMsg  = ddResponse["arm_dd_status_msg"];
            var ddAmount     = ddResponse["arm_dd_amt"];
            var ddCustomerId = ddResponse["arm_cust_id"];
            var ddCardType   = ddResponse["arm_cc_type"];
            var ddCardMask   = ddResponse["arm_cc_mask"];
            var ddAmtAppr    = ddResponse["arm_dd_amt_appr"];

            var directDebit = new DDebit();

            if (!String.IsNullOrEmpty(ddRef))
            {
                if (!String.IsNullOrEmpty(ddStatusCode) || ddStatusCode.Equals("0") || ddStatusCode.Equals("00"))
                {
                    directDebit.CustomerId           = ddCustomerId;
                    directDebit.DirectDebitReference = ddRef;
                    directDebit.DebitAmount          = Convert.ToDecimal(ddAmount);
                    directDebit.AmountApproved       = Convert.ToDecimal(ddAmtAppr);
                    directDebit.CardMask             = ddCardMask;
                    directDebit.CardType             = ddCardType;
                    directDebit.StatusMessage        = ddStatusMsg;
                    directDebit.StatusCode           = ddStatusCode;
                    directDebit.CreatedOn            = DateTime.Now;

                    db.DDebit.Add(directDebit);
                    db.SaveChanges();
                }
            }

            var model = new DirectDebitTransactionResponse
            {
                ArmDdRef        = ddRef,
                ArmDdStatusCode = ddStatusCode,
                ArmDdStatusMsg  = ddStatusMsg,
                ArmDdAmt        = Convert.ToDecimal(ddAmount),
                ArmCustId       = ddCustomerId,
                ArmCcType       = ddCardType,
                ArmCcMask       = ddCardMask,
                ArmDdAmtAppr    = Convert.ToDecimal(ddAmtAppr)
            };

            return(View("DirectDebitStatus", model));
        }