Problema em tabela e BASE DE DADOS

8 respostas
java
nolasco95

Olá a todos Dev Java!
Preciso de uma ajuda.
Estou a trabalhar em um projecto de gestão para uma biblioteca.
A mesma realiza empréstimo.
E preciso criar um metodo que quando o bibliotecario clica na tabela(linnha que deseja marcar como devolvido) a mesma sai da tabela emprestimo e aparece na tabela devolvido.Meu grande problema está em criar uma condição para ,isto, visto que o software tem base de dados.

8 Respostas

Lucas_Camara

O sistema é desktop ou web?

Basicamente, vc terá que, após atualizar o registro, recarregar as duas tabelas para que as linhas sejam atualizadas, mas é difícil indicar como fazer isso sem saber como vc está implementando.

nolasco95

O sistema é Desktop.

private void carregarTabelaEmprestimo(){
        DefaultTableModel dtm = (DefaultTableModel) jTableEmprestimo.getModel();
        dtm.setNumRows(0);
        listarEmp = cEmp.listarControlEmprestimo("");
        for(int i = 0; i < listarEmp.size(); i++){
            dtm.addRow(new Object[]{
                listarEmp.get(i).getIdEmprestimo(),
                listarEmp.get(i).getUsuario(),
                listarEmp.get(i).getLivro(),
                listarEmp.get(i).getData()
            });
        }
    }

O código acima trás todos os dados da tabela emprestimo e preciso de selecionar uma linha e actualizar a data de devolução simplismente e adicionar na tabela devolução.

Lucas_Camara

Vc já conseguiu fazer a parte que atualiza o registro no banco?

nolasco95

Ainda não.
As tabelas na base de dados são diferentes.

Lucas_Camara

Tu deve implementar primeiro essa mudança de emprestado para devolvido. Porém, acho que vc conseguiria resolver isso de forma mais fácil com uma tabela apenas usando uma coluna de status talvez.

Mas com duas tabelas tb deve funcionar, mas ficaria mais fácil se implementar isso primeiro e, só depois, vc preocuparia com atualizar as tabelas na tela.

nolasco95

Obrigado pela ajuda!

Lucas_Camara

Se tiver dúvidas em como fazer isso, diga ae, que a gente ajuda.

Uma dica que dou é usar nas tabelas sua propria table model baseada na AbstractTableModel em vez de usar a DefaultTableModel. Isso vai facilitar sua vida. Veja: DefaultTableModel model - Mostrar valores - #2 por Lucas_Camara

nolasco95

Vou testar e darei um sinal caso tenha êxito ou não.

Criado 13 de dezembro de 2022
Ultima resposta 13 de dez. de 2022
Respostas 8
Participantes 2