Beispiel #1
0
        public async Task <ActionResult <TodoTaskResource> > Put(int id, [FromBody] TodoTaskResource saveTodoTaskResource)
        {
            var validator        = new SaveTodoTaskResourceValidator();
            var validationResult = await validator.ValidateAsync(saveTodoTaskResource);

            var requestIsInvalid = id == 0 || !validationResult.IsValid;

            if (requestIsInvalid)
            {
                return(BadRequest(validationResult.Errors));
            }

            var taskTodoToBeUpdate = await _todoTaskService.GetTodoTaskById(id);

            if (taskTodoToBeUpdate == null)
            {
                return(NotFound());
            }

            var todoTask = _mapper.Map <TodoTaskResource, TodoTask>(saveTodoTaskResource);

            todoTask.LastModifiedDate = DateTime.Now;
            await _todoTaskService.UpdateStatusTodoTask(taskTodoToBeUpdate, todoTask);

            var updatedTodoTask = await _todoTaskService.GetTodoTaskById(id);

            var updatedTodoTaskResource = _mapper.Map <TodoTask, TodoTaskResource>(updatedTodoTask);

            return(Ok(updatedTodoTaskResource));
        }
Beispiel #2
0
        public async Task <ActionResult <TodoTaskResource> > Post([FromForm] TodoTaskResource saveTodoTaskResource)
        {
            var validator        = new SaveTodoTaskResourceValidator();
            var validationResult = await validator.ValidateAsync(saveTodoTaskResource);

            if (!validationResult.IsValid)
            {
                return(BadRequest(validationResult.Errors));
            }

            var todoTaskToCreate = _mapper.Map <TodoTaskResource, TodoTask>(saveTodoTaskResource);

            todoTaskToCreate.IsActive         = true;
            todoTaskToCreate.CreationDate     = DateTime.Now;
            todoTaskToCreate.LastModifiedDate = DateTime.Now;
            var newTodoTask = await _todoTaskService.CreateTodoTask(todoTaskToCreate);

            var todoTask = await _todoTaskService.GetTodoTaskById(newTodoTask.TodoTaskID);

            var todoTaskResource = _mapper.Map <TodoTask, TodoTaskResource>(todoTask);

            return(Ok(todoTaskResource));
        }