public int CreateTask(CreateTaskBindingClass newTask) { // Check project belongs to user Models.Project project = _context.Projects.Where(x => x.ProjectId == newTask.ProjectId && x.CreatedBy.ToLower() == User.Identity.Name.ToLower()).FirstOrDefault(); if (project == null) { throw new Exception("Project does not exist!"); } else { Models.ProjectTask dbTask = new Models.ProjectTask() { Completed = false, CreatedBy = User.Identity.Name, CreatedWhen = DateTime.Now, Description = newTask.Description, ProjectId = newTask.ProjectId }; _context.Tasks.Add(dbTask); _context.SaveChanges(); return(dbTask.ProjectTaskId); } }
public static ProjectTask CreateFromClientToServer(this Models.ProjectTask source) { ProjectTask projectTask = new ProjectTask(); projectTask.TaskId = source.TaskId; projectTask.ProjectId = source.ProjectId; projectTask.CustomerId = source.CustomerId; projectTask.TaskNameE = source.TaskNameE; projectTask.TaskNameA = source.TaskNameA; projectTask.DescriptionE = source.DescriptionE; projectTask.DescriptionA = source.DescriptionA; projectTask.StartDate = source.StartDate == null ? (DateTime?)null : DateTime.ParseExact(source.StartDate, "dd/MM/yyyy", new CultureInfo("en")); projectTask.EndDate = source.EndDate == null ? (DateTime?)null : DateTime.ParseExact(source.EndDate, "dd/MM/yyyy", new CultureInfo("en")); projectTask.TotalCost = source.TotalCost; projectTask.TotalWeight = source.TotalWeight; projectTask.TaskProgress = source.TaskProgress; projectTask.NotesE = source.NotesE; projectTask.NotesA = source.NotesA; projectTask.RecCreatedBy = source.RecCreatedBy; projectTask.RecCreatedDt = source.RecCreatedDt; projectTask.RecLastUpdatedBy = source.RecLastUpdatedBy; projectTask.RecLastUpdatedDt = source.RecLastUpdatedDt; projectTask.PreRequisitTask = source.RequisitTasks.Select(x => x.CreateFromClientToServer()).ToList(); return(projectTask); }
public async Task AddTaskToProject(Models.ProjectTask task) { using (ApplicationDbContext context = new ApplicationDbContext()) { context.ProjectTask.Add(task); await context.SaveChangesAsync(); } }
public void CreateNewTaskAndAssign_ReturnsANewTaskAssignment() { _todelete = Api.CreateNewTaskAndAssign(GetTestId(TestId.ProjectId), "Create New Task And Assign Test"); _todeletetask = Api.Task(_todelete.TaskId); Assert.NotNull(_todelete); Assert.Equal(GetTestId(TestId.ProjectId), _todelete.ProjectId); Assert.Equal("Create New Task And Assign Test", _todeletetask.Name); }
public static Models.ProjectTask CreateFromServerToClientChild(this ProjectTask source) { Models.ProjectTask projectTask = new Models.ProjectTask(); projectTask.TaskId = source.TaskId; projectTask.ProjectId = source.ProjectId; projectTask.CustomerId = source.CustomerId; projectTask.TaskNameE = source.TaskNameE; projectTask.TaskNameA = source.TaskNameA; return(projectTask); }
public async Task CreateNewTaskAndAssignAsync_ReturnsANewTaskAssignment() { _todelete = await Api.CreateNewTaskAndAssignAsync(GetTestId(TestId.ProjectId), "Create New Task And Assign Test"); _todeletetask = await Api.TaskAsync(_todelete.TaskId); Assert.NotNull(_todelete); Assert.Equal(GetTestId(TestId.ProjectId), _todelete.ProjectId); Assert.Equal("Create New Task And Assign Test", _todeletetask.Name); }
public static Models.ProjectTask CreateFromServerToClient(this ProjectTask source) { Models.ProjectTask projectTask = new Models.ProjectTask(); projectTask.TaskId = source.TaskId; projectTask.ProjectId = source.ProjectId; projectTask.CustomerId = source.CustomerId; projectTask.TaskNameE = source.TaskNameE; projectTask.TaskNameA = source.TaskNameA; projectTask.DescriptionE = source.DescriptionE; projectTask.DescriptionA = source.DescriptionA; projectTask.StartDate = Convert.ToDateTime(source.StartDate).ToString("dd/MM/yyyy", new CultureInfo("en")); projectTask.EndDate = Convert.ToDateTime(source.EndDate).ToString("dd/MM/yyyy", new CultureInfo("en")); projectTask.TotalCost = source.TotalCost; projectTask.TotalWeight = source.TotalWeight; projectTask.TaskProgress = source.TaskProgress ?? 0; projectTask.NotesE = source.NotesE; projectTask.NotesA = source.NotesA; projectTask.RecCreatedBy = source.RecCreatedBy; projectTask.RecCreatedDt = source.RecCreatedDt; projectTask.RecLastUpdatedBy = source.RecLastUpdatedBy; projectTask.RecLastUpdatedDt = source.RecLastUpdatedDt; if (source.Project != null) { projectTask.ProjectNameE = source.Project.NameE; projectTask.ProjectNameA = source.Project.NameA; } projectTask.RequisitTasks = source.PreRequisitTask.Select(x => x.CreateFromServerToClientChild()).ToList(); if (source.TaskEmployees != null) { projectTask.TaskEmployees = source.TaskEmployees.Select(x => x.CreateFromServerToClient()).ToList(); } if (source.PreRequisitTask.Count > 0) { foreach (var preRequisitTask in source.PreRequisitTask) { projectTask.PreReqTasks = preRequisitTask.TaskNameE + " - " + projectTask.PreReqTasks; } projectTask.PreReqTasks = projectTask.PreReqTasks.Substring(0, projectTask.PreReqTasks.Length - 3); } if (source.TaskEmployees != null && source.TaskEmployees.Count > 0) { foreach (var employee in source.TaskEmployees) { projectTask.EmployeesAssigned = employee.Employee.EmployeeNameE + " - " + projectTask.EmployeesAssigned; } projectTask.EmployeesAssigned = projectTask.EmployeesAssigned.Substring(0, projectTask.EmployeesAssigned.Length - 3); } return(projectTask); }
public static Models.ProjectTask CreateFromServerToClient(this ProjectTask source) { Models.ProjectTask projectTask = new Models.ProjectTask(); projectTask.TaskId = source.TaskId; projectTask.ProjectId = source.ProjectId; projectTask.CustomerId = source.CustomerId; projectTask.TaskNameE = source.TaskNameE; projectTask.TaskNameA = source.TaskNameA; projectTask.DescriptionE = source.DescriptionE; projectTask.DescriptionA = source.DescriptionA; projectTask.StartDate = Convert.ToDateTime(source.StartDate).ToString("dd/MM/yyyy", new CultureInfo("en")); projectTask.EndDate = Convert.ToDateTime(source.EndDate).ToString("dd/MM/yyyy", new CultureInfo("en")); projectTask.TotalCost = source.TotalCost; projectTask.TotalWeight = source.TotalWeight; projectTask.TaskProgress = source.TaskProgress ?? 0; projectTask.NotesE = source.NotesE; projectTask.NotesA = source.NotesA; projectTask.RecCreatedBy = source.RecCreatedBy; projectTask.RecCreatedDt = source.RecCreatedDt; projectTask.RecLastUpdatedBy = source.RecLastUpdatedBy; projectTask.RecLastUpdatedDt = source.RecLastUpdatedDt; if (source.Project != null) { projectTask.ProjectNameE = source.Project.NameE; projectTask.ProjectNameA = source.Project.NameA; } projectTask.RequisitTasks = source.PreRequisitTask.Select(x => x.CreateFromServerToClientChild()).ToList(); if (source.TaskEmployees != null) { projectTask.TaskEmployees = source.TaskEmployees.Select(x => x.CreateFromServerToClient()).ToList(); } if (source.PreRequisitTask.Count > 0) { foreach (var preRequisitTask in source.PreRequisitTask) { projectTask.PreReqTasks = preRequisitTask.TaskNameE + " - " + projectTask.PreReqTasks; } projectTask.PreReqTasks = projectTask.PreReqTasks.Substring(0, projectTask.PreReqTasks.Length - 3); } if (source.TaskEmployees != null && source.TaskEmployees.Count > 0) { foreach (var employee in source.TaskEmployees) { projectTask.EmployeesAssigned = employee.Employee.EmployeeNameE + " - " + projectTask.EmployeesAssigned; } projectTask.EmployeesAssigned = projectTask.EmployeesAssigned.Substring(0, projectTask.EmployeesAssigned.Length - 3); } return projectTask; }
public void UpdateTask_UpdatesOnlyChangedValues() { _todelete = Api.CreateTask("Update Task", billableByDefault: true, isDefault: false); var updated = Api.UpdateTask(_todelete.Id, name: "Updated Task", isDefault: true); // stuff changed Assert.NotEqual(_todelete.Name, updated.Name); Assert.Equal("Updated Task", updated.Name); Assert.NotEqual(_todelete.IsDefault, updated.IsDefault); Assert.Equal(true, updated.IsDefault); // stuff didn't change Assert.Equal(_todelete.BillableByDefault, updated.BillableByDefault); Assert.Equal(_todelete.DefaultHourlyRate, updated.DefaultHourlyRate); }
public async Task EditProjectTask(Models.ProjectTask task) { using (ApplicationDbContext context = new ApplicationDbContext()) { var update = context.ProjectTask.Find(task.Id); if (update != null) { update.ConstructionTask = task.ConstructionTask; update.IsCompleted = task.IsCompleted; update.IsDeleted = task.IsDeleted; update.ProjectId = task.ProjectId; update.DateAssigned = task.DateAssigned; update.DueDate = task.DueDate; await context.SaveChangesAsync(); } } }
public async Task <ActionResult> Create(Models.ProjectTask task) { task.Id = Guid.NewGuid(); task.DateAssigned = DateTime.Now; if (ModelState.IsValid) { try { await _project.AddTaskToProject(task); return(RedirectToAction("IndexForeman")); } catch { return(RedirectToAction("BadRequest", "Home")); } } if (task.ConstructionTask == Guid.Empty) { ViewBag.ConTask = new SelectList(await _project.GetTasks(), "Id", "TaskName"); } else { ViewBag.ConTask = new SelectList(await _project.GetTasks(), "Id", "TaskName", task.ConstructionTask); } if (string.IsNullOrEmpty(task.WorkerId)) { ViewBag.Workers = new SelectList(await _project.GetWorkers(), "Key", "Value"); } else { ViewBag.Workers = new SelectList(await _project.GetWorkers(), "Key", "Value", task.WorkerId); } return(View(task)); }
public static Models.ProjectTask CreateFromServerToClientForEmployee(this ProjectTask source) { Models.ProjectTask projectTask = new Models.ProjectTask(); projectTask.TaskId = source.TaskId; projectTask.ProjectId = source.ProjectId; projectTask.CustomerId = source.CustomerId; projectTask.ProjectNameE = source.Project.NameE; projectTask.ProjectNameA = source.Project.NameA; projectTask.TaskNameE = source.TaskNameE; projectTask.TaskNameA = source.TaskNameA; return projectTask; }
public async Task CreateTaskAsync_ReturnsANewTask() { _todelete = await Api.CreateTaskAsync("Create Task"); Assert.Equal("Create Task", _todelete.Name); }
public void CreateTask_ReturnsANewTask() { _todelete = Api.CreateTask("Create Task"); Assert.Equal("Create Task", _todelete.Name); }