示例#1
0
 public boolean deleteAllPaciente(int id) {
   List<Consulta> consultas = new ArrayList<>();
   String sql = "SELECT * FROM Consulta where NI_Paciente = ?";
   try {
     PreparedStatement ps = connection.prepareStatement(sql);
     ps.setInt(1, id);
     ResultSet rs = ps.executeQuery();
     ProcedimentoDAO procedimentoDAO = new ProcedimentoDAO();
     PacienteDAO pacienteDAO = new PacienteDAO();
     ProfissionalDAO profissionalDAO = new ProfissionalDAO();
     while (rs.next()) {
       Paciente paciente = pacienteDAO.readById(rs.getInt("NI_Paciente"));
       Profissional profissional = profissionalDAO.readById(rs.getInt("NI_Profissional"));
       Consulta consulta =
           new Consulta(
               rs.getDate("DT_dataHora"),
               rs.getDouble("ND_valorTotal"),
               rs.getInt("NI_Consulta"),
               paciente,
               profissional);
       consulta.setProcedimentos(procedimentoDAO.readByConsulta(consulta.getIdConsulta()));
       procedimentoDAO.deleteAllInConsulta(consulta.getIdConsulta());
       delete(consulta);
     }
     ps.close();
     rs.close();
     return true;
   } catch (SQLException ex) {
     ex.printStackTrace();
   }
   return false;
 }
示例#2
0
 @Override
 public List<Consulta> read() {
   List<Consulta> consultas = new ArrayList<>();
   String sql =
       "SELECT * FROM Consulta c "
           + "INNER JOIN Paciente p ON p.NI_Paciente = c.NI_Paciente "
           + "JOIN Profissional pr ON pr.NI_Profissional = c.NI_Profissional";
   try {
     PreparedStatement ps = connection.prepareStatement(sql);
     ResultSet rs = ps.executeQuery();
     PacienteDAO pacienteDAO = new PacienteDAO();
     ProfissionalDAO profissionalDAO = new ProfissionalDAO();
     ProcedimentoDAO procedimentoDAO = new ProcedimentoDAO();
     while (rs.next()) {
       Paciente paciente = pacienteDAO.readById(rs.getInt("NI_Paciente"));
       Profissional profissional = profissionalDAO.readById(rs.getInt("NI_Profissional"));
       Consulta consulta =
           new Consulta(
               rs.getDate("DT_dataHora"),
               rs.getDouble("ND_valorTotal"),
               rs.getInt("NI_Consulta"),
               paciente,
               profissional);
       consulta.setProcedimentos(procedimentoDAO.readByConsulta(consulta.getIdConsulta()));
       consultas.add(consulta);
     }
     ps.close();
     rs.close();
   } catch (SQLException ex) {
     ex.printStackTrace();
   }
   return consultas;
 }
示例#3
0
 public Consulta readById(int id) {
   String sql =
       "SELECT * FROM Consulta c "
           + "INNER JOIN Paciente p ON p.NI_Paciente = c.NI_Paciente "
           + "JOIN Profissional pr ON pr.NI_Profissional = c.NI_Profissional "
           + "WHERE NI_Consulta = ?";
   try {
     PreparedStatement ps = connection.prepareStatement(sql);
     ps.setInt(1, id);
     ResultSet rs = ps.executeQuery();
     PacienteDAO pacienteDAO = new PacienteDAO();
     ProfissionalDAO profissionalDAO = new ProfissionalDAO();
     ProcedimentoDAO procedimentoDAO = new ProcedimentoDAO();
     while (rs.next()) {
       Paciente paciente = pacienteDAO.readById(rs.getInt("NI_Paciente"));
       Profissional profissional = profissionalDAO.readById(rs.getInt("NI_Profissional"));
       Consulta consulta =
           new Consulta(
               rs.getDate("DT_dataHora"),
               rs.getDouble("ND_valorTotal"),
               rs.getInt("NI_Consulta"),
               paciente,
               profissional);
       consulta.setProcedimentos(procedimentoDAO.readByConsulta(consulta.getIdConsulta()));
       ps.close();
       rs.close();
       return consulta;
     }
   } catch (SQLException ex) {
     ex.printStackTrace();
   }
   return null;
 }