Ejemplo n.º 1
0
        public JsonResult Donate(string access_key, string profile_id, string transaction_uuid, string signed_field_names, string unsigned_field_names, string signed_date_time, string locale, string transaction_type, string amount, string currency)
        {
            TempData["RedirectToPayment"] = true;
            PaymentOrder order = null;
            try
            {
                order = new PaymentOrder()
                {
                    Amount = amount,
                    Currency = currency,
                    OrderDate = DateTime.Now
                };
                paymentService.AddPaymentOrder(order);
            }catch(Exception ex)
            {

            }

            Dictionary<string, string> payment_info = new Dictionary<string, string>();
            payment_info.Add("access_key", access_key);
            payment_info.Add("profile_id", profile_id);
            payment_info.Add("transaction_uuid", transaction_uuid);
            payment_info.Add("signed_field_names", signed_field_names);
            payment_info.Add("unsigned_field_names", unsigned_field_names);
            payment_info.Add("signed_date_time", signed_date_time);
            payment_info.Add("locale", locale);
            payment_info.Add("transaction_type", transaction_type);
            if (order != null && order.ID > 0)
                 payment_info.Add("reference_number", order.ID.ToString());
            else
                payment_info.Add("reference_number", DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString() + DateTime.Now.Millisecond.ToString());
            payment_info.Add("amount", amount);
            payment_info.Add("currency", currency);

            JsonResult result = Json(new {
                success= true,
                access_key = access_key,
                profile_id = profile_id,
                transaction_uuid = transaction_uuid,
                signed_field_names = signed_field_names,
                unsigned_field_names = unsigned_field_names,
                signed_date_time = signed_date_time,
                locale = locale,
                transaction_type = transaction_type,
                reference_number = (order != null && order.ID > 0) ? order.ID.ToString() : DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString() + DateTime.Now.Millisecond.ToString(),
                amount = amount,
                currency = currency,
                signature = LOGI.Services.PaymentOrderService.sign(payment_info)
            });

            return result;
        }
Ejemplo n.º 2
0
         public int AddPaymentOrder(PaymentOrder order)
         {
             
             try
             {
                 DbContext.PaymentOrders.Add(order);

                 DbContext.SaveChanges();

                 return order.ID;
             }
             catch (Exception ex)
             {
                 return -1;
             }
         }