public static void ValidaFilme(FilmeModel filme)
 {
     if (filme == null)
     {
         throw new FilmeInvalidoExceptions();
     }
 }
Exemplo n.º 2
0
        public FilmeModel GetMovie(int id)
        {
            string query = "SELECT id, titulo, duracao, sinopse, imagem_link, nota, capa_link, ano_lancamento FROM filmes WHERE id = @id";

            SqlCommand cmd = new SqlCommand()
            {
                CommandType = CommandType.Text,
                CommandText = query
            };

            cmd.Parameters.AddWithValue("@id", id);

            DataTable dt = FillDataTable(cmd);

            FilmeModel filme = dt.AsEnumerable().Select(row => new FilmeModel
            {
                Id             = row.Field <int>("id"),
                Titulo         = row.Field <string>("titulo"),
                Duracao        = row.Field <TimeSpan>("duracao"),
                LinkBackground = row.Field <string>("imagem_link"),
                LinkCapa       = row.Field <string>("capa_link"),
                Sinopse        = row.Field <string>("sinopse"),
                Nota           = row.Field <decimal>("nota"),
                Ano            = row["ano_lancamento"] == DBNull.Value ? null : row.Field <int>("ano_lancamento").ToString()
            }).ToList().FirstOrDefault();

            return(filme);
        }
Exemplo n.º 3
0
        public void TestarVencedorSegundoLugar()
        {
            business = new FilmeBusiness();
            FilmeModel filme = business.DefinirVencedor(FilmesMock.FilmesCasoTeste())[1];

            Assert.True(filme.IsDeepEqual(FilmesMock.FilmeVencedor2));
        }
Exemplo n.º 4
0
        public IActionResult Post([FromBody] PaginationUnselectedFilmeModel paginationModel)
        {
            try
            {
                if (!paginationModel.IsValid())
                {
                    return(BadRequest("Informe corretamente os campos de pesquisa."));
                }

                IEnumerable <FilmeModel> listFilmeModel = FilmeModel.ToListModel(_filmeBusiness.PaginationUnselectedFilmes(paginationModel.Search(),
                                                                                                                           paginationModel.Skip,
                                                                                                                           paginationModel.Take,
                                                                                                                           FilmeModel.ToListDomain(paginationModel.filmesSelecionados)));

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

                return(Ok(ListBodyModel <FilmeModel> .ToBodyList(listFilmeModel)));
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex.Message));
            }
        }
Exemplo n.º 5
0
        public HttpResponseMessage BuscarFilme(int value)
        {
            if (value == 0)
            {
                return(Request.CreateResponse(HttpStatusCode.NotFound, $"mensagem: valor não informado"));
            }

            try
            {
                FilmeModel         filme   = movieDAO.GetMovie(value);
                List <string>      generos = movieDAO.GetGenres(value);
                List <SessaoModel> sessoes = movieDAO.GetSessions(value);

                if (filme != null)
                {
                    filme.Generos = generos.Count > 0 ? generos : null;
                    filme.Sessoes = sessoes.Count > 0 ? sessoes : null;

                    return(Request.CreateResponse(HttpStatusCode.OK, filme));
                }
            }
            catch (Exception ex)
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest, ex));
            }

            return(Request.CreateResponse(HttpStatusCode.NotFound, $"mensagem: filme não encontrado"));
        }
Exemplo n.º 6
0
        public IActionResult Filme(int id)
        {
            var        filme    = filmeService.Details(id);
            IMapper    iMapper  = autoMap.Configure().CreateMapper();
            FilmeModel filmeMod = iMapper.Map <FilmeModel>(filme); //Mapper.Map<FilmeModel>(filme);

            return(View(filmeMod));
        }
Exemplo n.º 7
0
        internal PartidaBuilder ComEmpateNota()
        {
            decimal notaEmpate = UtilFaker.Nota();

            _desafiante = _filmeModelFaker.ComNota(notaEmpate).Generate();
            _desafiado  = _filmeModelFaker.ComNota(notaEmpate).Generate();
            return(this);
        }
Exemplo n.º 8
0
 public Partida(FilmeModel desafiante, FilmeModel desafiado)
 {
     _participantes = new List <FilmeModel>
     {
         { desafiante },
         { desafiado }
     };
 }
Exemplo n.º 9
0
        public object FormularioSimples()
        {
            Filme = new FilmeModel();
            Console.Clear();

            Console.WriteLine("Informe o Nome atual do filme");
            Filme.Nome = Console.ReadLine();
            return(Filme);
        }
Exemplo n.º 10
0
        public object Buscar(object item)
        {
            var filme = (FilmeModel)item;

            FilmeModel select = Repositorios.Filmes
                                .Where(x => x.Nome.Equals(filme.Nome))
                                .SingleOrDefault();

            return(select);
        }
Exemplo n.º 11
0
        public object FormularioCompleto()
        {
            Filme = new FilmeModel();
            Console.Clear();
            Console.WriteLine("Informe o Nome");
            Filme.Nome = Console.ReadLine();

            Console.WriteLine("Informe o Ano");
            Filme.Ano = Int32.Parse(Console.ReadLine());

            return(Filme);
        }
        public IActionResult Post(FilmeModel filme)
        {
            var fimeCriado = _filmeDomainService.CadastrarFilme(filme.Titulo, filme.Ano, filme.Categoria);

            if (fimeCriado == null)
            {
                return(BadRequest("Ocorreu um erro ao cadastrar o filme"));
            }
            else
            {
                return(Created("/Filme/{fimeCriado.Id}", "Filme cadastrado com sucesso."));
            }
        }
