// Path: treinamento_1/src/main/java/br/com/gamas/treinamento/model/Inscricao.java
// public class Inscricao {
// 
// 	private Long id;
// 
// 	@NotNull
// 	@Size(max=30)
// 	private String nome;
// 
// 	@NotNull
// 	@Size(max=30)
// 	private String email;
// 
// 	@Min(18)
// 	@NotNull
// 	private Integer idade;
// 	
// 	private Date dataInscricao;
// 
// 	private Situacao situacao;
// 
// 	public Inscricao() {
// 		setSituacao(Situacao.PENDENTE);
// 	}
// 
// 	public Long getId() {
// 		return id;
// 	}
// 
// 	public void setId(Long id) {
// 		this.id = id;
// 	}
// 
// 	public String getNome() {
// 		return nome;
// 	}
// 
// 	public void setNome(String nome) {
// 		this.nome = nome;
// 	}
// 
// 	public String getEmail() {
// 		return email;
// 	}
// 
// 	public void setEmail(String email) {
// 		this.email = email;
// 	}
// 
// 	public Integer getIdade() {
// 		return idade;
// 	}
// 
// 	public void setIdade(Integer idade) {
// 		this.idade = idade;
// 	}
// 
// 	public Situacao getSituacao() {
// 		return situacao;
// 	}
// 
// 	public void setSituacao(Situacao situacao) {
// 		this.situacao = situacao;
// 	}
// 
// 	public Date getDataInscricao() {
// 		return dataInscricao;
// 	}
// 
// 	public void setDataInscricao(Date dataInscricao) {
// 		this.dataInscricao = dataInscricao;
// 	}
// }
// 
// Path: treinamento_5/src/main/java/br/com/gamas/treinamento/model/Situacao.java
// public enum Situacao {
// 	PENDENTE(1, "Pendente de avaliação"), 
// 	APROVADO(2, "Aprovado"), 
// 	REPROVADO(3, "Reprovado");
// 
// 	private int codigo;
// 	private String descricao;
// 
// 	Situacao(int codigo, String descricao) {
// 		this.codigo = codigo;
// 		this.descricao = descricao;
// 	}
// 
// 	public int getCodigo() {
// 		return codigo;
// 	}
// 
// 	public String getDescricao() {
// 		return descricao;
// 	}
// 
// }
// 
// Path: treinamento_5/src/main/java/br/com/gamas/treinamento/service/InscricaoService.java
// @Service
// public class InscricaoService {
// 	
// 	@Autowired
// 	private InscricaoRepository inscricaoRepository; 
// 
// 	@Autowired
// 	private MailService mailService;
// 	
// 	public Inscricao buscarInscricaoPorId(Long id) {
// 		return inscricaoRepository.findOne(id);
// 	}
// 
// 	public void save(Inscricao inscricao) {
// 		inscricaoRepository.save(inscricao);
// 		mailService.sendMail(inscricao.getEmail(), "Cadastro realizado", "Seu cadastro foi criado com sucesso, aguarde parecer.");
// 	}
// 
// 	public List<Inscricao> findAll() {
// 		return inscricaoRepository.findAll();
// 	}
// 
// 	public void alterarSituacao(Long id, Situacao situacao) {
// 		Inscricao inscricao = buscarInscricaoPorId(id);
// 		
// 		if (inscricao != null){
// 
// 			inscricaoRepository.save(inscricao);
// 			
// 			StringBuilder sb = new StringBuilder();
// 			sb.append("Seu cadastro de número: ");
// 			sb.append(inscricao.getId());
// 			sb.append(" foi ");
// 			sb.append(situacao.getDescricao());
// 			sb.append(".");
// 			
// 			mailService.sendMail(inscricao.getEmail(), "Alteração de cadastro.", sb.toString());
// 			inscricao.setSituacao(situacao);
// 		}
// 	}
// 
// 
// }


import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
import br.com.gamas.treinamento.model.Inscricao;
import br.com.gamas.treinamento.model.Situacao;
import br.com.gamas.treinamento.service.InscricaoService;

package br.com.gamas.treinamento.controller;




@Controller
@RequestMapping("/avaliacao")
public class AvaliacaoController {

	@Autowired
	private InscricaoService inscricaoService;
	
