Olá
Tenho duas entidades no meu modelo (Venda e Categoria), categoria possui o id que é chave primaria, e venda possui categoria_id, na hora que realizar um post em venda, está solicitando que eu envie o json completo, inclusive dos campos da classe categoria, eu gostaria de saber se é possível enviar apenas o id.
eu queria passar assim o JSON { "dataVenda": "2021-12-23T00:00:00", "categoria": "1", "comprador": "1", "local": "1", "formaDePagamento": "2", "valorTotal": 180 }
mais ele esta me pedindo pra passar assim
{ "idVenda": 1, "dataVenda": "2021-12-21T16:14:52", "categoria": { "idCategoria": 1, "descricaoCategoria": "venda" }, "comprador": { "idComprador": 1, "nomeComprador": "Alexandre Faria", "cpfComprador": "45522556811", "telefoneComprador": "18997096562", "emailComprador": "alefarria@gmail.com" }, "local": { "idLocal": 1, "descricaoLocal": "Penze Diferente", "endereco": "teste", "telefoneLocal": "33216060" }, "formaDePagamento": { "idPagamento": 2, "descricaoPagamento": "Pix" }, "valorTotal": 180 },
Segue as classes
@Entity public class Venda {
@Id @GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer idVenda;
private String dataVenda;
@JsonIgnore
@ManyToOne
@JoinColumn(name = "categoria_id")
private Categoria categoria;
private Integer comprador;
private Integer local;
private Integer formaDePagamento;
private Long valorTotal;
public Venda() {
}
public Venda(String dataVenda, Categoria categoria, Integer comprador, Integer local,
Integer formaDePagamento, Long valorTotal) {
this.dataVenda = dataVenda;
this.categoria = categoria;
this.comprador = comprador;
this.local = local;
this.formaDePagamento = formaDePagamento;
this.valorTotal = valorTotal;
}
@Override public int hashCode() { return Objects.hash(categoria, comprador, dataVenda, formaDePagamento, idVenda, local, valorTotal); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; Venda other = (Venda) obj; return Objects.equals(categoria, other.categoria) && Objects.equals(comprador, other.comprador) && Objects.equals(dataVenda, other.dataVenda) && Objects.equals(formaDePagamento, other.formaDePagamento) && Objects.equals(idVenda, other.idVenda) && Objects.equals(local, other.local) && Objects.equals(valorTotal, other.valorTotal); } public Integer getIdVenda() { return idVenda; } public void setIdVenda(Integer idVenda) { this.idVenda = idVenda; } public String getDataVenda() { return dataVenda; } public void setDataVenda(String dataVenda) { this.dataVenda = dataVenda; } public Categoria getCategoria() { return categoria; } public void setCategoria(Categoria categoria) { this.categoria = categoria; }
public Integer getComprador() { return comprador; } public void setComprador(Integer comprador) { this.comprador = comprador; } public Integer getLocal() { return local; } public void setLocal(Integer local) { this.local = local; } public Integer getFormaDePagamento() { return formaDePagamento; } public void setFormaDePagamento(Integer formaDePagamento) { this.formaDePagamento = formaDePagamento; } public Long getValorTotal() { return valorTotal; } public void setValorTotal(Long valorTotal) { this.valorTotal = valorTotal; }
@Entity public class Categoria {
@Id @GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer idCategoria;
private String descricaoCategoria;
public Categoria() {
// TODO Auto-generated constructor stub
}
public Categoria(String descricaoCategoria) {
this.descricaoCategoria = descricaoCategoria;
}
@Override
public int hashCode() {
return Objects.hash(descricaoCategoria, idCategoria);
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
Categoria other = (Categoria) obj;
return Objects.equals(descricaoCategoria, other.descricaoCategoria)
&& Objects.equals(idCategoria, other.idCategoria);
}
public Integer getIdCategoria() {
return idCategoria;
}
public void setIdCategoria(Integer idCategoria) {
this.idCategoria = idCategoria;
}
public String getDescricaoCategoria() { return descricaoCategoria; }
public void setDescricaoCategoria(String descricaoCategoria) { this.descricaoCategoria = descricaoCategoria; }