public ActionResult UserManagement(int id)
        {
            var actions = new List <string>
            {
                "Assign",
                "Remove"
            };

            var users = _context.Users.Include(u => u.Roles).Include(u => u.Projects).ToList();

            foreach (var user in users.ToList())
            {
                foreach (var role in user.Roles)
                {
                    if (role.RoleId == "759a9587-8b75-4209-a5eb-3f4e57e3a3fc" || role.RoleId == "6b8ce7f4-726d-4fc7-8fd9-2e4f09b9e066")
                    {
                        users.Remove(user);
                    }
                }
            }

            var viewModel = new ProjectAssignmentViewModel
            {
                Project = _context.Projects.SingleOrDefault(p => p.Id == id),
                Users   = users,
                Roles   = _context.Roles.ToList(),
                Actions = actions
            };

            return(View(viewModel));
        }
Esempio n. 2
0
        public async Task AssignProjectItemsToTeam(int projectId, ProjectAssignmentViewModel model)
        {
            var jsonContent = new StringContent(JsonConvert.SerializeObject(model), System.Text.Encoding.UTF8, "application/json");

            var response = await _apiClient.PostAsync($"{_apiUrl}/projects/{projectId}", jsonContent);

            response.EnsureSuccessStatusCode();
        }
        public void RemoveProjectFromUsers(ProjectAssignmentViewModel viewModel)
        {
            var project = _context.Projects.SingleOrDefault(p => p.Id == viewModel.ProjectId);

            foreach (var userID in viewModel.SelectedUsers)
            {
                var user = _context.Users.SingleOrDefault(u => u.Id == userID);
                if (user.Projects.Contains(project))
                {
                    user.Projects.Remove(project);
                }
                _context.SaveChanges();
            }
        }
Esempio n. 4
0
        public async Task <IActionResult> AssignToTeam(int id, ProjectAssignmentViewModel model)
        {
            //if (!ModelState.IsValid)
            //{
            //    return PartialView("_AssignToTeam", model);
            //}

            var teamId = model.TeamId;

            if (teamId > 0)
            {
                await _apiService.AssignProjectItemsToTeam(id, model);
            }

            return(RedirectToAction(nameof(Details), new { id = id }));
        }
Esempio n. 5
0
        public async Task <IActionResult> AssignToTeam(int id)
        {
            var allTeams = await _apiService.GetAllTeams();

            ProjectAssignmentViewModel model = new ProjectAssignmentViewModel();

            model.Teams = allTeams
                          .Where(d => d.Status == TeamStatus.Active)
                          .Select(r => new SelectListItem
            {
                Text  = r.TeamName,
                Value = r.Id.ToString()
            }).ToList();

            return(PartialView("_AssignToTeam", model));
        }
        public RedirectToRouteResult ManageProject(ProjectAssignmentViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                return(RedirectToAction("Index"));
            }

            if (viewModel.Action == "Assign")
            {
                AssignProjectToUsers(viewModel);
                return(RedirectToAction("Index"));
            }
            else
            {
                RemoveProjectFromUsers(viewModel);
                return(RedirectToAction("Index"));
            }
        }
Esempio n. 7
0
 public IActionResult AddProjectMember(int id, ProjectAssignmentViewModel model)
 {
     if (ModelState.IsValid)
     {
         var project    = _context.Projects.SingleOrDefault(x => x.ProjectId == id);
         var individual = _context.ApplicationUsers.SingleOrDefault(x => x.Email == model.SearchEmail);
         if (individual != null && project != null)
         {
             var Project_Assignment = new ProjectAssignment();
             Project_Assignment.EmployeeId = individual.Id;
             Project_Assignment.ProjectId  = project.ProjectId;
             Project_Assignment.Status     = "Pending";
             _context.ProjectAssignment.Add(Project_Assignment);
             _context.SaveChanges();
             return(RedirectToAction("ProjectMembers", new { Id = id }));
         }
         else
         {
         }
     }
     return(View(model));
 }
 public IHttpActionResult UpdateProjectAssign(ProjectAssignmentViewModel model)
 {
     _itService.UpdateProjectAssign(model.ToServiceRequestModel());
     return(Ok());
 }
Esempio n. 9
0
        public ActionResult GetProjectAssignmentDetails(string id)
        {
            var projAssignment = new ProjectAssignmentViewModel().Initialize(this.projectService, this.personService, id);

            return(PartialView("~/Views/Projects/Partials/_ProjectAssignments.cshtml", projAssignment));
        }
Esempio n. 10
0
        public async Task <IHttpActionResult> ProjectAssignUpdate(ProjectAssignmentViewModel model)
        {
            await WebApiService.Instance.PostAsync("it/projectassign/update", model);

            return(Ok());
        }