public async Task OnGet()
        {
            StatisticTable = await _stat.GetTopStats();

            //var players = await _player.GetAll();

            //foreach (var player in players)
            //{
            //    try
            //    {
            //        var playerStats = await _stat.GetStatsByPlayerId(player.Id);
            //        var statisticDetail = new StatisticDetail();

            //        var totalStats = _stat.GetTotalStats(playerStats);

            //        var matchCount = _stat.GetMatchCount(playerStats);
            //        var twoPointMatchCount = _stat.GetMatchCountByTwoPointStat(playerStats);

            //        var perMatchStats = _stat.GetPerMatchStats(totalStats, playerStats);

            //        statisticDetail.Player = player;
            //        statisticDetail.MatchCount = matchCount;
            //        statisticDetail.TwoPointMatchCount = twoPointMatchCount;
            //        statisticDetail.TotalStatDetail = totalStats;
            //        statisticDetail.PerMatchStatDetail = perMatchStats;

            //        statisticDetail.MatchForms = _stat.GetMatchFormsByPlayerId(matchStats, player.Id);

            //        statisticDetail.WinRatio = _stat.GetWinRatioByMatchForms(statisticDetail.MatchForms);

            //        statisticDetail.LooseRatio = _stat.GetLooseRatioByMatchForms(statisticDetail.MatchForms);

            //        statisticDetail.OnePointRatio = _stat.GetPointRatio(totalStats.OnePoint, totalStats.MissingOnePoint);
            //        statisticDetail.TwoPointRatio = _stat.GetPointRatio(totalStats.TwoPoint, totalStats.MissingTwoPoint);

            //        statisticDetail.TotalPoint = _stat.GetTotalPoint(totalStats.OnePoint, totalStats.TwoPoint);
            //        statisticDetail.PerMatchTotalPoint = _stat.GetPerMatchTotalPoint(statisticDetail.TotalPoint, matchCount);

            //        StatisticDetailInfo.Add(statisticDetail);
            //    }
            //    catch (Exception)//Oyuncuya ait istatistik yoksa
            //    {

            //    }
            //}

            //StatisticInfo = new Statistic(StatisticDetailInfo);
        }
Exemplo n.º 2
0
        public Task <StatisticTable> GetTopStats()
        {
            return(CommonOperation(async() =>
            {
                var playersResult = await _uow.Players.GetAllAsync();
                var players = playersResult.ResultList;

                var statsResult = await _uow.Stats.GetAllAsync();
                var stats = statsResult.ResultList;

                var statisticTable = new StatisticTable
                {
                    Points = _uow.Stats.GetTopPointsStat(players, stats),
                    PointPerMatch = _uow.Stats.GetTopPointsPerMatchStat(players, stats),
                    OnePoint = _uow.Stats.GetTopOnePointStat(players, stats),
                    OnePointPerMatch = _uow.Stats.GetTopOnePointPerMatchStat(players, stats),
                    OnePointRatio = _uow.Stats.GetOnePointRatioStat(players, stats),
                    TwoPoint = _uow.Stats.GetTwoPointStat(players, stats),
                    TwoPointPerMatch = _uow.Stats.GetTwoPointPerMatchStat(players, stats),
                    TwoPointRatio = _uow.Stats.GetTwoPointRatioStat(players, stats),
                    Rebounds = _uow.Stats.GetReboundStat(players, stats),
                    ReboundPerMatch = _uow.Stats.GetReboundPerMatchStat(players, stats),
                    Steals = _uow.Stats.GetStealStat(players, stats),
                    StealsPerMatch = _uow.Stats.GetStealPerMatchStat(players, stats),
                    Turnovers = _uow.Stats.GetTurnoverStat(players, stats),
                    TurnoversPerMatch = _uow.Stats.GetTurnoverPerMatchStat(players, stats),
                    Assist = _uow.Stats.GetAssistStat(players, stats),
                    AssistPerMatch = _uow.Stats.GetAssistPerMatchStat(players, stats),
                    Interrupts = _uow.Stats.GetInterruptStat(players, stats),
                    InterruptPerMatch = _uow.Stats.GetInterruptPerMatchStat(players, stats)
                };

                var allPlayersMatchForms = await GetPlayersMatchFormsAsync(players);

                statisticTable.Wins = _uow.Stats.GetWinsStat(players, allPlayersMatchForms);
                statisticTable.WinRatio = _uow.Stats.GetWinRatioStat(players, allPlayersMatchForms);
                statisticTable.Looses = _uow.Stats.GetLoosesStat(players, allPlayersMatchForms);
                statisticTable.LooseRatio = _uow.Stats.GetLooseRatioStat(players, allPlayersMatchForms);

                return statisticTable;
            }, new BusinessBaseRequest()
            {
                MethodBase = MethodBase.GetCurrentMethod()
            }));
        }
 public StatisticModel(IStat stat)
 {
     _stat          = stat;
     StatisticTable = new StatisticTable();
 }