Esempio n. 1
0
        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);
            }
        }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
 public async Task AddTaskToProject(Models.ProjectTask task)
 {
     using (ApplicationDbContext context = new ApplicationDbContext())
     {
         context.ProjectTask.Add(task);
         await context.SaveChangesAsync();
     }
 }
Esempio n. 4
0
        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);
        }
Esempio n. 5
0
 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);
 }
Esempio n. 6
0
        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);
        }
Esempio n. 7
0
 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;
 }
Esempio n. 9
0
        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);
        }
Esempio n. 10
0
 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();
         }
     }
 }
Esempio n. 11
0
        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;
 }
Esempio n. 13
0
        public async Task CreateTaskAsync_ReturnsANewTask()
        {
            _todelete = await Api.CreateTaskAsync("Create Task");

            Assert.Equal("Create Task", _todelete.Name);
        }
Esempio n. 14
0
        public void CreateTask_ReturnsANewTask()
        {
            _todelete = Api.CreateTask("Create Task");

            Assert.Equal("Create Task", _todelete.Name);
        }