Olá pessoal, tudo bem?
Eu estou com problema no update de alguns dados no Banco de dados(Mysql).
imagem da tela de pedidos pendentes
Conforme a imagem, estou criando um sistema de requisição de materiais para o estoque e coloquei um botão imprimir caso alguém clique nele baixe um PDF de todos os pedidos pendentes e altere o status de todos os pedidos desta tela para impresso.
Porém quando faz a função de imprimir, está adicionando um Id no banco de dados, sem nenhuma informação, passarei o código abaixo.
Class = PedidosController
@PostMapping("alterar")
public String Imprimir( RequisicaoNovoPedido requisicao ) {
java.util.Date novaData;
Calendar c = Calendar.getInstance();
novaData = c.getTime();
String data = String.valueOf(novaData);
List<Pedido> pedidos = pedidoRepository.findByStatus(StatusPedido.PENDENTE);
while(pedidos.size() != 0 ) {
for(Pedido pedido : pedidos) {
if(pedido.getCodigoProduto() != null) {
pedido.setStatus(StatusPedido.IMPRESSO);
System.out.println(pedido.getStatus());
pedido.setHoraImpresso(data);
}else {
}
}
Pedido pedido = requisicao.update();
pedidoRepository.save(pedido);
return ("redirect:pedidosEstoque/Pendentes");
}
return ("redirect:pedidosEstoque/Pendentes");
}
Class Dto RequisitarNovoPedido
public class RequisicaoNovoPedido {
private Long id;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
@NotBlank @NotNull @Size(min = 3, max = 80)
private String codigoProduto;
@NotBlank @NotNull @Size(min = 3, max = 80)
private String descricao;
@NotBlank @NotNull @Size(min = 3, max = 20)
private String quantidade;
@NotBlank @NotNull @Size(min = 3, max = 20)
private String medida;
private String horaRequisicao;
private String quantidadeEntregue;
private String horaImpresso;
private String horaFinalizacao;
String dataInicio;
public String getHoraRequisicao() {
return horaRequisicao;
}
public void setHoraRequisicao(String horaRequisicao) {
this.horaRequisicao = horaRequisicao;
}
public String getQuantidadeEntregue() {
return quantidadeEntregue;
}
public void setQuantidadeEntregue(String quantidadeEntregue) {
this.quantidadeEntregue = quantidadeEntregue;
}
public String getHoraImpresso() {
return horaImpresso;
}
public void setHoraImpresso(String horaImpresso) {
this.horaImpresso = horaImpresso;
}
public String getHoraFinalizacao() {
return horaFinalizacao;
}
public void setHoraFinalizacao(String horaFinalizacao) {
this.horaFinalizacao = horaFinalizacao;
}
public String getCodigoProduto() {
return codigoProduto;
}
public void setCodigoProduto(String codigoProduto) {
this.codigoProduto = codigoProduto;
}
public String getDescricao() {
return descricao;
}
public void setDescricao(String descricao) {
this.descricao = descricao;
}
public String getQuantidade() {
return quantidade;
}
public void setQuantidade(String quantidade) {
this.quantidade = quantidade;
}
public String getMedida() {
return medida;
}
public void setMedida(String medida) {
this.medida = medida;
}
public Pedido update() {
Pedido pedido = new Pedido();
return pedido;
}
Formulário que chama o Post
<form action="/estoque/alterar" method="POST">
<div><button type="submit" class="w3-btn w3-blue w3-show">Imprimir</button></div>
</form>
Banco antes de clicar no botão
Banco após Clicar no botão
Alguém poderia me ajudar com esse problema? Gostaria de não gerar esse Id a mais, tentei de outras maneiras mas não consegui.