Пример #1
0
        // 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));
        }
Пример #2
0
        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}"));
        }
Пример #3
0
        public async Task <IActionResult> DeleteUser([FromBody] DeleteUserFromProjectViewModel viewModel)
        {
            await projectService.DeleteUserFromProject(viewModel.ProjectId, viewModel.UserId);

            return(new OkResult());
        }