public ActionResult Assign(int id) { var model = new ProjectsAssign(); model.Id = id; var ticket = db.Tickets.FirstOrDefault(p => p.Id == id); var users = db.Users.ToList(); var userIdsAssignedToProject = ticket.Users.Select(p => p.Id).ToList(); model.UserList = new MultiSelectList(users, "Id", "DisplayName", userIdsAssignedToProject); return(View(model)); }
public ActionResult PMAssign(int id) { var model = new ProjectsAssign(); var aa = new IdentityRole(); var devId = db.Roles.Where(p => p.Name == "Developer").Select(p => p.Id).FirstOrDefault(); model.Id = id; var ticket = db.Tickets.FirstOrDefault(p => p.Id == id); var users = db.Users.ToList(); var DelUsers = db.Users.Where(p => p.Roles.Any(q => q.RoleId == devId)); var userIdsAssignedToProject = ticket.Users.Select(p => p.Id).ToList(); model.UserList = new MultiSelectList(DelUsers, "Id", "DisplayName", userIdsAssignedToProject); return(View("PMAssign", model)); }
public ActionResult PMAssign(ProjectsAssign model) { var ticket = db.Tickets.FirstOrDefault(p => p.Id == model.Id); var assignedUsers = ticket.Users.ToList(); var devId = db.Roles.Where(p => p.Name == "Developer").Select(p => p.Id).FirstOrDefault(); var delUsers = assignedUsers.Where(p => p.Roles.Any(r => r.RoleId == devId)); foreach (var user in delUsers) { ticket.Users.Remove(user); } if (model.SelectedUsers != null) { foreach (var userId in model.SelectedUsers) { var user = db.Users.FirstOrDefault(p => p.Id == userId); ticket.Users.Add(user); ticket.AssignedToUserId = userId; var personalEmailService = new PersonalEmailService(); var mailMessage = new MailMessage( WebConfigurationManager.AppSettings["emailto"], user.Email ); mailMessage.Body = "Please confirm your tickect as soon as possible"; mailMessage.Subject = "You have an assigned tickect"; mailMessage.IsBodyHtml = true; personalEmailService.Send(mailMessage); } } db.SaveChanges(); return(RedirectToAction("PMIndex")); }
public ActionResult Assign(ProjectsAssign model) { var project = db.Projects.FirstOrDefault(p => p.Id == model.Id); var assignedUsers = project.Users.ToList(); foreach (var user in assignedUsers) { project.Users.Remove(user); } if (model.SelectedUsers != null) { foreach (var userId in model.SelectedUsers) { var user = db.Users.FirstOrDefault(p => p.Id == userId); project.Users.Add(user); } } db.SaveChanges(); return RedirectToAction("Index"); }