// GET: Activity/Create/IdProject public ActionResult Create(int id) { if (id <= 0) return new HttpStatusCodeResult(HttpStatusCode.BadRequest); ViewBag.ActivityTypes = db.ActivityTypes.ToList(); ViewBag.MemberList = db.Projects.Where(p => p.ProjectID == id).SelectMany(p => p.ApplicationUsers).ToList(); var model = new CreateActivityViewModel { ProjectId = id }; return View(model); }
public async Task<ActionResult> Create(CreateActivityViewModel model) { if (ModelState.IsValid) { var userId = User.Identity.GetUserId(); ApplicationUser user = null; if (model.User != null) { user = await db.Users.FirstAsync(u => u.Id == model.User); } var activity = new Activity { Name = model.Name, ActivityType = await db.ActivityTypes.FindAsync(model.ActivityType), CreationDate = DateTime.Now, AssignedUser = user, Project = await db.Projects.FirstAsync(p => p.ProjectID == model.ProjectId), WorkingTime = model.WorkingTime, Creator = await db.Users.FirstAsync(u => u.Id == userId), ActivityStatus = Core.Models.ActivityStatus.Created }; db.Activities.Add(activity); await db.SaveChangesAsync(); return RedirectToAction("Details", "Projects", new { id = model.ProjectId }); } ViewBag.ActivityTypes = db.ActivityTypes.ToList(); ViewBag.MemberList = db.Projects.Where(p => p.ProjectID == model.ProjectId).SelectMany(p => p.ApplicationUsers).ToList(); return View(model); }