	@RequestMapping(value = "/lista", method = RequestMethod.GET)
	public ModelAndView view() {

// Path: treinamento_1/src/main/java/br/com/gamas/treinamento/model/Inscricao.java
// public class Inscricao {
// 
// 	private Long id;
// 
// 	@NotNull
// 	@Size(max=30)
// 	private String nome;
// 
// 	@NotNull
// 	@Size(max=30)
// 	private String email;
// 
// 	@Min(18)
// 	@NotNull
// 	private Integer idade;
// 	
// 	private Date dataInscricao;
// 
// 	private Situacao situacao;
// 
// 	public Inscricao() {
// 		setSituacao(Situacao.PENDENTE);
// 	}
// 
// 	public Long getId() {
// 		return id;
// 	}
// 
// 	public void setId(Long id) {
// 		this.id = id;
// 	}
// 
// 	public String getNome() {
// 		return nome;
// 	}
// 
// 	public void setNome(String nome) {
// 		this.nome = nome;
// 	}
// 
// 	public String getEmail() {
// 		return email;
// 	}
// 
// 	public void setEmail(String email) {
// 		this.email = email;
// 	}
// 
// 	public Integer getIdade() {
// 		return idade;
// 	}
// 
// 	public void setIdade(Integer idade) {
// 		this.idade = idade;
// 	}
// 
// 	public Situacao getSituacao() {
// 		return situacao;
// 	}
// 
// 	public void setSituacao(Situacao situacao) {
// 		this.situacao = situacao;
// 	}
// 
// 	public Date getDataInscricao() {
// 		return dataInscricao;
// 	}
// 
// 	public void setDataInscricao(Date dataInscricao) {
// 		this.dataInscricao = dataInscricao;
// 	}
// }
// 
// Path: treinamento_5/src/main/java/br/com/gamas/treinamento/model/Situacao.java
// public enum Situacao {
// 	PENDENTE(1, "Pendente de avaliação"), 
// 	APROVADO(2, "Aprovado"), 
// 	REPROVADO(3, "Reprovado");
// 
// 	private int codigo;
// 	private String descricao;
// 
// 	Situacao(int codigo, String descricao) {
// 		this.codigo = codigo;
// 		this.descricao = descricao;
// 	}
// 
// 	public int getCodigo() {
// 		return codigo;
// 	}
// 
// 	public String getDescricao() {
// 		return descricao;
// 	}
// 
// }
// 
// Path: treinamento_5/src/main/java/br/com/gamas/treinamento/service/InscricaoService.java
// @Service
// public class InscricaoService {
// 	
// 	@Autowired
// 	private InscricaoRepository inscricaoRepository; 
// 
// 	@Autowired
// 	private MailService mailService;
// 	
// 	public Inscricao buscarInscricaoPorId(Long id) {
// 		return inscricaoRepository.findOne(id);
// 	}
// 
// 	public void save(Inscricao inscricao) {
// 		inscricaoRepository.save(inscricao);
// 		mailService.sendMail(inscricao.getEmail(), "Cadastro realizado", "Seu cadastro foi criado com sucesso, aguarde parecer.");
// 	}
// 
// 	public List<Inscricao> findAll() {
// 		return inscricaoRepository.findAll();
// 	}
// 
// 	public void alterarSituacao(Long id, Situacao situacao) {
// 		Inscricao inscricao = buscarInscricaoPorId(id);
// 		
// 		if (inscricao != null){
// 
// 			inscricaoRepository.save(inscricao);
// 			
// 			StringBuilder sb = new StringBuilder();
// 			sb.append("Seu cadastro de número: ");
// 			sb.append(inscricao.getId());
// 			sb.append(" foi ");
// 			sb.append(situacao.getDescricao());
// 			sb.append(".");
// 			
// 			mailService.sendMail(inscricao.getEmail(), "Alteração de cadastro.", sb.toString());
// 			inscricao.setSituacao(situacao);
// 		}
// 	}
// 
// 
// }


// Path: treinamento_5/src/main/java/br/com/gamas/treinamento/controller/AvaliacaoController.java
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
import br.com.gamas.treinamento.model.Inscricao;
import br.com.gamas.treinamento.model.Situacao;
import br.com.gamas.treinamento.service.InscricaoService;

package br.com.gamas.treinamento.controller;




@Controller
@RequestMapping("/avaliacao")
public class AvaliacaoController {

	@Autowired
	private InscricaoService inscricaoService;
	
	@RequestMapping(value = "/lista", method = RequestMethod.GET)
	public ModelAndView view() {

		List<Inscricao> inscricoes = inscricaoService.findAll();
