public IActionResult Adicionar([FromBody] FilmeViewModel pFilme) { var filme = _mapper.Map <FilmeViewModel, Filme>(pFilme); // cria mapeamento da view model com entidade via automapper. filme.Ativo = true; filme.DataCriacao = DateTime.Now; _filmeRepository.Adicionar(filme); // Add do entity framework if (filme.EhValido()) { _filmeRepository.SaveChanges(); // salva as alterações // monta um obj anonimo para retono. var retorno = new { id = filme.Id, nome = filme.Nome, genero = filme.GeneroId }; return(Response(true, retorno)); // Retorna Ok código 200 para requisição } // Retorna 400. return(Response(false, erros: filme.ValidationErrors)); }
public async Task <ActionResult <FilmeCadastro> > Adicionar(FilmeCadastro filmeViewModel) { if (!ModelState.IsValid) { return(CustomResponse(ModelState)); } await _repository.Adicionar(_mapper.Map <Filme>(filmeViewModel)); return(CustomResponse(filmeViewModel)); }
public void Persistir(FilmeVM filmeVM) { var filme = _mapper.Map <Filme>(filmeVM); if (filme.id == Guid.Empty) { _filmeRepository.Adicionar(filme); } else { _filmeRepository.Update(filme); } }
public async Task Cadastrar(Filme filme) { if (filme.Id == Guid.Empty) { throw new Exception("Id invalido"); } if (string.IsNullOrEmpty(filme.Nome)) { throw new Exception("Informe o nome do filme"); } await _filmeRepository.Adicionar(filme); }
public async Task <Filme> Adicionar(Filme filme) { if (filme == null) { return(null); } if (!filme.IsValid()) { return(filme); } var regrasFilme = new FilmeAptoParaCadastroValidation(_filmeRepository).Validate(filme); foreach (var item in regrasFilme.Errors) { filme.ValidationResult.Errors.Add(item); } filme = await _filmeRepository.Adicionar(filme); return(filme); }