// This is the view to delete a user from a project. public IActionResult DeleteUsersFromProject(int id = -1) { if (!_auth.Authorise(RolesEnum.Admin, _context)) // Authenticate the user { return(Redirect("~/Project/Dashboard")); } // Create new view model var vm = new DeleteUserFromProjectViewModel(); // Add all project names to view model vm.AllProjectNames = _context.Projects.Where(p => p.ProjectId > 0).Select(p => p.ProjectName).ToList(); if (id > 0) { // Get selected project vm.SelectedProject = _context.Projects.First(p => p.ProjectId == id).ProjectName; // Get all the user IDs in the project var userIds = _context.ProjectUsers.Where(p => p.ProjectId == id).Select(u => u.UserId).ToList(); // Get all the user objects vm.UsersInProject = _context.Users.Where(u => userIds.Contains(u.UserId)).ToList(); // Add all project names to view model vm.AllProjectNames = _context.Projects.Where(p => p.ProjectId > 0).Select(p => p.ProjectName).ToList(); } // Return the view return(View(vm)); }
public IActionResult DeleteUsersFromProject(DeleteUserFromProjectViewModel vm) { if (!_auth.Authorise(RolesEnum.Admin, _context)) // Authenticate the user { return(Redirect("~/Project/Dashboard")); } // Get the project ID var projId = _context.Projects.First(p => p.ProjectName == vm.SelectedProject).ProjectId; // Set the session project HttpContext.Session.SetString("SelectedProject", projId.ToString()); // return the view. return(Redirect($"~/ProjectManagement/DeleteUsersFromProject/{projId}")); }
public async Task <IActionResult> DeleteUser([FromBody] DeleteUserFromProjectViewModel viewModel) { await projectService.DeleteUserFromProject(viewModel.ProjectId, viewModel.UserId); return(new OkResult()); }