Boa noite pessoal, estou com serio problema no meu TCC e não esto conseguindo resolver.
Tenho um classe PedidoVenda, Itens venda. Porem são em pagina diferente e quando mando adiciona o produto no List do pedido de venda ele não fica gravado no momento de salva o que pode ser ?
@Entity
@Table(name="pedidosvenda")
public class PedidoVenda implements Serializable {
@GeneratedValue
@Id
private Integer idpedidovenda;
@ManyToOne(fetch= FetchType.EAGER)
@JoinColumn(name="idCliente",insertable=true,updatable=true)
@Cascade(org.hibernate.annotations.CascadeType.ALL)
private Cliente cliente;
@ManyToOne(fetch= FetchType.LAZY)
@JoinColumn(name="idTransportadora",insertable=true,updatable=true)
@Cascade(org.hibernate.annotations.CascadeType.ALL)
private Transportadora transportadora;
@OneToMany(mappedBy = "pedido", targetEntity = ItensPedido.class, fetch = FetchType.EAGER, cascade = CascadeType.ALL)
private List<ItensPedido> itensPedido;
// public void addItem(ItensPedido ii)
//{
//if(itensPedido == null)
//{
//itensPedido= new LinkedList<ItensPedido>();
//}
//ii.setPedido(this);
//itensPedido.add(ii);
// }
@Temporal(javax.persistence.TemporalType.DATE)
private Date datacadastro;
@Temporal(javax.persistence.TemporalType.DATE)
private Date dataentrega;
private String observacao;
private double desconto;
public Cliente getCliente() {
return cliente;
}
public void setCliente(Cliente cliente) {
this.cliente = cliente;
}
public Date getDatacadastro() {
return datacadastro;
}
public void setDatacadastro(Date datacadastro) {
this.datacadastro = datacadastro;
}
public Date getDataentrega() {
return dataentrega;
}
public void setDataentrega(Date dataentrega) {
this.dataentrega = dataentrega;
}
public double getDesconto() {
return desconto;
}
public void setDesconto(double desconto) {
this.desconto = desconto;
}
public Integer getIdpedidovenda() {
return idpedidovenda;
}
public void setIdpedidovenda(Integer idpedidovenda) {
this.idpedidovenda = idpedidovenda;
}
public List<ItensPedido> getItensPedido() {
return itensPedido;
}
public void setItensPedido(List<ItensPedido> itensPedido) {
this.itensPedido = itensPedido;
}
public String getObservacao() {
return observacao;
}
public void setObservacao(String observacao) {
this.observacao = observacao;
}
public Transportadora getTransportadora() {
return transportadora;
}
public void setTransportadora(Transportadora transportadora) {
this.transportadora = transportadora;
}
@Entity
@Table(name="ItensPedido")
public class ItensPedido implements Serializable{
@Id
@GeneratedValue
private Integer idItensPedido;
@ManyToOne
@JoinColumn(name="idpedidovenda")
private PedidoVenda pedido;
@ManyToOne(fetch= FetchType.EAGER)
@JoinColumn(name="idproduto",insertable=true,updatable=true)
@Cascade(org.hibernate.annotations.CascadeType.ALL)
private Produto produto;
@Column(nullable=false)
private String descricao;
@Column(nullable=false)
private double quantidade;
@Column(nullable=false)
private double valorUnitario;
@Column(nullable=false)
private double desconto;
@Column(nullable=false)
private double valorTotal;
public double getDesconto() {
return desconto;
}
public void setDesconto(double desconto) {
this.desconto = desconto;
}
public Integer getIdItensPedido() {
return idItensPedido;
}
public void setIdItensPedido(Integer idItensPedido) {
this.idItensPedido = idItensPedido;
}
public PedidoVenda getPedido() {
return pedido;
}
public void setPedido(PedidoVenda pedido) {
this.pedido = pedido;
}
public Produto getProduto() {
return produto;
}
public void setProduto(Produto produto) {
this.produto = produto;
}
public double getQuantidade() {
return quantidade;
}
public void setQuantidade(double quantidade) {
this.quantidade = quantidade;
}
public double getValorTotal() {
return valorTotal;
}
public void setValorTotal(double valorTotal) {
this.valorTotal = valorTotal;
}
public double getValorUnitario() {
return valorUnitario;
}
public void setValorUnitario(double valorUnitario) {
this.valorUnitario = valorUnitario;
}
public String getDescricao() {
return descricao;
}
public void setDescricao(String descricao) {
this.descricao = descricao;
}
@ManagedBean(name="pedidoVendaController")
@ViewScoped
public class PedidoVendaController {
public PedidoVenda pedido = new PedidoVenda();
public Cliente cliente = new Cliente();
private CartesianChartModel categoryModel = new CartesianChartModel();
public List<ItensPedido> p = new ArrayList<ItensPedido>();
private DataModel listaCliente;
private List listaPedido;
public CartesianChartModel getCategoryModel() {
return categoryModel;
}
public void setCategoryModel(CartesianChartModel categoryModel) {
this.categoryModel = categoryModel;
}
private void createCategoryModel() {
// categoryModel = new CartesianChartModel();
ChartSeries boys = new ChartSeries();
boys.setLabel("Boys");
boys.set(listaPedido.toString(), 120);
boys.set("2005", 100);
boys.set("2006", 44);
boys.set("2007", 150);
boys.set("2008", 25);
ChartSeries girls = new ChartSeries();
girls.setLabel("Girls");
girls.set("2004", 52);
girls.set("2005", 60);
girls.set("2006", 110);
girls.set("2007", 135);
girls.set("2008", 120);
categoryModel.addSeries(boys);
categoryModel.addSeries(girls);
}
public PedidoVendaController() {
listaPedido();
ChartSeries boys = new ChartSeries();
boys.setLabel("Boys");
boys.set(listaPedido, 120);
boys.set("2005", 100);
boys.set("2006", 44);
boys.set("2007", 150);
boys.set("2008", 25);
ChartSeries girls = new ChartSeries();
girls.setLabel("Girls");
girls.set("2004", 52);
girls.set("2005", 60);
girls.set("2006", 110);
girls.set("2007", 135);
girls.set("2008", 120);
categoryModel.addSeries(boys);
categoryModel.addSeries(girls);
}
public void limpar()
{
p = null;
}
public List getListaPedido() {
return listaPedido;
}
public void setListaPedido(List listaPedido) {
this.listaPedido = listaPedido;
}
public Cliente getCliente() {
return cliente;
}
public void setCliente(Cliente cliente) {
this.cliente = cliente;
}
public DataModel getListaCliente() {
return listaCliente;
}
public void setListaCliente(DataModel listaCliente) {
this.listaCliente = listaCliente;
}
public PedidoVenda getPedido() {
return pedido;
}
public void setPedido(PedidoVenda pedido) {
this.pedido = pedido;
}
public List<ItensPedido> getP() {
return p;
}
public void setP(List<ItensPedido> p) {
this.p = p;
}
public DataModel listar() {
List<Cliente> lista = new ClienteDAO().listar();
listaCliente = new ListDataModel(lista);
return listaCliente;
}
public void prepararAdicionarPedidoVenda()
{
PedidoVenda dao = new PedidoVenda();
}
public void adicionarPedidoVenda()
{
PedidoVendaDAO dao = new PedidoVendaDAO();
pedido.setCliente(cliente);
Date data = new Date(System.currentTimeMillis());
pedido.setDatacadastro(data);
cliente.setPedido(new HashSet<PedidoVenda>());
for(ItensPedido end : p)
{
end.setPedido(pedido);
pedido.setItensPedido(p);
}
dao.save(pedido);
p.clear();
p = null;
}
public void addItensPedido (List<ItensPedido> itensPedido)
{
p.addAll(itensPedido);
}
public void preparar()
{
p = new ArrayList<ItensPedido>();
}
public void remove()
{
p.remove(p);
}
public List<Object> listaPedido() {
List<Object> lista = new PedidoVendaDAO().lista();
listaPedido= lista;
return lista;
}
@ManagedBean(name="ItensPedidoController")
@SessionScoped
public class ItensController {
public Produto produto = new Produto();
public ItensPedido itensPedido = null;
private DataModel listaProduto;
public List<ItensPedido> itens = new ArrayList<ItensPedido>();
public ItensPedido getItensPedido() {
return itensPedido;
}
public void setItensPedido(ItensPedido itensPedido) {
this.itensPedido = itensPedido;
}
public DataModel getListaProduto() {
return listaProduto;
}
public void setListaProduto(DataModel listaProduto) {
this.listaProduto = listaProduto;
}
public Produto getProduto() {
return produto;
}
public void setProduto(Produto produto) {
this.produto = produto;
}
public void prepararAdicionarItensPedidoVenda()
{
itensPedido = new ItensPedido();
}
public List<ItensPedido> addItensPedido()
{
PedidoVendaController ped = new PedidoVendaController();
itensPedido.setPedido(ped.pedido);
itensPedido.setProduto(produto);
produto.setItensPedido(new HashSet<ItensPedido>());
itensPedido.setDescricao(produto.getDescricao());
itensPedido.setValorUnitario(produto.getValorVenda());
itensPedido.setValorTotal((itensPedido.getQuantidade() * itensPedido.getValorUnitario())-itensPedido.getDesconto());
itens.add(itensPedido);
ped.addItensPedido(itens);
return itens;
}
public DataModel listarProduto() {
List<Produto> lista = new ProdutoDAO().listar();
listaProduto = new ListDataModel(lista);
return listaProduto;
}
}