Пример #1
0
        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));
        }
Пример #2
0
        public async Task <ActionResult <FilmeCadastro> > Adicionar(FilmeCadastro filmeViewModel)
        {
            if (!ModelState.IsValid)
            {
                return(CustomResponse(ModelState));
            }

            await _repository.Adicionar(_mapper.Map <Filme>(filmeViewModel));

            return(CustomResponse(filmeViewModel));
        }
Пример #3
0
        public void Persistir(FilmeVM filmeVM)
        {
            var filme = _mapper.Map <Filme>(filmeVM);

            if (filme.id == Guid.Empty)
            {
                _filmeRepository.Adicionar(filme);
            }
            else
            {
                _filmeRepository.Update(filme);
            }
        }
Пример #4
0
        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);
        }
Пример #5
0
        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);
        }