Exemplo n.º 13
0
        internal Partida Build()
        {
            if (_desafiante is null)
            {
                _desafiante = _filmeModelFaker.Exclude(_desafiado).Generate();
            }

            if (_desafiado is null)
            {
                _desafiado = _filmeModelFaker.Exclude(_desafiante).Generate();
            }

            return(new Partida(_desafiante, _desafiado));
        }
Exemplo n.º 14
0
        public IActionResult BuscarFilmesPorId(int id)
        {
            var filme = _filmeRepositorio.Find(id);
            var model = new FilmeModel()
            {
                Id        = filme.Id,
                Ano       = filme.Ano,
                Descricao = filme.Descricao,
                Nota      = filme.Nota,
                Titulo    = filme.Titulo,
                UrlImagem = filme.UrlImagem
            };

            return(Json(new HandlerMessage(HttpStatusCode.OK, "", model)));
        }
Exemplo n.º 15
0
 // POST: api/Filme
 public IHttpActionResult Post([FromBody] FilmeModel value)
 {
     try
     {
         if (value == null)
         {
             throw new Exception("Json invalido.");
         }
         Filme f = value.ToEntity();
         _appService.Adicionar(f);
         return(Ok());
     }
     catch (Exception e)
     {
         return(BadRequest(e.Message));
     }
 }
Exemplo n.º 16
0
        public IActionResult Get(int id)
        {
            try
            {
                FilmeModel currentModel = FilmeModel.ToModel(_filmeBusiness.Get(id));

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

                return(Ok(currentModel.ToBody()));
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex.Message));
            }
        }
Exemplo n.º 17
0
        public IActionResult Post(FilmeModel newModel)
        {
            try
            {
                if (newModel != null && newModel.IsValid())
                {
                    newModel.Cadastro = DateTime.Now;
                    newModel.Ativo    = true;
                    _filmeBusiness.Add(newModel.ToDomain());
                    return(Ok(newModel.ToBody()));
                }

                return(BadRequest("Preencha corretamente todos os campos do filme."));
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex.Message));
            }
        }
Exemplo n.º 18
0
        public IActionResult Put(int id, FilmeModel editedModel)
        {
            try
            {
                Filme currentModel = _filmeBusiness.Get(id);

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

                _filmeBusiness.Edit(currentModel, editedModel.ToDomain());

                return(Ok(editedModel.ToBody()));
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex.Message));
            }
        }
Exemplo n.º 19
0
        public IActionResult AtualizarFilmes([FromBody] FilmeModel model)
        {
            var filme = _filmeRepositorio.Find(model.Id);

            filme.Nota        = model.Nota;
            filme.Titulo      = model.Titulo;
            filme.UrlImagem   = model.UrlImagem;
            filme.Ano         = model.Ano;
            filme.Descricao   = model.Descricao;
            filme.CategoriaId = model.CategoriaId;

            try
            {
                _filmeRepositorio.Update(filme);
                _filmeRepositorio.SaveChanges();
                return(Json(new HandlerMessage(HttpStatusCode.OK, "Atualizado com sucesso!", filme)));
            }
            catch (Exception ex)
            {
                return(Json(new HandlerMessage(HttpStatusCode.BadRequest, $"Erro ao Atualizar {ex.Message}")));
            }
        }
Exemplo n.º 20
0
        public IActionResult Delete(int id)
        {
            try
            {
                FilmeModel currentModel = FilmeModel.ToModel(_filmeBusiness.Get(id));

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

                if (!_filmeBusiness.FilmeJaAlugado(currentModel.ToDomain()))
                {
                    _filmeBusiness.Desactive(currentModel.ToDomain());
                    return(Ok(currentModel));
                }

                return(BadRequest("Não foi possível desativar este filme, pois ele já foi utilizado anteriormente em um ou mais aluguéis."));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Exemplo n.º 21
0
        public IActionResult BuscarTodosFilmes()
        {
            var filmes = _filmeRepositorio.BuscarFilmesComCategoria();
            var lista  = new List <FilmeModel>();

            foreach (var filme in filmes)
            {
                var model = new FilmeModel()
                {
                    Id          = filme.Id,
                    Ano         = filme.Ano,
                    Descricao   = filme.Descricao,
                    Nota        = filme.Nota,
                    Titulo      = filme.Titulo,
                    UrlImagem   = filme.UrlImagem,
                    CategoriaId = filme.CategoriaId,
                    Categoria   = filme.Categoria.Nome
                };

                lista.Add(model);
            }

            return(Json(new HandlerMessage(HttpStatusCode.OK, "", lista)));
        }
Exemplo n.º 22
0
 internal PartidaBuilder ComDesafiante(FilmeModel desafiante)
 {
     _desafiante = desafiante;
     return(this);
 }
Exemplo n.º 23
0
 protected virtual void AdicionarPartida(FilmeModel desafiante, FilmeModel desafiado)
 {
     _partidas.Add(new Partida(desafiante, desafiado));
 }
Exemplo n.º 24
0
 internal PartidaBuilder ComDesafiado(FilmeModel desafiado)
 {
     _desafiado = desafiado;
     return(this);
 }