Ejemplo n.º 1
0
        public bool AddUserToProject(int?projectId, int?userId)
        {
            if (!IsUserAUser(projectId, userId))
            {
                _projectRepository.AddUserToProject(projectId.Value, userId.Value);
            }

            return(_projectRepository.Save());
        }
Ejemplo n.º 2
0
        public async Task <ActionResult> Create([FromBody] Dto.ProjectForCreate Project)
        {
            if (User.FindFirst(ClaimTypes.Role).Value == Config.GetSection("Role:Consultant:Name").Value)
            {
                return(Unauthorized());
            }
            bool hasUsers = false;

            if (Project == null)
            {
                return(BadRequest());
            }
            if (Project.UsersOnTheProject == null)
            {
                return(BadRequest());
            }
            if (Project.UsersOnTheProject.Count > 0)
            {
                hasUsers = true;
            }
            List <Models.User> users = new List <Models.User>();

            foreach (Dto.UserId user in Project.UsersOnTheProject)
            {
                users.Add(new Models.User {
                    Id = user.Id
                });
            }
            Models.Project ModelProject = new Models.Project {
                Name = Project.Name, CompanyId = Project.CompanyId, InProgress = Project.InProgress, Billable = Project.Billable, Overtime = Project.Overtime
            };
            if (await Repo.Create(ModelProject))
            {
                if (hasUsers)
                {
                    if (await Repo.AddUserToProject(ModelProject, users))
                    {
                        return(StatusCode(201));
                    }
                    else
                    {
                        return(BadRequest());
                    }
                }
                else
                {
                    return(StatusCode(201));
                }
            }
            return(BadRequest());
        }
Ejemplo n.º 3
0
        public async Task <IActionResult> addUserToProject([FromBody] Project project, string userName)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var res = await _proRepo.AddUserToProject(project, userName);

            if (await _proRepo.SaveAll() && res != null)
            {
                return(NoContent());
            }

            throw new Exception($"Fail to add user to project!");
        }