Пример #1
0
        // GET: Plans
        public ActionResult Index()
        {
            Session["PaymentStatus"] = false;

            ShortnerContext   db          = new ShortnerContext();
            PaymentRepository paymentrepo = new PaymentRepository(db);
            int userid      = Convert.ToInt32(Session["UserId"]);
            var paymentinfo = paymentrepo.GetPaymentByRegistId(userid);

            var RegisteredUser = _RegistrationRepository.GetClientById(userid);

            if (paymentinfo != null)
            {
                if (paymentinfo.IsSuccess == true || RegisteredUser.PaymentStatus == true)
                {
                    Session["PaymentStatus"] = true;
                }
            }

            var stripePublishKey = ConfigurationManager.AppSettings["PublishableKey"];

            ViewBag.StripePublishKey = stripePublishKey;

            return(View());
        }
        //public static string GetURL()
        //{
        //    string URL = "";
        //    Random rand = new Random();
        //    for (int i = 0; i < characters.Count; i++)
        //    {
        //        int random = rand.Next(0, characters.Count);
        //        URL += characters[random].ToString();
        //    }
        //    return URL;
        //}

        public void AddNewShortCharcter()
        {
            ShortCharacters shortcharcters = new ShortCharacters();
            ShortnerContext _context       = new ShortnerContext();

            var result = _context.ShortCharacters.Add(shortcharcters);
            int Return = _context.SaveChanges();
        }
Пример #3
0
 public RegistrationRepository(ShortnerContext ctx)
 {
     this._ctx = ctx;
 }
Пример #4
0
 public PaymentRepository(ShortnerContext ctx)
 {
     this._ctx = ctx;
 }
        public ActionResult ZarinpalCallback(string Authority = "", string Status = "")
        {
            ShortnerContext   db    = new ShortnerContext();
            AdManageViewModel model = new AdManageViewModel();
            PaymentGatewayImplementationServicePortTypeClient request = new PaymentGatewayImplementationServicePortTypeClient();
            long userid = (long)Session["UserId"];
            PaymentRepository  paymentrepo        = new PaymentRepository(db);
            PaymentTransaction paymenttransaction = new PaymentTransaction();

            long RefID    = 0;
            int  response = 0;

            try
            {
                var RegisteredUser = registrationRepository.GetClientById(userid);
                paymenttransaction = _paymentRepository.GetPaymentByRegistId(userid);

                if (Status == "OK")
                {
                    Amount = PlanCalculate.CalculatePlanAmount(Convert.ToInt32(TempData["PlanAmount"]));

                    //PAYMENT VERIFICATION
                    response = request.PaymentVerification(MerchantID, Authority, 120, out RefID);

                    if (RefID > 0)
                    {
                        //CheckPaymentStatus(Authority);
                        Registration objRegisterUser = registrationRepository.GetClientById(userid);
                        objRegisterUser.PaymentStatus = true;
                        registrationRepository.Edit(objRegisterUser);
                        Session["PaymentStatus"]         = true;
                        model.ResponseMessage            = "Your subscription succesfully!!";
                        model.Paymentstatus              = CommanClass.PaymentStatus.Sucess;
                        paymenttransaction.RegistId      = userid;
                        paymenttransaction.Charge_Paid   = true;
                        paymenttransaction.IsSuccess     = true;
                        paymenttransaction.PaymentMethod = (int)CommanClass.PaymentMethod.Zarinpal;
                        paymenttransaction.Response      = "Complete";
                        paymenttransaction.Status        = Status;
                        paymenttransaction.ReferenceID   = RefID;
                        paymenttransaction.PaymentVerificationResponse = response;
                        paymenttransaction.Charge_Amount = Convert.ToInt32(Amount);
                        _paymentRepository.UpdatePaymentTransactionData(paymenttransaction);

                        RegisteredUser.PaymentStatus = true;
                        registrationRepository.Edit(RegisteredUser);
                        Session["IsPaymentPrecessing"] = true;
                        return(RedirectToAction("Purchase", "Payment", model));
                    }
                }
                if (Status == "NOK")
                {
                    paymenttransaction.RegistId      = userid;
                    paymenttransaction.Charge_Amount = Convert.ToInt32(Amount);
                    paymenttransaction.Charge_Paid   = false;
                    paymenttransaction.ExpireDate    = DateTime.Now.AddDays(30);
                    paymenttransaction.IsSuccess     = false;
                    paymenttransaction.PaymentMethod = (int)CommanClass.PaymentMethod.Zarinpal;
                    paymenttransaction.Response      = "Failed";
                    paymenttransaction.Status        = Status;
                    paymenttransaction.ReferenceID   = RefID;
                    paymenttransaction.Authority     = Authority;
                    paymenttransaction.PaymentVerificationResponse = response;
                    _paymentRepository.UpdatePaymentTransactionData(paymenttransaction);
                    Session["IsPaymentPrecessing"] = false;

                    RegisteredUser.PaymentStatus = false;
                    registrationRepository.Edit(RegisteredUser);

                    model.ResponseMessage    = "Your subscription failed!!";
                    model.Paymentstatus      = CommanClass.PaymentStatus.Failed;
                    Session["PaymentStatus"] = false;
                }
            }
            catch (Exception ex)
            {
                paymenttransaction.RegistId      = userid;
                paymenttransaction.Charge_Amount = Convert.ToInt32(Amount);
                paymenttransaction.Charge_Paid   = false;
                paymenttransaction.IsSuccess     = false;
                paymenttransaction.PaymentMethod = (int)CommanClass.PaymentMethod.Zarinpal;
                paymenttransaction.Response      = "Failed" + ex.ToString();
                paymenttransaction.Status        = Status;
                paymenttransaction.ReferenceID   = RefID;
                paymenttransaction.Authority     = Authority;
                paymenttransaction.PaymentVerificationResponse = Convert.ToInt32(response);
                _paymentRepository.UpdatePaymentTransactionData(paymenttransaction);

                model.ResponseMessage          = "Your subscription failed!" + ex;
                model.Paymentstatus            = CommanClass.PaymentStatus.Failed;
                Session["PaymentStatus"]       = false;
                Session["IsPaymentPrecessing"] = false;
            }
            return(RedirectToAction("Purchase", "Payment", model));
        }
 public UrlVisitorLogRepository(ShortnerContext ctx)
 {
     this._ctx = ctx;
 }
 public AdManageRepository(ShortnerContext ctx)
 {
     this._ctx = ctx;
 }
 public UrlShortnerRepository(ShortnerContext ctx)
 {
     this._ctx = ctx;
 }
Пример #9
0
 //var _baseurl;
 public ShortnersController(ShortnerContext context)
 {
     // var req = acc.HttpContext.Request;
     //var _baseurl= $"{req.Scheme}://{req.Host}";
     _context = context;
 }
Пример #10
0
 public ShortnersController(ShortnerContext context)
 {
     _context = context;
 }