Meu código está dando erro!
package br.com.alura.loja.dao;
import java.math.BigDecimal;
import java.util.List;
import javax.persistence.EntityManager;
import br.com.alura.loja.modelo.Pedido;
import br.com.alura.loja.vo.RelatorioDeVendasVo;
public class PedidoDao {
private EntityManager em;
public PedidoDao(EntityManager em) {
this.em = em;
}
public void cadastrar(Pedido pedido) {
this.em.persist(pedido);
}
public BigDecimal valorTotalVendido() {
String jpql = "SELECT SUM(p.valorTotal) FROM Pedido p";
return em.createQuery(jpql, BigDecimal.class).getSingleResult();
}
public List<RelatorioDeVendasVo> relatorioDeVendas() {
String jpql = "SELECT new RelatorioDeVendasVo("
+ "produto.nome,"
+ "SUM(item.quantidade),"
+ "MAX(pedido.data)) "
+ "FROM Pedido pedido "
+ "JOIN pedido.itens item "
+ "JOIN item.produto produto "
+ "GROUP BY produto.nome "
+ "ORDER BY item.quantidade DESC";
return em.createQuery(jpql, RelatorioDeVendasVo.class).getResultList();
}
}
está dando uma exception falando que não está encontrando minha classe RelatorioDeVendasVo.
porém eu criei o RelatorioDeVendasVo
package br.com.alura.loja.vo;
import java.time.LocalDate;
public class RelatorioDeVendasVo {
private String nome;
private Integer quantidade;
private LocalDate data;
public RelatorioDeVendasVo(String nome, Integer quantidade, LocalDate data) {
this.nome = nome;
this.quantidade = quantidade;
this.data = data;
}
public String getNome() {
return nome;
}
public Integer getQuantidade() {
return quantidade;
}
public LocalDate getData() {
return data;
}
}