Пример #1
0
        public async Task <IActionResult> AddNewTask(CreateTodoTaskDto createTodoTaskDto)
        {
            var claimsIdentity = this.User.Identity as ClaimsIdentity;
            var userId         = claimsIdentity.Claims.ToList().FirstOrDefault(x => x.Type == "id").Value;

            createTodoTaskDto.UserId = userId;

            TodoTaskDto result = null;
            var         errors = "";

            var validator = new CreateTodoTaskValidator();
            var valRes    = validator.Validate(createTodoTaskDto);

            if (valRes.IsValid)
            {
                result = await _todoTaskService.AddTodoTaskAsync(createTodoTaskDto);
            }
            else
            {
                foreach (var error in valRes.Errors)
                {
                    errors += error.ErrorMessage + "\r\n";
                }
            }

            var response = new ApiResponse <TodoTaskDto>();

            response.Code         = result != null?201:valRes.IsValid?406:500;
            response.Data         = result;
            response.ErrorMessage = result != null?"":valRes.IsValid?"Coś poszło nie tak, sprawdź wszystkie dane i spróbuj ponownie.":errors;

            return(new JsonResult(response));
        }
Пример #2
0
 public static CreateTodoTaskCommand ToCommand(this CreateTodoTaskDto model)
 {
     return(new CreateTodoTaskCommand
     {
         Name = model.Name,
         Priority = model.Priority,
         Status = Enum.Parse <TodoTaskStatus>(model.Status.ToString())
     });
 }
Пример #3
0
 public async Task <TodoTaskDto> AddTodoTaskAsync(CreateTodoTaskDto todoTask)
 {
     try
     {
         var newTodoTask = _mapper.Map <TodoTask>(todoTask);
         return(_mapper.Map <TodoTaskDto>(await _todoTaskRepository.CreateTodoTaskAsync(newTodoTask)));
     }
     catch
     {
         return(null);
     }
 }
Пример #4
0
        public async Task <string> CreateAsync([FromBody] CreateTodoTaskDto task)
        {
            var command = task.ToCommand();

            return(await createTodoTaskHandler.HandleAsync(command));
        }