Estou com uma classe Produtos que tem um relacionamento com a classe Itens. A classe itens se encontra da seguinte forma:
@Entity(name = "Itens")
@Table(name = "itens")
public class Itens {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "id_produto")
private Produto produto;
@ManyToMany(mappedBy = "itens")
private List<Nota> notas;
private int ordenacao;
private int quantidade;
private BigDecimal valor_total;
public Itens(ItensDTO dto) {
this.ordenacao = dto.getOrdenacao();
this.produto = dto.getProduto();
this.quantidade = dto.getQuantidade();
this.valor_total = dto.getValor_total();
}
//getters e setters
Porém no meu DTO eu preciso recuperar o valor numero deste item e não o objeto. Por isso na classe ItensDTO eu coloco o produto como LONG
public class ItensDTO {
private Long id;
private int ordenacao;
private Long produto;
private int quantidade;
private BigDecimal valor_total;
public ItensDTO() {}
public ItensDTO(Itens itens) {
this.id = itens.getId();
this.ordenacao = itens.getOrdenacao();
this.produto = new Produto(itens.getProduto().getId());
this.quantidade = itens.getQuantidade();
this.valor_total = itens.getValor_total();
}
//getters e setters
Como eu referencio no construtor que o Produto produto da classe Itens é a mesma coisa que o Long Produto da classe ItensDTO?