Пример #1
0
        /// <summary>
        /// League Boosting Page
        /// </summary>
        public IActionResult Index()
        {
            var model = new BoostersPageViewModel
            {
                SourceLeagueTypes        = LeagueTypes.Bronze.ToString(),
                SourceDivisionTypes      = DivisionTypes.Division5.ToString(),
                DestinationLeagueTypes   = LeagueTypes.Silver.ToString(),
                DestinationDivisionTypes = DivisionTypes.Division1.ToString(),
                LeaguePoints             = LeaguePoints.Lp0.ToString(),
                QueueTypes  = QueueTypes.flex_rift.ToString(),
                ServerNames = ServerNames.TR.ToString()
            };

            return(View(model));
        }
Пример #2
0
        public async Task <JsonResult> Purchase(BoostersPageViewModel model)
        {
            if (!model.FormSecurity.IsNullOrEmpty() || model.Price <= 0 || AbpSession.UserId == null)
            {
                return(Json(new AjaxResponse {
                    Success = false, Error = new ErrorInfo {
                        Message = "Hatalı gönderim"
                    }
                }));
            }
            //add to cart
            DtoOrders order = await _ordersAppService.Create(new DtoOrders
            {
                UserId                     = AbpSession.GetUserId(),
                Guid                       = Guid.NewGuid(),
                BoostType                  = BoostType.EloBoost,
                OrderStatus                = OrderStatus.Created,
                ServerName                 = (ServerNames)model.ServerNames.ToInteger(),
                QueueType                  = (QueueTypes)model.QueueTypes.ToInteger(),
                CurrentLeague              = (LeagueTypes)model.SourceLeagueTypes.ToInteger(),
                CurrentDivision            = (DivisionTypes)model.SourceDivisionTypes.ToInteger(),
                CurrentPoints              = (LeaguePoints)model.LeaguePoints.ToInteger(),
                DesiredLeague              = (LeagueTypes)model.DestinationLeagueTypes.ToInteger(),
                DesiredDivision            = (DivisionTypes)model.DestinationDivisionTypes.ToInteger(),
                ServiceType                = 0,
                DesiredGamesOrWinsOrPoints = 0,
                Amount                     = model.Price
            });

            await _ordersHistoryAppService.Create(new DtoOrdersHistory
            {
                OrdersId    = order.Id,
                OrderStatus = order.OrderStatus
            });

            //save
            await UnitOfWorkManager.Current.SaveChangesAsync();

            //return
            return(Json(new AjaxResponse {
                TargetUrl = "/Cart"
            }));
        }
Пример #3
0
        public async Task <JsonResult> Pay(BoostersPageViewModel model)
        {
            if (!model.FormSecurity.IsNullOrEmpty())
            {
                return(Json(new AjaxResponse {
                    Success = false, Error = new ErrorInfo {
                        Message = "Hatalı gönderim"
                    }
                }));
            }
            //add to cart
            var order = (await _ordersAppService.GetAllByUser(new InputSearch {
                Guid = model.Guid
            })).Items.FirstOrDefault();

            if (order == null)
            {
                return(Json(new AjaxResponse {
                    Error = new ErrorInfo {
                        Details = "Order not found", Message = "Refresh page"
                    }
                }));
            }

            order.OrderStatus = OrderStatus.RequestActive;
            //order.OrderStatus = OrderStatus.WaitingPaymentApproval;
            await _ordersAppService.Update(order);

            await _ordersHistoryAppService.Create(new DtoOrdersHistory
            {
                OrdersId    = order.Id,
                OrderStatus = order.OrderStatus
            });

            //save
            await UnitOfWorkManager.Current.SaveChangesAsync();

            //return
            return(Json(new AjaxResponse {
                TargetUrl = "/Cart/Summary"
            }));
        }
Пример #4
0
        public async Task <JsonResult> Checkout(BoostersPageViewModel model)
        {
            if (!model.FormSecurity.IsNullOrEmpty())
            {
                return(Json(new AjaxResponse {
                    Success = false, Error = new ErrorInfo {
                        Message = "Hatalı gönderim"
                    }
                }));
            }
            //add to cart
            var order = (await _ordersAppService.GetAll(new PagedAndSortedResultRequestDto {
                MaxResultCount = 20
            })).Items
                        .FirstOrDefault(m => m.OrderStatus == OrderStatus.Created);
            var guid = order?.Guid ?? Guid.NewGuid();

            //return
            return(Json(new AjaxResponse {
                TargetUrl = "/Cart/Pay/" + guid
            }));
        }