public ActionResult Create(ViewModels.Tasks.TaskResponsibleUserViewModel viewModel) { Common.Models.Tasks.TaskResponsibleUser model; Common.Models.Account.Users currentUser; Common.Models.Tasks.TaskResponsibleUser currentResponsibleUser; List <ViewModels.Account.UsersViewModel> userViewModelList; Common.Models.Tasks.Task task; ViewModels.Tasks.TaskViewModel taskViewModel; model = Mapper.Map <Common.Models.Tasks.TaskResponsibleUser>(viewModel); currentUser = Data.Account.Users.Get(User.Identity.Name); // Is there already an entry for this user? currentResponsibleUser = Data.Tasks.TaskResponsibleUser.GetIgnoringDisable( long.Parse(RouteData.Values["Id"].ToString()), currentUser.PId.Value); if (currentResponsibleUser != null) { // Update if (!currentResponsibleUser.Disabled.HasValue) { ModelState.AddModelError("User", "This user already has a responsibility."); userViewModelList = new List <ViewModels.Account.UsersViewModel>(); task = Data.Tasks.Task.Get(currentResponsibleUser.Task.Id.Value); taskViewModel = Mapper.Map <ViewModels.Tasks.TaskViewModel>(task); Data.Account.Users.List().ForEach(x => { userViewModelList.Add(Mapper.Map <ViewModels.Account.UsersViewModel>(x)); }); ViewData["UserList"] = userViewModelList; return(View(new ViewModels.Tasks.TaskResponsibleUserViewModel() { Task = taskViewModel })); } model.Id = currentResponsibleUser.Id; model.Responsibility = model.Responsibility; // Remove disability model = Data.Tasks.TaskResponsibleUser.Enable(model, currentUser); // Update responsibility model = Data.Tasks.TaskResponsibleUser.Edit(model, currentUser); } else { // Insert model = Data.Tasks.TaskResponsibleUser.Create(model, currentUser); } return(RedirectToAction("ResponsibleUsers", "Tasks", new { Id = model.Task.Id.Value.ToString() })); }
public ActionResult Delete(Guid id, ViewModels.Tasks.TaskResponsibleUserViewModel viewModel) { Common.Models.Account.Users currentUser; Common.Models.Tasks.TaskResponsibleUser model; currentUser = Data.Account.Users.Get(User.Identity.Name); model = Data.Tasks.TaskResponsibleUser.Get(id); model = Data.Tasks.TaskResponsibleUser.Disable(model, currentUser); return(RedirectToAction("ResponsibleUsers", "Tasks", new { Id = model.Task.Id.Value })); }