public async Task <IActionResult> ActiveRoyaleQuarter()
        {
            var activeQuarter = await _royaleService.GetActiveYearQuarter();

            var viewModel = new RoyaleYearQuarterViewModel(activeQuarter);

            return(Ok(viewModel));
        }
        public async Task <IActionResult> RoyaleQuarter(int year, int quarter)
        {
            var requestedQuarter = await _royaleService.GetYearQuarter(year, quarter);

            if (requestedQuarter.HasNoValue)
            {
                return(NotFound());
            }

            var viewModel = new RoyaleYearQuarterViewModel(requestedQuarter.Value);

            return(Ok(viewModel));
        }
Example #3
0
 public RoyalePublisherGameViewModel(RoyalePublisherGame domain, LocalDate currentDate, IEnumerable <MasterGameTag> allMasterGameTags)
 {
     PublisherID         = domain.PublisherID;
     YearQuarter         = new RoyaleYearQuarterViewModel(domain.YearQuarter);
     MasterGame          = new MasterGameYearViewModel(domain.MasterGame, currentDate);
     Locked              = domain.IsLocked(currentDate, allMasterGameTags);
     Timestamp           = domain.Timestamp;
     AmountSpent         = domain.AmountSpent;
     AdvertisingMoney    = domain.AdvertisingMoney;
     FantasyPoints       = domain.FantasyPoints;
     CurrentlyIneligible = domain.CalculateIsCurrentlyIneligible(allMasterGameTags);
     RefundAmount        = AmountSpent;
     if (!CurrentlyIneligible)
     {
         RefundAmount /= 2;
     }
 }
Example #4
0
    public RoyalePublisherViewModel(RoyalePublisher domain, LocalDate currentDate, int?ranking, IEnumerable <RoyaleYearQuarter> quartersWon,
                                    IEnumerable <MasterGameTag> allMasterGameTags)
    {
        PublisherID        = domain.PublisherID;
        YearQuarter        = new RoyaleYearQuarterViewModel(domain.YearQuarter);
        PlayerName         = domain.User.UserName;
        UserID             = domain.User.Id;
        PublisherName      = domain.PublisherName;
        PublisherIcon      = domain.PublisherIcon;
        PublisherGames     = domain.PublisherGames.Select(x => new RoyalePublisherGameViewModel(x, currentDate, allMasterGameTags)).ToList();
        Budget             = domain.Budget;
        TotalFantasyPoints = domain.GetTotalFantasyPoints();
        if (TotalFantasyPoints > 0)
        {
            Ranking = ranking;
        }

        QuartersWon           = quartersWon.Select(x => new RoyaleYearQuarterViewModel(x)).ToList();
        PreviousQuarterWinner = quartersWon.Select(x => x.YearQuarter).Contains(domain.YearQuarter.YearQuarter.LastQuarter);
        OneTimeWinner         = quartersWon.Any();
    }