public async Task <ActionResult> Edit([Bind(Include = "Id,Title,Description,Created,Updated,ProjectId,TicketTypeId,TicketPriorityId,TicketStatusId,OwnerUserId,AssignedToId")] Tickets model) { var user = db.Users.Find(User.Identity.GetUserId()); ProjectHelper HistoryHelp = new ProjectHelper(db); var tickets = db.Tickets.Find(model.Id); var noty = new TicketNotifications(); noty.open = false; if (!(tickets.Title == model.Title) || (tickets.TicketPriorityId == model.TicketPriorityId) || (tickets.TicketStatusId == model.TicketStatusId) || (tickets.AssignedToId == model.AssignedToId) || (tickets.ProjectId == model.ProjectId) || (tickets.TicketTypeId == model.TicketTypeId)) { HistoryHelp.AddHistory(tickets.Id, user.Id, tickets.Title, model.Title, "Title"); HistoryHelp.AddHistory(tickets.Id, user.Id, tickets.TicketPriorityId.ToString(), model.TicketPriorityId.ToString(), "TicketPriority"); HistoryHelp.AddHistory(tickets.Id, user.Id, tickets.TicketStatusId.ToString(), model.TicketStatusId.ToString(), "TicketStatus"); HistoryHelp.AddHistory(tickets.Id, user.Id, tickets.TicketTypeId.ToString(), model.TicketTypeId.ToString(), "TicketType"); HistoryHelp.AddHistory(tickets.Id, user.Id, tickets.ProjectId.ToString(), model.ProjectId.ToString(), "Project"); HistoryHelp.AddHistory(tickets.Id, user.Id, tickets.Description, model.Description, "Description"); HistoryHelp.AddHistory(tickets.Id, user.Id, tickets.AssignedToId, model.AssignedToId, "AssignedTo"); HistoryHelp.AddNoty(tickets.Id, user.Id, noty.open); } tickets.TicketPriorityId = model.TicketPriorityId; tickets.TicketStatusId = model.TicketStatusId; tickets.OwnerUserId = user.Id; tickets.Created = tickets.Created = DateTime.Now; db.Tickets.Add(model); //tickets.Id = model.Id; var currproject = db.Projects.Find(tickets.ProjectId); if (ModelState.IsValid) { db.Entry(tickets).State = EntityState.Modified; db.SaveChanges(); //Send Email var svc = new EmailService(); var msg = new IdentityMessage(); msg.Subject = "Edits"; msg.Body = "\r\n You're ticket titled," + tickets.Title + "was edited." + "\r\n"; msg.Destination = currproject.Users.Select(u => u.Email).ToString(); await svc.SendAsync(msg); return(RedirectToAction("myIndex", "Tickets")); } //ViewBag.AssignedToId = new SelectList(db.Users, "Id", "FirstName", tickets.AssignedToId); //ViewBag.OwnerUserId = new SelectList(db.Users, "Id", "FirstName", tickets.OwnerUserId); ViewBag.ProjectId = new SelectList(db.Projects, "Id", "Name", tickets.ProjectId); ViewBag.TicketPriorityId = new SelectList(db.TicketPriorities, "Id", "Name", tickets.TicketPriorityId); ViewBag.TicketStatusId = new SelectList(db.TicketStatuses, "Id", "Name", tickets.TicketStatusId); ViewBag.TicketTypeId = new SelectList(db.TicketTypes, "Id", "Name", tickets.TicketTypeId); return(View("myIndex", "Tickets")); }
public ActionResult Edit([Bind(Include = "Id,Title,Description,Created,Updated,ProjectId,TicketTypeId,TicketPriorityId,TicketStatusId,OwnerUserId,AssignedToId")] Tickets model) { var user = db.Users.Find(User.Identity.GetUserId()); ProjectHelper HistoryHelp = new ProjectHelper(db); var tickets = db.Tickets.Find(model.Id); var noty = new TicketNotifications(); noty.open = false; if (!(tickets.Title == model.Title) || (tickets.TicketPriorityId == model.TicketPriorityId) || (tickets.TicketStatusId == model.TicketStatusId) || (tickets.AssignedToId == model.AssignedToId) || (tickets.ProjectId == model.ProjectId) || (tickets.TicketTypeId == model.TicketTypeId)) { HistoryHelp.AddHistory(tickets.Id, user.Id, tickets.Title, model.Title, "Title"); HistoryHelp.AddHistory(tickets.Id, user.Id, tickets.TicketPriorityId.ToString(), model.TicketPriorityId.ToString(), "TicketPriority"); HistoryHelp.AddHistory(tickets.Id, user.Id, tickets.TicketStatusId.ToString(), model.TicketStatusId.ToString(), "TicketStatus"); HistoryHelp.AddHistory(tickets.Id, user.Id, tickets.TicketTypeId.ToString(), model.TicketTypeId.ToString(), "TicketType"); HistoryHelp.AddHistory(tickets.Id, user.Id, tickets.ProjectId.ToString(), model.ProjectId.ToString(), "Project"); HistoryHelp.AddHistory(tickets.Id, user.Id, tickets.Description, model.Description, "Description"); HistoryHelp.AddHistory(tickets.Id, user.Id, tickets.AssignedToId, model.AssignedToId, "AssignedTo"); HistoryHelp.AddNoty(tickets.Id, user.Id, noty.open); } tickets.TicketPriorityId = model.TicketPriorityId; tickets.TicketStatusId = model.TicketStatusId; tickets.OwnerUserId = user.Id; tickets.Created = tickets.Created = DateTime.Now; db.Tickets.Add(model); //tickets.Id = model.Id; if (ModelState.IsValid) { db.Entry(tickets).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("myIndex", "Tickets")); } //ViewBag.AssignedToId = new SelectList(db.Users, "Id", "FirstName", tickets.AssignedToId); //ViewBag.OwnerUserId = new SelectList(db.Users, "Id", "FirstName", tickets.OwnerUserId); ViewBag.ProjectId = new SelectList(db.Projects, "Id", "Name", tickets.ProjectId); ViewBag.TicketPriorityId = new SelectList(db.TicketPriorities, "Id", "Name", tickets.TicketPriorityId); ViewBag.TicketStatusId = new SelectList(db.TicketStatuses, "Id", "Name", tickets.TicketStatusId); ViewBag.TicketTypeId = new SelectList(db.TicketTypes, "Id", "Name", tickets.TicketTypeId); return(View("myIndex", "Tickets")); }