//[Authorize(Policy = "DeveloperPolicy")] public async Task <IActionResult> AddUserToProject(int projectId) { GlobalVar.ProjectId = projectId; var project = projectRepository.GetProject(GlobalVar.ProjectId); GlobalVar.Project = project; var currentUserId = userManager.GetUserId(HttpContext.User); var currentUser = await userManager.FindByIdAsync(currentUserId); var claims = await userManager.GetClaimsAsync(currentUser); GlobalVar.globalCurrentUserClaims = claims.ToList(); var UserIsDeveloperLevel = UserClaimsLevel.IsDeveloper(claims.ToList(), projectId); if (UserIsDeveloperLevel == false) { return(RedirectToAction("AccessDenied", "Account")); } var viewModel = new AddUserToProjectViewModel { ProjectId = projectId }; return(View(viewModel)); }
public async Task <IActionResult> RemoveUserToProject(AddUserToProjectViewModel model) { if (ModelState.IsValid) { await service.RemoveUserToProject(model); return(RedirectToAction("DisplayAllUsers")); } return(View()); }
public async Task AddUserToProject(AddUserToProjectViewModel model) { if (model.UserId == null) { throw new NullReferenceException($"No user with id:{model.UserId}"); } var newCombo = new UserProject(); newCombo.ProjectId = model.ProjectId; newCombo.UserId = model.UserId; await dbContext.UserProjects.AddAsync(newCombo); await dbContext.SaveChangesAsync(); }
public async Task RemoveUserToProject(AddUserToProjectViewModel model) { if (model.UserId == null) { throw new NullReferenceException($"No user with id:{model.UserId}"); } var removeCombo = await dbContext.UserProjects.FirstOrDefaultAsync(up => up.UserId == model.UserId && up.ProjectId == model.ProjectId); if (removeCombo == null) { throw new NullReferenceException($"Not Found"); } dbContext.UserProjects.Remove(removeCombo); await dbContext.SaveChangesAsync(); }
public async Task <IActionResult> RemoveUserToProject(string id) { var findUser = await service.FindUser(id); if (findUser == null) { return(NotFound()); } ViewBag.UserName = findUser.UserName; var newCombo = new AddUserToProjectViewModel { UserId = id }; IEnumerable <Project> projectIdToSelect = service.ProjectIdToSelect(); ViewData["ProjectId"] = new SelectList(projectIdToSelect, "Id", "Id", newCombo.ProjectId); return(View(newCombo)); }
public ActionResult AddUserToProject(int?idProject, string idUser) { if (idProject != null) { ViewBag.ProjectName = db.Project.Where(p => p.id == idProject).Select(p => p.name).Single(); getUserWithoutProjectDropDown(idProject); } if (idUser != null) { ViewBag.UserName = db.AspNetUsers.Where(u => u.Id == idUser).Select(u => u.UserName).Single(); getProjectWithoutUserDropDown(idUser); } if (idProject <= 0 && idUser == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var roleDropDown = db.AspNetRoles; List <SelectListItem> itemsRole = new List <SelectListItem>(); foreach (var u in roleDropDown) { SelectListItem a = new SelectListItem(); a.Text = u.Name.ToString(); a.Value = u.Id.ToString(); itemsRole.Add(a); } ViewBag.DropRole = new SelectList(itemsRole.AsEnumerable(), "Value", "Text"); AddUserToProjectViewModel model = new AddUserToProjectViewModel { IdProject = idProject, IdUser = idUser, dropListProject = ViewBag.projectList, dropListUser = ViewBag.userList }; return(View(model)); }
public async Task <IActionResult> AddUser([FromBody] AddUserToProjectViewModel viewModel) { await projectService.AddUserToProject(viewModel.ProjectId, viewModel.UserId, viewModel.IsOwner); return(new OkResult()); }
public async Task <ActionResult> AddUserToProject(AddUserToProjectViewModel model) { //Save the date in table User roles UserRole userRole = new UserRole(); if (model.IdProject != null) { userRole.id_project = (int)model.IdProject; userRole.UserId = model.DropIdUser; userRole.RoleId = model.DropIdRole; userRole.date = DateTime.Now; db.UserRole.Add(userRole); await db.SaveChangesAsync(); ViewBag.Message = "O utilizador foi adicionado com sucesso."; ViewBag.Class = "alert-success"; ViewBag.ProjectName = db.Project.Where(p => p.id == model.IdProject).Select(p => p.name).Single(); getUserWithoutProjectDropDown(model.IdProject); } if (model.IdUser != null) { userRole.id_project = model.DropIdProject; userRole.UserId = model.IdUser; userRole.RoleId = model.DropIdRole; userRole.date = DateTime.Now; db.UserRole.Add(userRole); await db.SaveChangesAsync(); ViewBag.Message = "O utilizador foi adicionado com sucesso."; ViewBag.Class = "alert-success"; ViewBag.UserName = db.AspNetUsers.Where(u => u.Id == model.IdUser).Select(u => u.UserName).Single(); getProjectWithoutUserDropDown(model.IdUser); } var userDropDown = db.AspNetUsers; var roleDropDown = db.AspNetRoles; List <SelectListItem> itemsRole = new List <SelectListItem>(); foreach (var u in roleDropDown) { SelectListItem a = new SelectListItem(); a.Text = u.Name.ToString(); a.Value = u.Id.ToString(); itemsRole.Add(a); } ViewBag.DropRole = new SelectList(itemsRole.AsEnumerable(), "Value", "Text"); //AddUserToProjectViewModel modelF = new AddUserToProjectViewModel //{ // IdProject = model.IdProject, // IdUser = model.IdUser, // DropIdRole = "", // DropIdUser = "" //}; return(View()); }