示例#1
0
        public PagedList <TeamsData> GetTeams(TeamParams teamParams)
        {
            var teamOwners = _context.TeamsData.Where(t => t.OwnerId.HasValue)
                             .Select(t => t.OwnerId.GetValueOrDefault());
            var reviewers = _context.Reviews.Where(r => r.Rate.HasValue && r.ReviewerProfileId != r.ProfileId)
                            .Select(r => r.ReviewerProfileId);
            var reviewersTeamOwners = reviewers.Intersect(teamOwners);

            var teams = _context.TeamsData.Where(t => reviewers.Contains(t.OwnerId.GetValueOrDefault()))
                        .AsQueryable();

            if (!string.IsNullOrEmpty(teamParams.Name))
            {
                teams = teams.Where(t => t.Name.ToLower().Contains(teamParams.Name.ToLower()));
            }

            if (!string.IsNullOrEmpty(teamParams.Country))
            {
                teams = teams.Where(t => t.Country == teamParams.Country);
            }

            teams = teams.Where(t => t.Rating >= teamParams.MinRating && t.Rating <= teamParams.MaxRating);

            return(PagedList <TeamsData> .Create(teams, teamParams.PageNumber, teamParams.PageSize));
        }
示例#2
0
        public IActionResult GetJoukkueet(
            int kaudetAlku     = 2000,
            int kaudetLoppu    = 2020,
            string sarja       = "Miesten superpesis",
            string sarjavaihe  = "Runkosarja",
            Boolean vuosittain = false,
            string paikka      = "",
            string tulos       = "",
            string vastustaja  = "",
            string joukkue     = ""
            )
        {
            ITeamParams teamParams = new TeamParams(
                kaudetAlku,
                kaudetLoppu,
                sarja,
                sarjavaihe,
                vuosittain,
                paikka,
                tulos,
                vastustaja,
                joukkue
                );


            queryTimer.Start();

            string data = query.haeJoukkueet(teamParams);


            queryTimer.Stop("JOUKKUEISIIN");

            return(returnStatusHandler.handleResultString(data));
        }
示例#3
0
        /// <inheritdoc/>
        public async Task <Team> UpdateTeamAsync(string teamId, string name)
        {
            var teamParams = new TeamParams {
                Name = name
            };

            return(await TeamsClient.PutResultAsync <Team, TeamParams>($"{WxTeamsConstants.TeamsUrl}/{teamId}", teamParams));
        }
示例#4
0
        /// <inheritdoc/>
        public async Task <Team> CreateTeamAsync(string name)
        {
            var teamParams = new TeamParams {
                Name = name
            };

            return(await TeamsClient.PostResultAsync <Team, TeamParams>(WxTeamsConstants.TeamsUrl, teamParams));
        }
示例#5
0
        public IActionResult Get([FromQuery] TeamParams teamParams)
        {
            var teams         = _teamRepository.GetTeams(teamParams);
            var teamsToReturn = _mapper.Map <IEnumerable <TeamForListDto> >(teams);

            Response.AddPagination(teams.CurrentPage, teams.PageSize, teams.TotalCount, teams.TotalPages);
            return(Ok(teamsToReturn));
        }