public IHttpActionResult GetSponsorTransactions([FromUri] SponsorTransactionRequestModel requestModel)
        {
            //only battle owner or sponsor should be able to see transactions
            //todo: get picture battle when ready
            var battle = requestModel.BattleType == BattleType.Video ? _videoBattleService.Get(requestModel.BattleId) : null;

            if (battle == null)
            {
                return(Json(new { Success = false, Message = "Battle doesn't exist" }));
            }


            if (battle.ChallengerId != ApplicationContext.Current.CurrentUser.Id &&
                requestModel.CustomerId != ApplicationContext.Current.CurrentUser.Id)
            {
                return(Json(new { Success = false, Message = "Unauthorized" }));
            }

            var sponsorships = _sponsorService.GetSponsors(requestModel.CustomerId, requestModel.BattleId, BattleType.Video, null);
            var model        = new List <SponsorTransactionModel>();
            var user         = _userService.Get(requestModel.CustomerId);

            foreach (var sponsorship in sponsorships)
            {
                model.Add(new SponsorTransactionModel()
                {
                    OrderId                    = sponsorship.Id,
                    TransactionDate            = DateTimeHelper.GetDateInUserTimeZone(sponsorship.DateCreated, DateTimeKind.Utc, user).ToString(),
                    TransactionAmount          = sponsorship.SponsorshipAmount,
                    TransactionAmountFormatted = _formatterService.FormatCurrency(sponsorship.SponsorshipAmount, ApplicationContext.Current.ActiveCurrency)
                });
            }

            return(Json(new { Success = true, Orders = model }));
        }
Exemple #2
0
        public IHttpActionResult GetSponsorTransactions([FromUri] SponsorTransactionRequestModel Model)
        {
            //only battle owner or sponsor should be able to see transactions
            //todo: get picture battle when ready
            var battle = Model.BattleType == BattleType.Video ? _videoBattleService.GetById(Model.BattleId) : null;

            if (battle == null)
            {
                return(Json(new { Success = false, Message = "Battle doesn't exist" }));
            }


            if (battle.ChallengerId != _workContext.CurrentCustomer.Id &&
                Model.CustomerId != _workContext.CurrentCustomer.Id)
            {
                return(Json(new { Success = false, Message = "Unauthorized" }));
            }

            var orders = _sponsorPassService.GetSponsorPassOrders(Model.CustomerId, Model.BattleId, Model.BattleType);
            var model  = new List <SponsorTransactionModel>();

            foreach (var order in orders)
            {
                var orderTotalInCustomerCurrency = _currencyService.ConvertCurrency(order.OrderTotal, order.CurrencyRate);
                model.Add(new SponsorTransactionModel()
                {
                    OrderId                    = order.Id,
                    TransactionDate            = _dateTimeHelper.ConvertToUserTime(order.CreatedOnUtc, DateTimeKind.Utc).ToString(),
                    TransactionAmount          = order.OrderTotal,
                    TransactionAmountFormatted = _priceFormatter.FormatPrice(orderTotalInCustomerCurrency, true, order.CustomerCurrencyCode, false, _workContext.WorkingLanguage)
                });
            }

            return(Json(new { Success = true, Orders = model }));
        }