/** * Saves a patient in the database * * @param p The Patient object to save */ public void createPatient(Patient p) { // check if it is new record in DB if (!isExist(p)) { try { statement = con.prepareStatement( "INSERT INTO patients (firstname, lastname, preferredname, volunteer," + " gender, notes, volunteer2, alerts, myoscar_verified, clinic, availability) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"); statement.setString(1, p.getFirstName()); statement.setString(2, p.getLastName()); statement.setString(3, p.getPreferredName()); statement.setInt(4, p.getVolunteer()); statement.setString(5, p.getGender()); statement.setString(6, p.getNotes()); statement.setInt(7, p.getPartner()); statement.setString(8, p.getAlerts()); statement.setString(9, p.getMyoscarVerified()); statement.setString(10, p.getClinic()); statement.setString(11, p.getAvailability()); statement.execute(); } catch (SQLException e) { System.out.println("Error: Could not create patient"); e.printStackTrace(); } finally { try { statement.close(); } catch (Exception e) { // Ignore } } } }
/** * Changes a patient in the database * * @param p The Patient object containing the new data (should have the same ID as the patient to * replace) */ public void updatePatient(Patient p) { try { statement = con.prepareStatement( "UPDATE patients SET firstname=?, lastname=?, preferredname=?, volunteer=?, " + "gender=?, notes=?, clinic=?, availability=?, myoscar_verified=?, alerts=?, volunteer2=? WHERE patient_ID=?"); statement.setString(1, p.getFirstName()); statement.setString(2, p.getLastName()); statement.setString(3, p.getPreferredName()); statement.setInt(4, p.getVolunteer()); statement.setString(5, p.getGender()); statement.setString(6, p.getNotes()); statement.setString(7, p.getClinic()); statement.setString(8, p.getAvailability()); statement.setString(9, p.getMyoscarVerified()); statement.setString(10, p.getAlerts()); statement.setInt(11, p.getPartner()); statement.setInt(12, p.getPatientID()); statement.execute(); } catch (SQLException e) { System.out.println("Error: Could not update patient"); e.printStackTrace(); } finally { try { statement.close(); } catch (Exception e) { // Ignore } } }
/** @return a list of patients who have availability */ public List<Patient> getAllPatientsWithAvailability() { List<Patient> patients = getAllPatients(); List<Patient> aList = new ArrayList<Patient>(); String pAvailability; for (Patient p : patients) { pAvailability = p.getAvailability(); if ((!Utils.isNullOrEmpty(pAvailability)) && (!pAvailability.equals("1non,2non,3non,4non,5non"))) aList.add(p); } return aList; }