// POST: SubtaskLevel1 public ActionResult Save(SubTasksLevel1 subTask) { string action = "Edit"; string controller = "Tasks"; int procId = subTask.TaskId; if (!ModelState.IsValid) { var viewModel = new SubtaskLevel1ViewModel(subTask) { }; return(View("SubTaskLevel1FormNew", viewModel)); } if (subTask.SubTaskId == 0) { _context.SubTasksLevel1.Add(subTask); } else { var subTaskInDb = _context.SubTasksLevel1.Single(s => s.SubTaskId == subTask.SubTaskId); subTaskInDb.SubTaskName = subTask.SubTaskName; subTaskInDb.SubTaskDescription = subTask.SubTaskDescription; subTaskInDb.SubTaskOrder = subTask.SubTaskOrder; subTaskInDb.MemberId = subTask.MemberId; subTaskInDb.PriceId = subTask.PriceId; subTaskInDb.TaskId = subTask.TaskId; subTaskInDb.Notes = subTask.Notes; subTaskInDb.IsCompleted = subTask.IsCompleted; if (subTask.IsCompleted) { var updateMainTask = new CheckIfTaskIsDone(); updateMainTask.UpdateParentTask(subTask.TaskId); //check if all subtasks are done subTaskInDb.TaskStatusId = TaskCompleted; } else { subTaskInDb.TaskStatusId = 3; } if (subTask.TimeWorked != null) { if (subTask.TimeWorked != subTaskInDb.TimeWorked) //from Work Log { action = "LogWork"; controller = "SubtaskLevel1"; procId = subTask.SubTaskId; } } subTaskInDb.TimeWorked = subTask.TimeWorked; } _context.SaveChanges(); return(RedirectToAction(action, controller, new { id = procId })); }
public SubtaskLevel1ViewModel(SubTasksLevel1 subTask) { SubTaskId = subTask.SubTaskId; SubTaskName = subTask.SubTaskName; SubTaskDescription = subTask.SubTaskDescription; TaskId = subTask.TaskId; MemberId = subTask.MemberId; DateCreated = subTask.DateCreated; Hours = subTask.Hours; PriceId = subTask.PriceId; SubTaskOrder = subTask.SubTaskOrder; TimeWorked = subTask.TimeWorked; Notes = subTask.Notes; IsCompleted = subTask.IsCompleted; }
public ViewResult New(int taskId, int subTaskId) { var viewModel = new TaskProcedureViewModel(); SQL.TMSMiscSQL miscSQL = new SQL.TMSMiscSQL(); Tasks parentTask = _context.Tasks.FirstOrDefault(t => t.TaskId == taskId); SubTasksLevel1 parentSubTask = _context.SubTasksLevel1.FirstOrDefault(s => s.SubTaskId == subTaskId); viewModel.TaskId = taskId; viewModel.SubTaskId = subTaskId; viewModel.TaskName = parentTask.TaskName; viewModel.SubTaskName = parentSubTask.SubTaskName; viewModel.TaskProcedureOrder = miscSQL.GetCurrentTaskProcOrder(subTaskId) + 1; return(View("TaskProceduresForm", viewModel)); }
// POST: SubtaskLevel1 public ActionResult Save(SubTasksLevel1 subTask) { string action = "Edit"; string controller = "Tasks"; int procId = subTask.TaskId; if (!ModelState.IsValid) { //fix 05.03.18 - Model is emptied after saving var viewModel = new SubtaskLevel1ViewModel(subTask) { Prices = _context.Prices.ToList(), Members = _context.Members.ToList(), Tasks = _context.Tasks.ToList(), TaskStatuses = _context.TaskStatuses.ToList() }; return(View("SubTaskLevel1FormNew", viewModel)); } if (subTask.SubTaskId == 0) { subTask.StartedOn = DateTime.Now; //KLUDGE - Remove _context.SubTasksLevel1.Add(subTask); } else { var subTaskInDb = _context.SubTasksLevel1.Single(s => s.SubTaskId == subTask.SubTaskId); subTaskInDb.SubTaskName = subTask.SubTaskName; subTaskInDb.SubTaskDescription = subTask.SubTaskDescription; subTaskInDb.SubTaskOrder = subTask.SubTaskOrder; subTaskInDb.MemberId = subTask.MemberId; subTaskInDb.PriceId = subTask.PriceId; subTaskInDb.TaskId = subTask.TaskId; subTaskInDb.Notes = subTask.Notes; subTaskInDb.IsCompleted = subTask.IsCompleted; subTaskInDb.DateCreated = subTask.DateCreated; subTaskInDb.StartedOn = DateTime.Now; //KLUDGE - Remove if (subTask.IsCompleted) { var updateMainTask = new SQL.CheckIfTaskIsDone(); updateMainTask.UpdateParentTask(subTask.TaskId); //check if all subtasks are done subTaskInDb.TaskStatusId = TaskCompleted; } else { subTaskInDb.TaskStatusId = 3; } if (subTask.TimeWorked != null) { if (subTask.TimeWorked != subTaskInDb.TimeWorked) //from Work Log { action = "LogWork"; controller = "SubtaskLevel1"; procId = subTask.SubTaskId; } } subTaskInDb.TimeWorked = subTask.TimeWorked; } _context.SaveChanges(); return(RedirectToAction(action, controller, new { id = procId })); }