/** * Adds a prescription bean to the database. * * @param pres The prescription bean to be added. * @return The unique ID of the newly added bean. * @throws DBException */ public long addPrescription(PrescriptionBean pres) throws DBException { Connection conn = null; PreparedStatement ps = null; try { conn = factory.getConnection(); ps = conn.prepareStatement( "INSERT INTO OVMedication (VisitID,NDCode,StartDate,EndDate,Dosage,Instructions) VALUES (?,?,?,?,?,?)"); prescriptionLoader.loadParameters(ps, pres); ps.executeUpdate(); return DBUtil.getLastInsert(conn); } catch (SQLException e) { e.printStackTrace(); throw new DBException(e); } finally { DBUtil.closeConnection(conn, ps); } }
/** * Returns all of the prescriptions associated with the given office visit * * @param visitID The ID of the office visit. * @return A java.util.List of prescriptions. * @throws DBException */ public List<PrescriptionBean> getPrescriptions(long visitID) throws DBException { Connection conn = null; PreparedStatement ps = null; try { conn = factory.getConnection(); ps = conn.prepareStatement( "Select * From OVMedication,NDCodes Where OVMedication.VisitID = ? " + "AND NDCodes.Code=OVMedication.NDCode"); ps.setLong(1, visitID); ResultSet rs = ps.executeQuery(); return prescriptionLoader.loadList(rs); } catch (SQLException e) { e.printStackTrace(); throw new DBException(e); } finally { DBUtil.closeConnection(conn, ps); } }
/** * Edits an existing prescription bean. * * @param pres The newly updated prescription bean. * @return A long indicating the ID of the newly updated prescription bean. * @throws DBException */ public long editPrescription(PrescriptionBean pres) throws DBException { Connection conn = null; PreparedStatement ps = null; try { conn = factory.getConnection(); // ps = conn.prepareStatement("UPDATE OVMedication // (VisitID,NDCode,StartDate,EndDate,Dosage,Instructions) VALUES (?,?,?,?,?,?)"); String statement = "UPDATE OVMedication " + "SET VisitID=?, NDCode=?, StartDate=?, EndDate=?, Dosage=?, Instructions=? " + "WHERE ID=?"; ps = conn.prepareStatement(statement); prescriptionLoader.loadParameters(ps, pres); ps.setLong(7, pres.getId()); ps.executeUpdate(); return DBUtil.getLastInsert(conn); } catch (SQLException e) { e.printStackTrace(); throw new DBException(e); } finally { DBUtil.closeConnection(conn, ps); } }