Beispiel #1
0
        public void AddCompletedTask(int reportId, int taskId)
        {
            if (!taskService.CheckExistence(taskId))
            {
                throw new NonexistentTask();
            }
            TaskDTO taskDto = taskService.Get(taskId);

            if (taskDto.Status != Task.TaskStatus.Resolved)
            {
                throw new NonresolvedTask();
            }
            ReportDTO reportDto = ConvertDalToBbl(repository.GetById(reportId));

            if (MyDate.GetDate().Day != reportDto.CreationDate.Day ||
                MyDate.GetDate().Month != reportDto.CreationDate.Month ||
                MyDate.GetDate().Year != reportDto.CreationDate.Year)
            {
                throw new TaskTimeIsOver();
            }
            if (reportDto.GetCompletedTasks().Contains(taskId))
            {
                throw new TaskAlreadyCompleted();
            }
            reportDto.AddCompletedTask(taskId);
            repository.Update(ConvertBblToDal(reportDto));
        }
Beispiel #2
0
 public Report ConvertBblToDal(ReportDTO entity)
 {
     return(new Report(entity.Id, entity.EmployeeId, entity.CreationDate, entity.Text, entity.GetCompletedTasks().ToArray()));
 }