예제 #1
0
        /// <summary>
        /// FR: URL de redirection après un traitement formulaire ou 3DSECURE
        /// EN: Redirection URL after payment form or 3DSECURE processing
        /// WARNING: YOU SHOULD NOT USE THIS NAME FOR THIS ACTION IN PRODUCTION.
        /// </summary>
        /// <returns></returns>
        public ActionResult FormReturn()
        {
            var data = TransactionResult.Create(this.Request.QueryString);

            bool isHashValid = this.BebillClient.VerifyParameters(data.ToDictionary(), this.BebillConfiguration.ApiKey, data.Hash);

            this.ViewBag.IsHashValid = isHashValid;

            if (data.ExecCode == "0000" && isHashValid)
            {
                var splittedId = data.OrderId.Split(new char[] { '|', }, 2);

                var result = this.Domain.AddPaymentToTransaction1(splittedId[0], data);
                this.ViewBag.Result = result;
            }

            this.ViewBag.ExecCode = Be2BillUtility.GetNameForExecCode(data.ExecCode, CultureInfo.CurrentUICulture);

            this.Domain.SaveBebillTransaction(data);

            return(this.View(data));
        }