@dgu escreveu:
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
Mensagens: 2
Participantes: 2