Пример #1
0
 private void CompareSubTask(SubTaskDTO expected, SubTaskDTO actual)
 {
     Assert.Equal(expected.Name, actual.Name);
     Assert.Equal(expected.Description, actual.Description);
     Assert.Equal(expected.State, actual.State);
     Assert.Equal(expected.StartDate, actual.StartDate);
     Assert.Equal(expected.FinishDate, actual.FinishDate);
 }
Пример #2
0
 private void WriteSubTask(IRow row, SubTaskDTO subTask, int headerOffset)
 {
     row.CreateCell(headerOffset++).SetCellValue(subTask.Name);
     row.CreateCell(headerOffset++).SetCellValue(subTask.Description);
     row.CreateCell(headerOffset++).SetCellValue(subTask.State.ToString());
     row.CreateCell(headerOffset++).SetCellValue(subTask.StartDate);
     row.CreateCell(headerOffset++).SetCellValue(subTask.FinishDate?.ToString() ?? string.Empty);
     row.CreateCell(headerOffset++).SetCellValue(subTask is TaskDTO dto ? string.Join(", ", dto.SubTasks.Select(x => x.Name)) : string.Empty);
 }
Пример #3
0
 public SubTaskViewModel CreateSubTask(SubTaskDTO subTaskDto)
 {
     return(new SubTaskViewModel()
     {
         Id = subTaskDto.Id,
         Name = subTaskDto.Name,
         Description = subTaskDto.Description,
         IsDone = subTaskDto.IsDone
     });
 }
 public SubTask CreateSubTask(SubTaskDTO subTaskDto)
 {
     return(new SubTask()
     {
         Id = subTaskDto.Id,
         Name = subTaskDto.Name,
         Description = subTaskDto.Description,
         IsDone = subTaskDto.IsDone,
         TaskId = subTaskDto.TaskId
     });
 }
Пример #5
0
        public SubTaskDTO UpdateSubTask(SubTaskDTO subTaskDTO, int id)
        {
            SubTask subTask = subTaskFactory.CreateSubTask(subTaskDTO);

            var result = Database.SubTasks.Update(subTask);

            if (result.Status == DAL.RepositoryActionStatus.Updated)
            {
                var updatedSubTask = subTaskFactory.CreateSubTask(result.Entity);
                return(updatedSubTask);
            }
            else if (result.Status == DAL.RepositoryActionStatus.NotFound)
            {
                throw new ValidationException("Subtask not found", "");
            }
            throw new DatabaseException("", "");
        }
Пример #6
0
 public IHttpActionResult PostSubTask([FromBody] SubTaskDTO subtask)
 {
     try
     {
         if (subtask == null)
         {
             return(BadRequest());
         }
         SubTaskDTO result = subTaskService.AddSubTask(subtask);
         return(Created(Request.RequestUri + "/" + result.Id.ToString(), result));
     }
     catch (ValidationException)
     {
         return(BadRequest());
     }
     catch (Exception)
     {
         return(InternalServerError());
     }
 }
Пример #7
0
        public SubTaskDTO AddSubTask(SubTaskDTO subTaskDTO)
        {
            //Task task = Database.Tasks.Get(subTaskDTO.TaskId);

            //// Validation
            //if (task == null)
            //{
            //    throw new ValidationException("Task does not exists!", "");
            //}
            SubTask subTask = subTaskFactory.CreateSubTask(subTaskDTO);

            var result = Database.SubTasks.Create(subTask);

            if (result.Status == DAL.RepositoryActionStatus.Created)
            {
                var newSubTask = subTaskFactory.CreateSubTask(result.Entity);
                return(newSubTask);
            }
            else
            {
                throw new ValidationException("", "");
            }
        }
Пример #8
0
        public SubTaskDTO PatchSubTask(int id, JsonPatchDocument <SubTaskDTO> jsonPatchDocument)
        {
            var subtask = Database.SubTasks.Get(id);

            if (subtask == null)
            {
                throw new ValidationException("Subtask not found", "");
            }

            //Creating DTO to apply json-patch
            var subTaskDTO = subTaskFactory.CreateSubTask(subtask);

            jsonPatchDocument.ApplyTo(subTaskDTO);

            // To update entity we should create SubTask object form patched DTO
            var result = Database.SubTasks.Update(subTaskFactory.CreateSubTask(subTaskDTO));

            if (result.Status == DAL.RepositoryActionStatus.Updated)
            {
                SubTaskDTO updatedSubTask = subTaskFactory.CreateSubTask(result.Entity);
                return(updatedSubTask);
            }
            throw new DatabaseException("Somethig wrong on database side", "");
        }
Пример #9
0
 public IHttpActionResult PutSubTask([FromBody] SubTaskDTO subTaskDTO, int id)
 {
     try
     {
         if (subTaskDTO == null)
         {
             return(BadRequest());
         }
         var result = subTaskService.UpdateSubTask(subTaskDTO, id);
         return(Ok(result));
     }
     catch (ValidationException)
     {
         return(NotFound());
     }
     catch (DatabaseException)
     {
         return(BadRequest());
     }
     catch (Exception)
     {
         return(BadRequest());
     }
 }