Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

6.2 #26

Open
wants to merge 26 commits into
base: master
Choose a base branch
from
Open

6.2 #26

Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
26 commits
Select commit Hold shift click to select a range
b173970
Merge pull request #19 from caelum/fazendoMelhorias
analosnak Jun 24, 2019
cfa3e8e
incluind readme no projeto
alefhsousa Apr 14, 2020
59d4855
adicionando developer ao projeto
alefhsousa Apr 15, 2020
4be01aa
Merge pull request #21 from alefhsousa/add-developer
alefhsousa Apr 15, 2020
3c19a6b
adicionando prooojeto
anadeso Apr 15, 2020
218b4e2
Update README.md
anadeso Apr 15, 2020
aad79ad
adicionando developer no pom.xml
anadeso Apr 15, 2020
bf56a2d
Desenvolvimento formulario de criacao de sessao
anadeso Apr 20, 2020
5b71235
salavando e listando a sessao no projeto
anadeso Apr 20, 2020
d0ea7cc
salavando e listando a sessao no projeto
anadeso Apr 20, 2020
5a1efad
validacao de horarios para cadastro de sessao
anadeso Apr 20, 2020
1eebe54
validacao de horarios para cadastro de sessao
anadeso Apr 20, 2020
4e5155c
criacao teste junit
anadeso Apr 20, 2020
c5cca67
realizando exercicio 3.2
anadeso Apr 21, 2020
7992df9
implementando desconto e ingressos e usando junit para teste do sem d…
anadeso Apr 21, 2020
1602f43
teste de aplicacao de teste com junit
anadeso Apr 21, 2020
bdb34b6
testando desconto de ingressos com junit
anadeso Apr 21, 2020
9aa2285
testando desconto com junit
anadeso Apr 21, 2020
f9bfae6
adicionando pagina de delatra do filme e filmes em cartaz
anadeso Apr 22, 2020
6321a99
exercicio 4.4
anadeso Apr 23, 2020
28815a7
Merge pull request #2 from anadeso/4.4
anadeso Apr 23, 2020
1aa66ed
desenvolvimento da tela de selecao de lugares
anadeso Apr 23, 2020
c94a1cf
Merge pull request #3 from anadeso/5.2
anadeso Apr 23, 2020
759c938
desenvolvendo a selecao de lugares
anadeso Apr 23, 2020
770d015
Merge pull request #4 from anadeso/5.4
anadeso Apr 23, 2020
2092fe7
implementacao da tela de compar
anadeso Apr 24, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
exercicio 4.4
  • Loading branch information
anadeso committed Apr 23, 2020
commit 6321a9957254cd93d38fe8f4a595d4007c13f538
5 changes: 5 additions & 0 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 19,11 @@


<dependencies>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.8.5</version>
</dependency>

<dependency>
<groupId>junit</groupId>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 2,10 @@

import br.com.caelum.ingresso.dao.FilmeDao;
import br.com.caelum.ingresso.dao.SessaoDao;
import br.com.caelum.ingresso.model.DetalhesDoFilme;
import br.com.caelum.ingresso.model.Filme;
import br.com.caelum.ingresso.model.Sessao;
import br.com.caelum.ingresso.rest.OmdbClient;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
Expand All @@ -28,6 30,9 @@ public class FilmeController {

@Autowired
private SessaoDao sessaoDao;

@Autowired
private OmdbClient client;

@GetMapping({ "/admin/filme", "/admin/filme/{id}" })
public ModelAndView form(@PathVariable("id") Optional<Integer> id, Filme filme) {
Expand Down Expand Up @@ -90,10 95,13 @@ public ModelAndView emCartaz() {
public ModelAndView detalhes(@PathVariable("id") Integer id){

ModelAndView modelAndView = new ModelAndView("/filme/detalhe");

Filme filme = filmeDao.findOne(id);
List<Sessao> sessoes = sessaoDao.buscaSessoesDoFilme(filme);
Optional<DetalhesDoFilme> detalhesDoFilme = client.request(filme);

modelAndView.addObject("sessoes", sessoes);
modelAndView.addObject("detalhes", detalhesDoFilme.orElse(new DetalhesDoFilme()));

return modelAndView;
}
Expand Down
99 changes: 99 additions & 0 deletions src/main/java/br/com/caelum/ingresso/model/DetalhesDoFilme.java
Original file line number Diff line number Diff line change
@@ -0,0 1,99 @@
package br.com.caelum.ingresso.model;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JacksonStdImpl;

public class DetalhesDoFilme {

@JsonProperty("Title")
private String titulo;

@JsonProperty("Poster")
private String imagem;

@JsonProperty("Year")
private String ano;

@JsonProperty("Director")
private String diretores;

@JsonProperty("Writer")
private String escritores;

@JsonProperty("Actors")
private String atores;

@JsonProperty("Plot")
private String descricao;

@JsonProperty("imdbRating")
private double avaliacao;

public String getImagem() {
return imagem;
}

public void setImagem(String imagem) {
this.imagem = imagem;
}

public String getTitulo() {
return titulo;
}

public void setTitulo(String titulo) {
this.titulo = titulo;
}

public String getAno() {
return ano;
}

public void setAno(String ano) {
this.ano = ano;
}

public String getDiretores() {
return diretores;
}

public void setDiretores(String diretores) {
this.diretores = diretores;
}

public String getEscritores() {
return escritores;
}

public void setEscritores(String escritores) {
this.escritores = escritores;
}

public String getAtores() {
return atores;
}

public void setAtores(String atores) {
this.atores = atores;
}

public String getDescricao() {
return descricao;
}

public void setDescricao(String descricao) {
this.descricao = descricao;
}

public double getAvaliacao() {
return avaliacao;
}

public void setAvaliacao(double avaliacao) {
this.avaliacao = avaliacao;
}




}
33 changes: 33 additions & 0 deletions src/main/java/br/com/caelum/ingresso/rest/OmdbClient.java
Original file line number Diff line number Diff line change
@@ -0,0 1,33 @@
package br.com.caelum.ingresso.rest;

import java.util.Optional;

import org.springframework.stereotype.Component;
import org.springframework.web.client.RestClientException;
import org.springframework.web.client.RestTemplate;

import br.com.caelum.ingresso.model.DetalhesDoFilme;
import br.com.caelum.ingresso.model.Filme;

@Component
public class OmdbClient {

public Optional<DetalhesDoFilme> request(Filme filme){

RestTemplate client = new RestTemplate();

String titulo = filme.getNome().replace(" ", " ");

String url = String.format("https://omdb-fj22.herokuapp.com/movie?title=%s", titulo);

try {
DetalhesDoFilme detalhesDoFilme = client.getForObject(url, DetalhesDoFilme.class);
return Optional.ofNullable(detalhesDoFilme);
} catch (RestClientException e) {
return Optional.empty();
}

}


}