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" })); }
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" })); }