public Task <HttpResponseMessage> CriarMeta([FromBody] MetasLivrosDTO meta) { HttpResponseMessage response = null; if (!ModelState.IsValid || meta == null) { throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState)); } var metaAdicionada = _metasApplication.Add(meta); if (!metaAdicionada.ValidationResult.IsValid) { foreach (var item in metaAdicionada.ValidationResult.Erros) { ModelState.AddModelError(string.Empty, item.Message); } throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState)); } response = Request.CreateResponse(HttpStatusCode.Created, new { message = "Meta foi adicionada com sucesso!" }); var tarefa = new TaskCompletionSource <HttpResponseMessage>(); tarefa.SetResult(response); return(tarefa.Task); }
/// <summary> /// Método responsável por adicionar uma meta /// </summary> /// <param name="metasDto">Entidade MetasPorLivrosDTO</param> public MetasLivrosDTO Add(MetasLivrosDTO metasDto) { var metas = Mapper.Map <MetasLivrosDTO, MetasPorLivros>(metasDto); var metaDominio = _metasService.Add(metas); var metaDto = Mapper.Map(metaDominio, metasDto); return(metaDto); }
/// <summary> /// Método responsável por atualizar informações da meta /// </summary> /// <param name="metasDto">DTO da Meta</param> public MetasLivrosDTO Update(MetasLivrosDTO metasDto) { var metas = Mapper.Map <MetasLivrosDTO, MetasPorLivros>(metasDto); var metaSemAtualizar = _metasService.GetById(metas.MetaId); metaSemAtualizar.MetaCumprida = metas.MetaCumprida; metaSemAtualizar.PaginasDiarias = metas.PaginasDiarias; metaSemAtualizar.CapitulosDiarios = metas.CapitulosDiarios; metaSemAtualizar.PaginasOuCapitulosLidos = metas.PaginasOuCapitulosLidos; metaSemAtualizar.Descricao = metas.Descricao; var metaAtualizada = _metasService.Update(metaSemAtualizar); return(Mapper.Map <MetasPorLivros, MetasLivrosDTO>(metaAtualizada)); }