Пример #1
0
        public Team CreateTeam(Team team)
        {
            if (_teamRepo.All().Any(i => i.Name == team.Name.Trim()))
               {
               throw new ApplicationException(string.Format("A Team called {0} already exists.", team.Name));
               }

               Data.AvatarType avatar = null;
               if(!String.IsNullOrEmpty(team.AvatarName))
               {
               avatar = _teamRepo.GetAvatar(team.AvatarName);
               }
               else
               {
               avatar = _teamRepo.GetDefaultAvatar();
               }

               Data.Team newTeam = new Data.Team()
               {
               Name = team.Name,
               AvatarType = avatar
               };

               newTeam.TeamMembers.Add(new Data.TeamMember() { UserId = CurrentUserName, IsAdmin = true });

               _teamRepo.Create(newTeam);
               _teamRepo.SaveChanges();

               return new Team()
               {
               AvatarName = newTeam.AvatarType.Value,
               Id = newTeam.Id,
               Name = newTeam.Name,
               TeamLeadName = newTeam.TeamMembers.Where(i => i.IsAdmin).First().UserId
               };
        }
Пример #2
0
        internal void JoinTeam(Team team)
        {
            var teamEntry = _teamRepo.FindById(team.Id);
            if (teamEntry == null)
            {
                throw new ApplicationException("Team not found.");
            }

            string user = CurrentUserName;

            if(!teamEntry.TeamMembers.Any(i=>i.UserId == user))
            {
                teamEntry.TeamMembers.Add(new Data.TeamMember() { UserId = user, IsAdmin = false });
                _teamRepo.SaveChanges();
            }
        }
 public IHttpActionResult Put(int id, Team team)
 {
     if (ModelState.IsValid)
     {
         if (TeamLogic.TeamExists(id))
         {
             team.Id = id;
             TeamLogic.UpdateTeam(team);
             return Ok();
         }
         else
         {
             return NotFound();
         }
     }
     else
     {
         return BadRequest(ModelState);
     }
 }
Пример #4
0
 internal IEnumerable<Goal> ListGoalsForTeam(Team team)
 {
     return _goalRepository.GetGoalsForTeam(team.Id)
         .Select(i => new Goal()
         {
             Id = i.Id,
             DimensionId = i.Capabilty.DimensionId,
             DimensionText = i.Capabilty.Dimension.Name,
             CapabilityId = i.CapabiltyId,
             CapabilityText = i.Capabilty.Description,
             DueDate = i.DueDate,
             Notes = i.Description,
             Completed = i.Completed
         });
 }
 public IHttpActionResult Post(Team team)
 {
     if (ModelState.IsValid)
     {
         Team result = TeamLogic.CreateTeam(team);
         return Content<Team>(HttpStatusCode.Created, result);
     }
     else
     {
         return BadRequest(ModelState);
     }
 }