@Override public boolean setPatientConsents(Patient patient, Iterable<String> consents) { try { List<Consent> existingConsents = this.selectFromSystem(consents); SaveablePatientConsentHolder holder = this.getPatientConsentHolder(patient); holder.setConsents(convertToIds(existingConsents)); holder.save(); return true; } catch (Exception ex) { this.logger.error("Could not update consents in patient record {}. {}", patient, ex.getMessage()); } return false; }
@Override public boolean setPatientConsents(Patient patient, Iterable<String> consents) { try { List<Consent> existingConsents = this.selectFromSystem(consents); SaveablePatientConsentHolder holder = this.getPatientConsentHolder(patient); holder.setConsents(convertToIds(existingConsents)); holder.save(); return true; } catch (Exception ex) { this.logger.error("Could not update consents in patient record {}. {}", patient, ex.getMessage()); } return false; }
/** * @param grant if true will grant the consent, otherwise will revoke * @return if operation was successful */ private boolean manageConsent(Patient patient, String consentId, boolean grant) { if (!this.isValidConsentId(consentId)) { this.logger.error("Invalid consent id ({}) was supplied", consentId); return false; } try { SaveablePatientConsentHolder consentHolder = this.getPatientConsentHolder(patient); List<String> currentConsents = consentHolder.getConsents(); if (grant) { if (!currentConsents.contains(consentId)) { currentConsents.add(consentId); } } else { currentConsents.remove(consentId); } consentHolder.setConsents(currentConsents); consentHolder.save(); return true; } catch (Exception ex) { this.logger.error("Could not update consent {} in patient record {}. {}", consentId, patient.getId(), ex.getMessage()); return false; } }
/** * @param grant if true will grant the consent, otherwise will revoke * @return if operation was successful */ private boolean manageConsent(Patient patient, String consentId, boolean grant) { if (!this.isValidConsentId(consentId)) { this.logger.error("Invalid consent id ({}) was supplied", consentId); return false; } try { SaveablePatientConsentHolder consentHolder = this.getPatientConsentHolder(patient); List<String> currentConsents = consentHolder.getConsents(); if (grant) { if (!currentConsents.contains(consentId)) { currentConsents.add(consentId); } } else { currentConsents.remove(consentId); } consentHolder.setConsents(currentConsents); consentHolder.save(); return true; } catch (Exception ex) { this.logger.error("Could not update consent {} in patient record {}. {}", consentId, patient.getId(), ex.getMessage()); return false; } }