Boa tarde, estou desenvolvendo um sistema de facturação usando o JSF hibernate tenho a entidade Venda, ItemsVenda, Factura,
Factura
@Entity
public class Factura extends GenericDomain {
@OneToOne
@JoinColumn(nullable = false)
private Venda venda;
@Column(name = "data_facturacao", nullable = false)
@Temporal(TemporalType.DATE)
private Date dataFacturacao;
@Column(name = "data_validade", nullable = false)
@Temporal(TemporalType.DATE)
private Date dataValidade;
@Column(nullable = true, length = 10)
private String estado;
@Column(name = "forma_pagamento", nullable = true, length = 20)
private String formaPagamento;
@Column(name = "data_pagamento", nullable = true)
@Temporal(TemporalType.DATE)
private Date dataPagamento;
…
ItemVenda
@Entity(name = "items_venda")
public class ItemsVenda extends GenericDomain {
@Column(nullable = false)
private Short quantidade;
@Column(nullable = false, precision = 15, scale = 2,name="valor_parcial")
private BigDecimal valorParcial;
@ManyToOne
@JoinColumn(nullable = false)
private Produto produto;
@ManyToOne
@JoinColumn(nullable = false)
private Venda venda;
Venda
@Entity
public class Venda extends GenericDomain {
@Column(nullable = false)
@Temporal(TemporalType.TIMESTAMP)
private Date horario;
@Column(nullable = false, precision = 15, scale = 2)
private BigDecimal valorTotal;
@Column(nullable = false, name = "valor_subtotal", precision = 15, scale = 2)
private BigDecimal valorSubtotal;
@Column(nullable = false, name = "valor_pago_iva", precision = 15, scale = 2)
private BigDecimal valorPagoIva;
@Column(nullable = true, name = "percentagem_desconto")
private Short percentagemDesconto;
@Column(nullable = true, name = "valor_extenso")
private String valorExtenso;
@JoinColumn(nullable = false)
@ManyToOne
private Cliente cliente;
@ManyToOne
@JoinColumn(nullable = false)
private Funcionario funcionario;
@ManyToOne
@JoinColumn(name = "tipo_pagamento", nullable = false)
private TipoPagamento tipoPagamento;
@OneToMany(fetch = FetchType.EAGER,mappedBy = "venda" )
private List<ItemsVenda> itemsVendas;
Conseguia listar as facturas normalmente mais apartir do momento que adicionei na entidade Venda o
@OneToMany(fetch = FetchType.EAGER,mappedBy = "venda" )
private List<ItemsVenda> itemsVendas;
para poder listar os Items de cada venda. Por tanto ao listar as facturas ele repeti algumas facturas por exemplo: se a factura de uma venda X tiver 2 Items vendidos ele repeti duas vezes a factura como ilustra o formulário
Peso ajuda estou desde ontem tentando resolver o problema nao consigo