@Transactional public interface PatientSetService extends OpenmrsService
Modifier and Type | Interface and Description |
---|---|
static class |
PatientSetService.BooleanOperator |
static class |
PatientSetService.GroupMethod |
static class |
PatientSetService.Modifier |
static class |
PatientSetService.PatientLocationMethod |
static class |
PatientSetService.TimeModifier |
Modifier and Type | Method and Description |
---|---|
Cohort |
convertPatientIdentifier(java.util.List<java.lang.String> identifiers)
TODO write something here
|
java.lang.String |
exportXml(Cohort ps)
Export a set of patients to an XML
|
java.lang.String |
exportXml(java.lang.Integer patientId) |
Cohort |
getAllPatients() |
java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.lang.Object>> |
getCharacteristics(Cohort patients)
TODO write something here
|
java.lang.Integer |
getCountOfPatients() |
java.util.Map<java.lang.Integer,java.util.List<DrugOrder>> |
getCurrentDrugOrders(Cohort ps,
Concept drugSet) |
java.util.Map<java.lang.Integer,PatientProgram> |
getCurrentPatientPrograms(Cohort ps,
Program program) |
java.util.Map<java.lang.Integer,PatientState> |
getCurrentStates(Cohort ps,
ProgramWorkflow wf)
Gets statistical information about current states of patients within given cohort for specific program workflow
|
java.util.Map<java.lang.Integer,java.util.List<DrugOrder>> |
getDrugOrders(Cohort ps,
Concept drugSet) |
java.util.Map<java.lang.Integer,java.lang.Object> |
getEncounterAttrsByType(Cohort patients,
java.util.List<EncounterType> encTypes,
java.lang.String attr)
TODO write something here
|
java.util.Map<java.lang.Integer,Encounter> |
getEncounters(Cohort patients)
This method returns a map of patients matched against their most recent encounters given a
Cohort of patients, see
EncounterService.getAllEncounters(Cohort) which gets a map of
patient matched against lists of all their encounters. |
java.util.List<Encounter> |
getEncountersByForm(Cohort patients,
java.util.List<Form> form)
Gets a list of encounters associated with the given form, filtered by the given patient set.
|
java.util.Map<java.lang.Integer,Encounter> |
getEncountersByType(Cohort patients,
EncounterType encType)
TODO write something here
|
java.util.Map<java.lang.Integer,Encounter> |
getEncountersByType(Cohort patients,
java.util.List<EncounterType> encType)
TODO write something here
|
java.util.Map<java.lang.Integer,java.lang.Object> |
getFirstEncounterAttrsByType(Cohort patients,
java.util.List<EncounterType> encTypes,
java.lang.String attr)
TODO write something here
|
java.util.Map<java.lang.Integer,Encounter> |
getFirstEncountersByType(Cohort patients,
EncounterType encType)
TODO write something here
|
java.util.Map<java.lang.Integer,Encounter> |
getFirstEncountersByType(Cohort patients,
java.util.List<EncounterType> types)
TODO write something here
|
Cohort |
getInverseOfCohort(Cohort cohort)
Equivalent to Cohort.subtract(PatientSetService.getAllPatients(), cohort) but may eventually
perform faster by delegating to the database.
|
java.util.Map<java.lang.Integer,java.util.List<Obs>> |
getObservations(Cohort patients,
Concept concept) |
java.util.Map<java.lang.Integer,java.util.List<Obs>> |
getObservations(Cohort patients,
Concept concept,
java.util.Date fromDate,
java.util.Date toDate)
Date range is inclusive of both endpoints
|
java.util.Map<java.lang.Integer,java.util.List<java.util.List<java.lang.Object>>> |
getObservationsValues(Cohort patients,
Concept c)
TODO write something here
|
java.util.Map<java.lang.Integer,java.util.List<java.util.List<java.lang.Object>>> |
getObservationsValues(Cohort patients,
Concept c,
java.util.List<java.lang.String> attributes)
Deprecated.
|
java.util.Map<java.lang.Integer,java.util.List<java.util.List<java.lang.Object>>> |
getObservationsValues(Cohort patients,
Concept c,
java.util.List<java.lang.String> attributes,
java.lang.Integer limit,
boolean showMostRecentFirst)
Returns a mapping from patient id to obs for concept
c |
java.util.Map<java.lang.Integer,java.lang.Object> |
getPatientAttributes(Cohort patients,
java.lang.String classNameDotProperty,
boolean returnAll)
TODO write something here
|
java.util.Map<java.lang.Integer,java.lang.Object> |
getPatientAttributes(Cohort patients,
java.lang.String className,
java.lang.String property,
boolean returnAll)
TODO write something here
|
java.util.Map<java.lang.Integer,PatientIdentifier> |
getPatientIdentifiersByType(Cohort patients,
PatientIdentifierType type)
Deprecated.
use method by same name that returns just the string instead of the whole object
|
java.util.Map<java.lang.Integer,java.lang.String> |
getPatientIdentifierStringsByType(Cohort patients,
PatientIdentifierType type)
Gets a map of patient identifiers values by identifier type, indexed by patient primary key.
|
java.util.Map<java.lang.Integer,PatientProgram> |
getPatientPrograms(Cohort ps,
Program program)
Gets program enrollment data for the given cohort in the given program.
|
java.util.List<Patient> |
getPatients(java.util.Collection<java.lang.Integer> patientIds)
TODO write something here
|
Cohort |
getPatients(java.lang.Integer start,
java.lang.Integer size)
Get a batch of patients that are not voided in the database
|
Cohort |
getPatientsByCharacteristics(java.lang.String gender,
java.util.Date minBirthdate,
java.util.Date maxBirthdate) |
Cohort |
getPatientsByCharacteristics(java.lang.String gender,
java.util.Date minBirthdate,
java.util.Date maxBirthdate,
java.lang.Integer minAge,
java.lang.Integer maxAge,
java.lang.Boolean aliveOnly,
java.lang.Boolean deadOnly)
Get patients by specified gender, birthdate range, age range, and alive status (all optional)
|
Cohort |
getPatientsByCharacteristics(java.lang.String gender,
java.util.Date minBirthdate,
java.util.Date maxBirthdate,
java.lang.Integer minAge,
java.lang.Integer maxAge,
java.lang.Boolean aliveOnly,
java.lang.Boolean deadOnly,
java.util.Date effectiveDate)
Get patients by specified gender, birthdate range, age range, and alive status (all optional)
|
Cohort |
getPatientsByProgramAndState(Program program,
java.util.List<ProgramWorkflowState> stateList,
java.util.Date fromDate,
java.util.Date toDate)
Gets patients who are enrolled in the given program or in the given state(s) at the specified
time
|
Cohort |
getPatientsHavingDateObs(java.lang.Integer conceptId,
java.util.Date startTime,
java.util.Date endTime) |
Cohort |
getPatientsHavingDrugOrder(java.util.Collection<java.lang.Integer> patientIds,
java.util.Collection<java.lang.Integer> takingIds,
java.util.Date onDate)
Returns a Cohort of patient who had drug orders for a set of drugs active on a certain date.
|
Cohort |
getPatientsHavingDrugOrder(java.util.Collection<java.lang.Integer> patientIds,
java.util.Collection<java.lang.Integer> drugIds,
PatientSetService.GroupMethod groupMethod,
java.util.Date fromDate,
java.util.Date toDate)
Returns a Cohort of patient who had drug orders for a set of drugs active between a pair of
dates.
|
Cohort |
getPatientsHavingDrugOrder(java.util.List<Drug> drug,
java.util.List<Concept> drugConcept,
java.util.Date startDateFrom,
java.util.Date startDateTo,
java.util.Date stopDateFrom,
java.util.Date stopDateTo,
java.lang.Boolean discontinued,
java.util.List<Concept> discontinuedReason) |
Cohort |
getPatientsHavingEncounters(EncounterType encounterType,
Location location,
Form form,
java.util.Date fromDate,
java.util.Date toDate,
java.lang.Integer minCount,
java.lang.Integer maxCount)
Searches for patients who have encounters as described by the arguments to this method
|
Cohort |
getPatientsHavingEncounters(java.util.List<EncounterType> encounterTypeList,
Location location,
Form form,
java.util.Date fromDate,
java.util.Date toDate,
java.lang.Integer minCount,
java.lang.Integer maxCount)
Gets patients who have encounters as described by the parameters specified (all optional)
|
Cohort |
getPatientsHavingLocation(java.lang.Integer locationId) |
Cohort |
getPatientsHavingLocation(java.lang.Integer locationId,
PatientSetService.PatientLocationMethod method) |
Cohort |
getPatientsHavingLocation(Location loc) |
Cohort |
getPatientsHavingLocation(Location loc,
PatientSetService.PatientLocationMethod method) |
Cohort |
getPatientsHavingNumericObs(java.lang.Integer conceptId,
PatientSetService.TimeModifier timeModifier,
PatientSetService.Modifier modifier,
java.lang.Number value,
java.util.Date fromDate,
java.util.Date toDate) |
Cohort |
getPatientsHavingObs(java.lang.Integer conceptId,
PatientSetService.TimeModifier timeModifier,
PatientSetService.Modifier modifier,
java.lang.Object value,
java.util.Date fromDate,
java.util.Date toDate)
Searches for patients who have observations as described by the arguments to this method
|
Cohort |
getPatientsHavingPersonAttribute(PersonAttributeType attribute,
java.lang.String value)
At least one of attribute and value must be non-null
|
Cohort |
getPatientsHavingTextObs(Concept concept,
java.lang.String value,
PatientSetService.TimeModifier timeModifier) |
Cohort |
getPatientsHavingTextObs(java.lang.Integer conceptId,
java.lang.String value,
PatientSetService.TimeModifier timeModifier) |
Cohort |
getPatientsInProgram(Program program,
java.util.Date fromDate,
java.util.Date toDate) |
java.util.Map<java.lang.Integer,java.lang.Object> |
getPersonAttributes(Cohort patients,
java.lang.String attributeName,
java.lang.String joinClass,
java.lang.String joinProperty,
java.lang.String outputColumn,
boolean returnAll) |
java.util.Map<java.lang.Integer,java.util.List<Relationship>> |
getRelationships(Cohort ps,
RelationshipType relType) |
java.util.Map<java.lang.Integer,java.util.List<Person>> |
getRelatives(Cohort ps,
RelationshipType relType,
boolean forwards) |
java.util.Map<java.lang.Integer,java.lang.String> |
getShortPatientDescriptions(java.util.Collection<java.lang.Integer> patientIds) |
void |
setPatientSetDAO(PatientSetDAO dao) |
onShutdown, onStartup
void setPatientSetDAO(PatientSetDAO dao)
@Transactional(readOnly=true) java.lang.String exportXml(Cohort ps)
ps
- The set you want to export as XML@Transactional(readOnly=true) java.lang.String exportXml(java.lang.Integer patientId)
@Transactional(readOnly=true) Cohort getAllPatients() throws DAOException
DAOException
@Transactional(readOnly=true) Cohort getPatientsByCharacteristics(java.lang.String gender, java.util.Date minBirthdate, java.util.Date maxBirthdate) throws DAOException
DAOException
@Transactional(readOnly=true) Cohort getPatientsByCharacteristics(java.lang.String gender, java.util.Date minBirthdate, java.util.Date maxBirthdate, java.lang.Integer minAge, java.lang.Integer maxAge, java.lang.Boolean aliveOnly, java.lang.Boolean deadOnly) throws DAOException
gender
- minBirthdate
- maxBirthdate
- minAge
- maxAge
- aliveOnly
- deadOnly
- DAOException
@Transactional(readOnly=true) Cohort getPatientsByCharacteristics(java.lang.String gender, java.util.Date minBirthdate, java.util.Date maxBirthdate, java.lang.Integer minAge, java.lang.Integer maxAge, java.lang.Boolean aliveOnly, java.lang.Boolean deadOnly, java.util.Date effectiveDate) throws DAOException
gender
- minBirthdate
- maxBirthdate
- minAge
- maxAge
- aliveOnly
- deadOnly
- effectiveDate
- DAOException
@Transactional(readOnly=true) Cohort getPatientsHavingNumericObs(java.lang.Integer conceptId, PatientSetService.TimeModifier timeModifier, PatientSetService.Modifier modifier, java.lang.Number value, java.util.Date fromDate, java.util.Date toDate)
@Transactional(readOnly=true) Cohort getPatientsHavingObs(java.lang.Integer conceptId, PatientSetService.TimeModifier timeModifier, PatientSetService.Modifier modifier, java.lang.Object value, java.util.Date fromDate, java.util.Date toDate)
conceptId
- timeModifier
- modifier
- value
- fromDate
- toDate
- @Transactional(readOnly=true) Cohort getPatientsHavingEncounters(EncounterType encounterType, Location location, Form form, java.util.Date fromDate, java.util.Date toDate, java.lang.Integer minCount, java.lang.Integer maxCount)
encounterType
- location
- form
- fromDate
- toDate
- minCount
- maxCount
- @Transactional(readOnly=true) Cohort getPatientsHavingEncounters(java.util.List<EncounterType> encounterTypeList, Location location, Form form, java.util.Date fromDate, java.util.Date toDate, java.lang.Integer minCount, java.lang.Integer maxCount)
encounterTypeList
- location
- form
- fromDate
- toDate
- minCount
- maxCount
- @Transactional(readOnly=true) Cohort getPatientsByProgramAndState(Program program, java.util.List<ProgramWorkflowState> stateList, java.util.Date fromDate, java.util.Date toDate)
program
- stateList
- fromDate
- toDate
- @Transactional(readOnly=true) Cohort getPatientsInProgram(Program program, java.util.Date fromDate, java.util.Date toDate)
@Transactional(readOnly=true) Cohort getPatientsHavingDateObs(java.lang.Integer conceptId, java.util.Date startTime, java.util.Date endTime)
@Transactional(readOnly=true) Cohort getPatientsHavingTextObs(Concept concept, java.lang.String value, PatientSetService.TimeModifier timeModifier)
@Transactional(readOnly=true) Cohort getPatientsHavingTextObs(java.lang.Integer conceptId, java.lang.String value, PatientSetService.TimeModifier timeModifier)
@Transactional(readOnly=true) Cohort getPatientsHavingLocation(Location loc)
@Transactional(readOnly=true) Cohort getPatientsHavingLocation(Location loc, PatientSetService.PatientLocationMethod method)
@Transactional(readOnly=true) Cohort getPatientsHavingLocation(java.lang.Integer locationId)
@Transactional(readOnly=true) Cohort getPatientsHavingLocation(java.lang.Integer locationId, PatientSetService.PatientLocationMethod method)
@Transactional(readOnly=true) Cohort getPatientsHavingDrugOrder(java.util.Collection<java.lang.Integer> patientIds, java.util.Collection<java.lang.Integer> takingIds, java.util.Date onDate)
patientIds
- Collection of patientIds you're interested in. NULL means all patients.takingIds
- Collection of drugIds the patient is taking. (Or the empty set to mean
"any drug" or NULL to mean "no drugs")onDate
- Which date to look at the patients' drug orders. (NULL defaults to now().)@Transactional(readOnly=true) Cohort getPatientsHavingDrugOrder(java.util.Collection<java.lang.Integer> patientIds, java.util.Collection<java.lang.Integer> drugIds, PatientSetService.GroupMethod groupMethod, java.util.Date fromDate, java.util.Date toDate)
patientIds
- Collection of patientIds you're interested in. NULL means all patients.drugIds
- Collection of drugIds the patient is taking. (Or the empty set to mean
"any drug" or NULL to mean "no drugs")groupMethod
- whether to do NONE, ALL, or ANY of the list of specified ids.fromDate
- Beginning of date range to look at (NULL defaults to toDate if that isn't
null, or now() if it is.)toDate
- End of date range to look at (NULL defaults to fromDate if that isn't null, or
now() if it is.)@Transactional(readOnly=true) Cohort getPatientsHavingDrugOrder(java.util.List<Drug> drug, java.util.List<Concept> drugConcept, java.util.Date startDateFrom, java.util.Date startDateTo, java.util.Date stopDateFrom, java.util.Date stopDateTo, java.lang.Boolean discontinued, java.util.List<Concept> discontinuedReason)
@Transactional(readOnly=true) Cohort getPatientsHavingPersonAttribute(PersonAttributeType attribute, java.lang.String value)
attribute
- if not null, look for this attributevalue
- if not null, look for this value@Transactional(readOnly=true) java.util.Map<java.lang.Integer,java.lang.String> getShortPatientDescriptions(java.util.Collection<java.lang.Integer> patientIds)
@Transactional(readOnly=true) java.util.Map<java.lang.Integer,java.util.List<Obs>> getObservations(Cohort patients, Concept concept)
@Transactional(readOnly=true) java.util.Map<java.lang.Integer,java.util.List<Obs>> getObservations(Cohort patients, Concept concept, java.util.Date fromDate, java.util.Date toDate)
@Transactional(readOnly=true) java.util.Map<java.lang.Integer,java.util.List<java.util.List<java.lang.Object>>> getObservationsValues(Cohort patients, Concept c)
patients
- c
- @Deprecated @Transactional(readOnly=true) java.util.Map<java.lang.Integer,java.util.List<java.util.List<java.lang.Object>>> getObservationsValues(Cohort patients, Concept c, java.util.List<java.lang.String> attributes)
getObservationsValues(Cohort, Concept, List, Integer, boolean)
instead@Transactional(readOnly=true) java.util.Map<java.lang.Integer,java.util.List<java.util.List<java.lang.Object>>> getObservationsValues(Cohort patients, Concept c, java.util.List<java.lang.String> attributes, java.lang.Integer limit, boolean showMostRecentFirst)
c
The returned List< attribute value > is [obs value, attr value, attr value, attr value...]
The returned List> represents the obs rows
patients
- the cohort to restrict to. if null, then all patients are fetchedc
- the concept to look for in obs.concept_idattributes
- list of attributeslimit
- the number of patients to limit the results to. If null or less than zero,
return allshowMostRecentFirst
- if true, obs with the highest obsDatetime will be first in the
ListMap>>
@Transactional(readOnly=true) java.util.Map<java.lang.Integer,Encounter> getEncountersByType(Cohort patients, EncounterType encType)
patients
- Cohort of patients to searchencType
- the type of the encounterjava.util.Map<java.lang.Integer,java.lang.Object> getEncounterAttrsByType(Cohort patients, java.util.List<EncounterType> encTypes, java.lang.String attr)
patients
- Cohort of patients to searchencTypes
- Listattr
- String
of attributes to get@Transactional(readOnly=true) java.util.Map<java.lang.Integer,Encounter> getEncountersByType(Cohort patients, java.util.List<EncounterType> encType)
patients
- Cohort of patients to searchencType
- List@Transactional(readOnly=true) java.util.Map<java.lang.Integer,Encounter> getEncounters(Cohort patients)
EncounterService.getAllEncounters(Cohort)
which gets a map of
patient matched against lists of all their encounters.patients
- Cohort of patients to searchEncounterService.getAllEncounters(Cohort)
@Transactional(readOnly=true) java.util.Map<java.lang.Integer,Encounter> getFirstEncountersByType(Cohort patients, EncounterType encType)
patients
- Cohort of patients to searchencType
- @Transactional(readOnly=true) java.util.Map<java.lang.Integer,Encounter> getFirstEncountersByType(Cohort patients, java.util.List<EncounterType> types)
patients
- Cohort of patients to searchtypes
- List@Transactional(readOnly=true) java.util.Map<java.lang.Integer,java.lang.Object> getFirstEncounterAttrsByType(Cohort patients, java.util.List<EncounterType> encTypes, java.lang.String attr)
patients
- Cohort of patients to searchencTypes
- Listattr
- @Transactional(readOnly=true) java.util.Map<java.lang.Integer,java.lang.Object> getPatientAttributes(Cohort patients, java.lang.String className, java.lang.String property, boolean returnAll)
patients
- Cohort of patients to searchclassName
- property
- returnAll
- @Transactional(readOnly=true) java.util.Map<java.lang.Integer,java.lang.Object> getPatientAttributes(Cohort patients, java.lang.String classNameDotProperty, boolean returnAll)
patients
- classNameDotProperty
- returnAll
- @Transactional(readOnly=true) java.util.Map<java.lang.Integer,java.lang.Object> getPersonAttributes(Cohort patients, java.lang.String attributeName, java.lang.String joinClass, java.lang.String joinProperty, java.lang.String outputColumn, boolean returnAll)
patients
- attributeName
- joinClass
- joinProperty
- outputColumn
- returnAll
- @Transactional(readOnly=true) java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.lang.Object>> getCharacteristics(Cohort patients)
patients
- Cohort of patients to look up@Deprecated @Transactional(readOnly=true) java.util.Map<java.lang.Integer,PatientIdentifier> getPatientIdentifiersByType(Cohort patients, PatientIdentifierType type)
@Transactional(readOnly=true) java.util.Map<java.lang.Integer,java.lang.String> getPatientIdentifierStringsByType(Cohort patients, PatientIdentifierType type)
patients
- Cohort of patients to look uptype
- PatientIdentifierType to retrieve@Transactional(readOnly=true) Cohort convertPatientIdentifier(java.util.List<java.lang.String> identifiers)
identifiers
- List of String patient identifiers@Transactional(readOnly=true) java.util.List<Patient> getPatients(java.util.Collection<java.lang.Integer> patientIds)
patientIds
- @Transactional(readOnly=true) java.util.Map<java.lang.Integer,PatientState> getCurrentStates(Cohort ps, ProgramWorkflow wf)
ps
- the patient's cohort objectwf
- the program workflow instance@Transactional(readOnly=true) java.util.Map<java.lang.Integer,PatientProgram> getCurrentPatientPrograms(Cohort ps, Program program)
@Transactional(readOnly=true) java.util.Map<java.lang.Integer,PatientProgram> getPatientPrograms(Cohort ps, Program program)
ps
- the cohort to get data forprogram
- the program to look for enrollments in@Transactional(readOnly=true) java.util.Map<java.lang.Integer,java.util.List<Relationship>> getRelationships(Cohort ps, RelationshipType relType)
@Transactional(readOnly=true) java.util.Map<java.lang.Integer,java.util.List<Person>> getRelatives(Cohort ps, RelationshipType relType, boolean forwards)
@Transactional(readOnly=true) java.util.Map<java.lang.Integer,java.util.List<DrugOrder>> getCurrentDrugOrders(Cohort ps, Concept drugSet)
@Transactional(readOnly=true) java.util.Map<java.lang.Integer,java.util.List<DrugOrder>> getDrugOrders(Cohort ps, Concept drugSet)
@Transactional(readOnly=true) java.util.List<Encounter> getEncountersByForm(Cohort patients, java.util.List<Form> form)
patients
- Cohort of the patients to filter by (null will return all encounters for all
patients)form
- ListCohort getInverseOfCohort(Cohort cohort)
cached
- java.lang.Integer getCountOfPatients()
Cohort getPatients(java.lang.Integer start, java.lang.Integer size)
start
- the starting indexsize
- the number of patients to get in this batchCopyright © 2018 OpenMRS Inc.. All Rights Reserved.