public class GrouperVersion_v3414 extends AbstractGrouper_2 implements HomeHealthGrouperIF
clinicalModel_1, clinicalModel_2, clinicalModel_3, clinicalModel_4, dataManager, effectiveDateStart, effectiveDateStartWindow, effectiveDateThru, nrsScoringModel, versionDEFAULT_BLANK_VALUE| Constructor and Description |
|---|
GrouperVersion_v3414()
Constructor that sets the effective start and thru date to January 1,
|
GrouperVersion_v3414(java.util.Calendar start,
java.util.Calendar thru,
java.util.Calendar window,
java.lang.String versionName)
Constructor that sets the effective start, thru, and window date to the
supplied dates.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addEventListener(HomeHealthEventListenerIF listener)
This method adds a HomeHealthEventListenerIF to the list of listeners.
|
void |
copyCodes(HomeHealthRecordIF recordSrc,
HomeHealthRecordIF recordDest)
This copies codes from one record to another without any cloning.
|
java.lang.Class |
getAcceptableRecordClass()
Each version has an acceptable record type that can be processed, and
this returns that class allowing the isValidForVersion() to more
appropriately check the validity of processing a specific record.
|
java.util.List<CaseMixAdjustmentItemIF> |
getCaseMixAdjustments()
gets the Standard services case mix adjustment table
|
java.util.List<DiagnosisCodeIF> |
getClinicalCodes()
Provides the list of Clinical/Functional codes associated with this
version and used for scoring.
|
HomeHealthRecordValidatorIF |
getClinicalValidator()
Provides the validator for the Clinical portion of the scoring
|
java.util.List<DiagnosticGroupIF> |
getDiagnosticGroups()
gets the list of diagnostic Groups associated with the
Clinical/Functional diagnosis
|
java.util.List<DiagnosticGroupIF> |
getDiagnosticGroupsNRS()
gets the list of diagnostic Groups associated with the Non-Routine
Supplies (NRS) diagnosis
|
java.util.Iterator<HomeHealthEventListenerIF> |
getEventListeners()
this method returns an enumerated list of HomeHealthEventListenerIF
objects
|
java.util.List<HomeHealthEventListenerIF> |
getEventListenersList()
gets the underlying list of listeners; a little more dangerous than
using the getEventListeners() that returns the Iterator
|
int |
getListenerCount()
gets the number listeners
|
java.lang.String |
getName()
Get the name of this version
|
java.util.List<DiagnosisCodeIF> |
getNonRoutineCodes()
gets a list of Diagnosis Codes for Non-routine Services
|
java.util.List<CaseMixAdjustmentItemIF> |
getNRSCaseMixAdjustments()
gets the Non-Routine services case mix adjustment table
|
HomeHealthRecordValidatorIF |
getNRSValidator()
Provides the validator for the Non-Routine Supplies portion of the
scoring
|
void |
init(java.util.Properties props)
Sets up this version by loading the related Diagnosis code / Group data,
and initializing the scoring models: 4 clinical/functional models (one
for each equation), and one Non-Routine Supplies model
|
boolean |
isValidDiagnosisCode(HomeHealthRecordIF record,
DiagnosisCodeIF code)
Determines if the Diagnosis code is valid for this grouper
|
void |
notifyEventListeners(HomeHealthEventIF event)
Sends a event to the listeners.
|
HomeHealthRecordValidatorIF |
populateValidateClinicalCodes(HomeHealthRecordIF record)
This method is not very efficient for scoring a record, since it
populates the codes into the record each time, prior to validating them.
|
void |
removeEventListener(HomeHealthEventListenerIF listener)
Removes a single event listener from the list
|
void |
removeEventListeners()
Removes all the listeners from the list
|
ScoringResultsIF |
score(HomeHealthRecordIF recordOasisC,
boolean validateDates)
When scoring a recordOasisC, the data can either come from a OASIS-B or
an OASIS-C source.
|
ScoringResultsIF |
score(HomeHealthRecordIF record,
boolean validateDates,
CollectionValidationEditsIF validationEdits,
java.util.Collection<HomeHealthEventListenerIF> listeners)
Scores the record using the supplied validation information (if non-null)
instead of using the built in validation capabilities.
|
createHippsCode, createHippsCode, determineScoreOrdergetClinicalModel_1, getClinicalModel_2, getClinicalModel_3, getClinicalModel_4, getDescription, getEffectiveDateStart, getEffectiveDateStartWindow, getEffectiveDateThru, getGrouperDataManager, getNrsScoringModel, getVersion, isValidForVersion, reportNonScoringDiagnosis, setClinicalModel_1, setClinicalModel_2, setClinicalModel_3, setClinicalModel_4, setDescription, setEffectiveDateStart, setEffectiveDateStartWindow, setEffectiveDateThru, setGrouperDataManager, setName, setNrsScoringModel, setVersionclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitdetermineScoreOrder, getEffectiveDateStart, getEffectiveDateStartWindow, getEffectiveDateThru, getGrouperDataManager, getVersion, isValidForVersion, setEffectiveDateStart, setEffectiveDateStartWindow, setEffectiveDateThru, setVersiongetDescription, setDescriptionpublic GrouperVersion_v3414()
public GrouperVersion_v3414(java.util.Calendar start,
java.util.Calendar thru,
java.util.Calendar window,
java.lang.String versionName)
start - - the effective start datethru - - the effective thru date, inclusivewindow - - the start of the overlap window. May be nullversionName - - 5 character string. Can not be null.public void copyCodes(HomeHealthRecordIF recordSrc, HomeHealthRecordIF recordDest)
copyCodes in class AbstractGrouperrecordDest - public java.util.List<DiagnosticGroupIF> getDiagnosticGroups()
getDiagnosticGroups in interface HomeHealthGrouperIFgetDiagnosticGroups in class AbstractGrouperpublic java.util.List<DiagnosticGroupIF> getDiagnosticGroupsNRS()
getDiagnosticGroupsNRS in interface HomeHealthGrouperIFgetDiagnosticGroupsNRS in class AbstractGrouperpublic java.util.List<CaseMixAdjustmentItemIF> getCaseMixAdjustments()
getCaseMixAdjustments in interface HomeHealthGrouperIFgetCaseMixAdjustments in class AbstractGrouperpublic HomeHealthRecordValidatorIF getClinicalValidator()
getClinicalValidator in interface HomeHealthGrouperIFpublic java.lang.Class getAcceptableRecordClass()
AbstractGroupergetAcceptableRecordClass in interface HomeHealthGrouperIFgetAcceptableRecordClass in class AbstractGrouperpublic java.util.List<DiagnosisCodeIF> getClinicalCodes()
getClinicalCodes in interface HomeHealthGrouperIFgetClinicalCodes in class AbstractGrouperpublic java.lang.String getName()
getName in interface NamablegetName in class AbstractGrouperpublic java.util.List<CaseMixAdjustmentItemIF> getNRSCaseMixAdjustments()
getNRSCaseMixAdjustments in interface HomeHealthGrouperIFgetNRSCaseMixAdjustments in class AbstractGrouperpublic HomeHealthRecordValidatorIF getNRSValidator()
getNRSValidator in interface HomeHealthGrouperIFpublic java.util.List<DiagnosisCodeIF> getNonRoutineCodes()
getNonRoutineCodes in interface HomeHealthGrouperIFgetNonRoutineCodes in class AbstractGrouperpublic void init(java.util.Properties props)
throws java.lang.Exception
init in interface Initializableprops - java.lang.Exceptionpublic boolean isValidDiagnosisCode(HomeHealthRecordIF record, DiagnosisCodeIF code)
HomeHealthGrouperIFisValidDiagnosisCode in interface HomeHealthGrouperIFisValidDiagnosisCode in class AbstractGrouperpublic HomeHealthRecordValidatorIF populateValidateClinicalCodes(HomeHealthRecordIF record)
populateValidateClinicalCodes in interface HomeHealthGrouperIFrecord - public ScoringResultsIF score(HomeHealthRecordIF record, boolean validateDates, CollectionValidationEditsIF validationEdits, java.util.Collection<HomeHealthEventListenerIF> listeners)
HomeHealthGrouperIFscore in interface HomeHealthGrouperIFscore in class AbstractGrouper_2validationEdits - - if non-null, then this information is used
during scoring as the validation information, otherwise, if null, the
built in validation is performed.public ScoringResultsIF score(HomeHealthRecordIF recordOasisC, boolean validateDates)
score in interface HomeHealthGrouperIFscore in class AbstractGrouper_2recordOasisC - validateDates - public void addEventListener(HomeHealthEventListenerIF listener)
HomeHealthEventNotifierIFaddEventListener in interface HomeHealthEventNotifierIFpublic java.util.Iterator<HomeHealthEventListenerIF> getEventListeners()
HomeHealthEventNotifierIFgetEventListeners in interface HomeHealthEventNotifierIFpublic java.util.List<HomeHealthEventListenerIF> getEventListenersList()
HomeHealthEventNotifierIFgetEventListenersList in interface HomeHealthEventNotifierIFpublic void notifyEventListeners(HomeHealthEventIF event)
HomeHealthEventNotifierIFnotifyEventListeners in interface HomeHealthEventNotifierIFpublic void removeEventListener(HomeHealthEventListenerIF listener)
HomeHealthEventNotifierIFremoveEventListener in interface HomeHealthEventNotifierIFpublic void removeEventListeners()
HomeHealthEventNotifierIFremoveEventListeners in interface HomeHealthEventNotifierIFpublic int getListenerCount()
HomeHealthEventNotifierIFgetListenerCount in interface HomeHealthEventNotifierIF