Estou com uma duvida aqui, no meu html tenho uma tabela, e nessa tabela que to com duvida, estou fazendo da seguinte regra, tenho minha venda, e primeiro de tudo tenho uma tabela e dentro dessa tabela tenho um botão para inserir a venda e abre um dialog com os campos necessarios para realizar minha venda, como na minha venda ela não leva a fk de produto e nem de formaDePagamento e nem parcelas, porque está assim.
@Entity
@SuppressWarnings("serial")
public class Venda implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long codigo;
private Double valorTotal;
@ManyToOne
@JoinColumn(name = "funcionario_codigo")
private Funcionario funcionario = new Funcionario();
@ManyToOne
@JoinColumn(name = "cliente_codigo")
private Cliente cliente = new Cliente();
@ManyToMany
private List<Produto> produtos = new ArrayList<Produto>();
private LocalDate data = LocalDate.now();
@ManyToMany(fetch = FetchType.LAZY)
private List<FormaDePagamento> formaDePagamentos = new ArrayList<FormaDePagamento>();
@OneToMany(mappedBy = "venda", fetch = FetchType.LAZY)
private List<Parcela> parcelas = new ArrayList<Parcela>();
private Double valorRestante = 0.0D;
private Double valorJuros = 0.0D;
@Entity
@SuppressWarnings("serial")
public class Venda_produto implements Serializable{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long codigo;
@ManyToOne
@JoinColumn(name = "Venda_codigo", nullable = false)
private Venda venda = new Venda();
@ManyToOne
@JoinColumn(name = "produtos_codigo", nullable = false)
private Produto produto = new Produto();
private Integer quantidade;
@Entity
@SuppressWarnings("serial")
public class Venda_formadepagamento implements Serializable{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long codigo;
@ManyToOne
@JoinColumn(name = "venda_codigo")
private Venda venda = new Venda();
@ManyToOne
@JoinColumn(name = "formaDePagamentos_codigo")
private FormaDePagamento formaDePagamento = new FormaDePagamento();
private Double valorDado = 0.0D;
private Double somaValorDado = 0.0D;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long codigo;
private LocalDate dataVencimento;
private Double valorParcela = 0.0D;
private Double valorPago;
@Enumerated(EnumType.STRING)
private Status status;
private Integer diasParcela = 0;
@ManyToOne
@JoinColumn(name = "venda_codigo")
private Venda venda = new Venda();
private Integer quantidade = 0;
Então eu queria nessa tabela mostrar o vendaDoProduto, mais ai fica faltando as parcelas as formadepagamentos, no caso vocês usam a classe venda para fazer o select mesmo?