コード例 #1
0
        public async Task <List <TopWinnerDetail> > TopWinnerDetail(TopWinnerDetailQuery query)
        {
            using (var db = databaseManager.GetReadOnlyDatabase(query.OperatorId))
            {
                switch (query.Format)
                {
                case Enums.TopWinnerFormat.Game:
                {
                    var x = await db.TopWinnerDetails
                            .Query("REPORTTOPWINNERGAME @OperatorId, @GameId, @StartDateInUTC, @EndDateInUTC, @UserId", query)
                            .ToListAsync();

                    return(x.WithFilters <TopWinnerDetail>(query));
                }

                case Enums.TopWinnerFormat.Daily:
                {
                    var x = await db.TopWinnerDetailsDaily
                            .Query($"REPORTTOPWINNER{query.Format} @OperatorId, @GameId, @StartDateInUTC, @EndDateInUTC, @UserId", query)
                            .ToListAsync();

                    return(x.WithFilters <TopWinnerDetail>(query));
                }

                case Enums.TopWinnerFormat.Weekly:
                {
                    var x = await db.TopWinnerDetailsWeekly
                            .Query($"REPORTTOPWINNER{query.Format} @OperatorId, @GameId, @StartDateInUTC, @EndDateInUTC, @UserId", query)
                            .ToListAsync();

                    return(x.WithFilters <TopWinnerDetail>(query));
                }

                case Enums.TopWinnerFormat.Monthly:
                {
                    var x = await db.TopWinnerDetailsMonthly
                            .Query($"REPORTTOPWINNER{query.Format} @OperatorId, @GameId, @StartDateInUTC, @EndDateInUTC, @UserId", query)
                            .ToListAsync();

                    return(x.WithFilters <TopWinnerDetail>(query));
                }

                default:
                    throw new InvalidOperationException();
                }
            }
        }
コード例 #2
0
 public async Task <IActionResult> Details([FromQuery] TopWinnerDetailQuery query) =>
 GetResult(await reportsRepository.TopWinnerDetail(query));