示例#1
0
        public async Task <Response> DeleteUserFromCompany(Guid companyId, Guid removeUserId, Guid currentUserId)
        {
            var currentCompanyUser = await _companiesUsersRepository.GetCompanyUser(companyId, currentUserId);

            if (currentCompanyUser == null || currentCompanyUser?.Status != MembershipStatus.SuperAdmin)
            {
                return(new ForbiddenErrorResponse(new []
                {
                    new Error
                    {
                        Code = ErrorCodes.Security.Forbidden,
                        Message = ErrorMessages.Security.Forbidden
                    }
                }));
            }

            var teams = await _teamsRepository.GetTeams(new PageModel()
            {
                Page     = 1,
                PageSize = 1000
            }, companyId);

            foreach (var team in teams.Items)
            {
                await DeleteUserFromTeam(team.Id, removeUserId, currentUserId, false);
            }

            await _companiesUsersRepository.DeleteCompanyUser(companyId, removeUserId);

            return(new Response());
        }
示例#2
0
        public IActionResult GetTeams()
        {
            try
            {
                var teams = _teamRepository.GetTeams();

                return(Ok(teams));
            }
            catch (Exception ex)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError, ex.ToString()));
            }
        }
示例#3
0
        public async Task <List <SelectListItem> > GetTeams_SelectListItem()
        {
            List <SelectListItem> selectItem = new List <SelectListItem>();
            List <Models.Teams>   teamList   = await _ITeamRepo.GetTeams();

            foreach (Models.Teams item in teamList)
            {
                selectItem.Add(new SelectListItem {
                    Text = item.TeamName, Value = item.TeamID
                });
            }

            return(selectItem);
        }
示例#4
0
        public async Task <Response <PageModel <TeamDTO> > > GetTeams(PageModel model, Guid?companyId = null)
        {
            var page = await _repository.GetTeams(model, companyId);

            var result = new PageModel <TeamDTO>
            {
                Page     = page.Page,
                PageSize = page.PageSize,
                Total    = page.Total,
                Items    = _mapper.Map <IEnumerable <TeamModel>, IEnumerable <TeamDTO> >(page.Items)
            };

            return(new Response <PageModel <TeamDTO> >
            {
                Data = result
            });
        }
示例#5
0
        public void Start(BaseGameConfiguration configuration, BaseGameBackup backup = null)
        {
            NiteLigaGameConfiguration niteLigaConfiguration = configuration as NiteLigaGameConfiguration
                                                              ?? throw new ArgumentException(nameof(configuration));

            if (Status != GameStatusType.Created)
            {
                throw new Exception("Нельзя начать игру, так как она уже была запущена.");
            }

            // Предстартовые настройки.
            if (backup != null)
            {
                throw new NotImplementedException();
            }
            else
            {
                LaunchTime = DateTime.Now;
                Status     = GameStatusType.InProgress;

                _configuration = niteLigaConfiguration;
                _newEvents     = new List <GameEvent> {
                    new GameStarted((DateTime)LaunchTime)
                };
                _storedEvents = new List <GameEvent>();

                // Собираем всю необходимую информацию о командах в контейнеры.
                List <GameTeamContainer> teamContainerList = new List <GameTeamContainer>();
                Team[] teams = _teamsRepository.GetTeams(_configuration.Settings.TeamIds);
                for (int i = 0; i < _configuration.Settings.TeamIds.Length; i++)
                {
                    long teamId = _configuration.Settings.TeamIds[i];
                    Team team   = teams.First(x => x.Id == teamId);
                    teamContainerList.Add(new GameTeamContainer
                    {
                        Order    = i,
                        Team     = team,
                        Progress = new GameTeamProgress(_configuration.Config.TaskGrid[i])
                    });
                }
                _teamsContainers = teamContainerList.ToArray();
            }

            _messagePool.NewQueue(_configuration.GameMatchId);
        }
示例#6
0
        public IEnumerable <TeamListItem> GetTeamList()
        {
            return(_teamsRepository
                   .GetTeams()
                   .AsQueryable()
                   .ProjectTo <TeamListItem>(_mappingConfig)
                   .ToList());

            //var results = new List<TeamListItem>();

            //_teamsRepository
            //    .GetTeams()
            //    .ForEach( x => results.Add( new TeamListItem
            //    {
            //        IdTeam = x.IdTeam,
            //        StrTeam = x.StrTeam
            //    } ) );

            //return results;
        }
示例#7
0
 public IEnumerable <Team> GetAllTeams()
 {
     return(teamsRepository.GetTeams());
 }
示例#8
0
 public IActionResult TeamsList()
 {
     return(View("~/Views/Teams/TeamsList.cshtml", _repositiry.GetTeams()));
 }