public class ClinicalFunctional_ScoringModel_v3210 extends java.lang.Object implements HomeHealthScoringModelIF
Modifier and Type | Field and Description |
---|---|
protected HomeHealthGrouperIF |
grouper |
protected GrouperDataManager |
grouperDataManager |
Constructor and Description |
---|
ClinicalFunctional_ScoringModel_v3210(HomeHealthGrouperIF grouper,
GrouperDataManager grouperDataManager,
int equationId)
Constructor with references to the Grouper, the Data manager, and the
equation id
|
Modifier and Type | Method and Description |
---|---|
protected int |
calculatePrimaryAdjustment(DiagnosisScoringGridIF scoringGrid,
int primaryAdjustmentRow,
int otherAdjustmentRow)
This calculates the primary code score, and if the Other Dx has already
been scored, then reduce the primary code by the Other Dx value.
|
int |
determinePrimaryDiagnosis(HomeHealthRecordIF record,
DiagnosisScoringGridIF scoringGrid)
This method is not used in this model
|
CaseMixAdjustmentItemIF |
getCaseMixAdjustment(int caseMixId)
Deprecated.
|
int |
getCaseMixAdjustmentEquation(int caseMixId,
int equationId)
This gets the Case Mix Adjustment table value, by essentially getting the
caseMixId (i.e.
|
protected DiagnosisCodeIF |
getDiagnosisCode(java.lang.String codeValue) |
int |
getEquationId()
Gets the scoring equation id value
|
HomeHealthGrouperIF |
getGrouper()
Gets the reference to the Grouper
|
int |
getId()
the id of the object
|
java.lang.String |
getName()
The run-time name
|
java.lang.String |
getShortName()
gets the short name for this Scoring Model
|
void |
populateCodes(HomeHealthRecordIF record)
This populates the record with all Diagnosis codes that are valid for
this grouper version that are listed on the record.
|
void |
preprocessRecord(HomeHealthRecordIF record,
HomeHealthRecordValidatorIF validator)
There is no preprocessing of the HomeHealth Record for this model, and
this method should not be used.
|
void |
preprocessRecord(HomeHealthRecordIF record,
HomeHealthRecordValidatorIF validator,
java.util.Collection<HomeHealthEventListenerIF> listeners)
Used to perform any pre-scoring, such as any changes to the data due
to multi-code relationships.
|
void |
resolveEtiologyManifestationContention(DiagnosisCodeIF etiologyCode,
int etiologyIdx,
DiagnosisCodeIF manifestionCode,
int manifestIdx,
DiagnosisScoringGridIF scoringGrid)
Given two codes that are part of a Manifestation/Etiology pair, determine
which code has the highest score and remove the value for the code with
the lowest score.
|
ScoringPointsIF |
score(HomeHealthRecordIF record,
HomeHealthRecordValidatorIF validator)
Deprecated.
|
ScoringPointsIF |
score(HomeHealthRecordIF record,
HomeHealthRecordValidatorIF validator,
int[][] scoreOrder)
This is the main scoring module, which scores the clinical information
first and then the functional information.
|
ScoringPointsIF |
score(HomeHealthRecordIF record,
HomeHealthRecordValidatorIF validator,
int[][] scoreOrder,
java.util.Collection<HomeHealthEventListenerIF> listeners)
This calls score() without the listeners
|
void |
scoreAny(HomeHealthRecordIF record,
DiagnosisCodeIF diagCode,
HomeHealthRecordValidatorIF validator,
int diagIdx,
DiagnosisScoringGridIF scoringGrid)
This section covers scoring of Diagnostic groups and Case Mix Adjustment
Rows that do not depend on Primary or Other specific values for the code
|
int |
scoreClinical(HomeHealthRecordIF record,
HomeHealthRecordValidatorIF validator)
Deprecated.
|
int |
scoreClinical(HomeHealthRecordIF record,
HomeHealthRecordValidatorIF validator,
int[][] scoreOrder)
Clinically scores the record placing values into the pointSE, and
dualPointsSE variables.
|
void |
scoreClinicalCode(HomeHealthRecordIF record,
DiagnosisCodeIF diagCode,
HomeHealthRecordValidatorIF validator,
int diagIdx,
DiagnosisScoringGridIF scoringGrid) |
void |
scoreClinicalColumn3_4(HomeHealthRecordIF record,
HomeHealthRecordValidatorIF validator,
int rowIdx,
DiagnosisScoringGridIF scoringGrid,
int[][] scoreOrder,
int currentPass)
After the first column (historically column 2) has determined that it is
an Optional V-code that can have a column 3 & 4, this method will score
those codes on the same row, and resolve any manifestation/ etiology
contentions.
|
int |
scoreFunctional(HomeHealthRecordIF record,
HomeHealthRecordValidatorIF validator)
Score the functional part of the model
Pseudo code lines: 1492 thru 1517
|
void |
scoreOtherOnly(HomeHealthRecordIF record,
DiagnosisCodeIF diagCode,
int diagIdx,
DiagnosisScoringGridIF scoringGrid)
Scores only those codes that can not be in the primary position
|
void |
scorePrimaryOnly(HomeHealthRecordIF record,
DiagnosisCodeIF diagCode,
int diagIdx,
DiagnosisScoringGridIF scoringGrid)
Scores the Primary only code with Primary only CaseMix values
|
int |
scoreRemainingVariables(HomeHealthRecordIF record,
HomeHealthRecordValidatorIF validator,
int currentScore)
This scores the remaining clinical variables.
|
void |
setGrouper(HomeHealthGrouperIF grouper)
Sets the Home Health grouper that this model is associated with, null if
no grouper
|
void |
setId(int id)
Sets the id for the object at run time
|
void |
setName(java.lang.String name)
Sets the run-time name associated with the object
|
void |
setShortName(java.lang.String shortName)
sets the short name for this Scoring Model
|
protected GrouperDataManager grouperDataManager
protected HomeHealthGrouperIF grouper
public ClinicalFunctional_ScoringModel_v3210(HomeHealthGrouperIF grouper, GrouperDataManager grouperDataManager, int equationId)
grouper
- grouperDataManager
- id
- protected int calculatePrimaryAdjustment(DiagnosisScoringGridIF scoringGrid, int primaryAdjustmentRow, int otherAdjustmentRow)
scoringGrid
- primaryAdjustmentRow
- otherAdjustmentRow
- public int determinePrimaryDiagnosis(HomeHealthRecordIF record, DiagnosisScoringGridIF scoringGrid)
record
- scoringGrid
- public void preprocessRecord(HomeHealthRecordIF record, HomeHealthRecordValidatorIF validator)
preprocessRecord
in interface HomeHealthScoringModelIF
record
- validator
- HomeHealthScoringModelIF.preprocessRecord(HomeHealthRecordIF record, HomeHealthRecordValidatorIF validator, Collection listeners)
public int scoreRemainingVariables(HomeHealthRecordIF record, HomeHealthRecordValidatorIF validator, int currentScore)
record
- validator
- public java.lang.String getName()
Namable
public int getCaseMixAdjustmentEquation(int caseMixId, int equationId)
caseMixId
- id
- public CaseMixAdjustmentItemIF getCaseMixAdjustment(int caseMixId)
caseMixId
- protected DiagnosisCodeIF getDiagnosisCode(java.lang.String codeValue)
codeValue
- public int scoreClinical(HomeHealthRecordIF record, HomeHealthRecordValidatorIF validator)
record
- validator
- public int scoreClinical(HomeHealthRecordIF record, HomeHealthRecordValidatorIF validator, int[][] scoreOrder)
record
- validator
- public void scorePrimaryOnly(HomeHealthRecordIF record, DiagnosisCodeIF diagCode, int diagIdx, DiagnosisScoringGridIF scoringGrid) throws AlreadyScoredException
record
- diagCode
- diagIdx
- scoringGrid
- AlreadyScoredException
public void scoreOtherOnly(HomeHealthRecordIF record, DiagnosisCodeIF diagCode, int diagIdx, DiagnosisScoringGridIF scoringGrid) throws AlreadyScoredException
record
- diagCode
- diagIdx
- scoringGrid
- AlreadyScoredException
public void scoreAny(HomeHealthRecordIF record, DiagnosisCodeIF diagCode, HomeHealthRecordValidatorIF validator, int diagIdx, DiagnosisScoringGridIF scoringGrid) throws AlreadyScoredException
record
- diagCode
- diagIdx
- scoringGrid
- AlreadyScoredException
public void scoreClinicalCode(HomeHealthRecordIF record, DiagnosisCodeIF diagCode, HomeHealthRecordValidatorIF validator, int diagIdx, DiagnosisScoringGridIF scoringGrid)
public void scoreClinicalColumn3_4(HomeHealthRecordIF record, HomeHealthRecordValidatorIF validator, int rowIdx, DiagnosisScoringGridIF scoringGrid, int[][] scoreOrder, int currentPass)
record
- validator
- rowIdx
- scoringGrid
- scoreOrder
- currentPass
- public int scoreFunctional(HomeHealthRecordIF record, HomeHealthRecordValidatorIF validator)
record
- validator
- public void resolveEtiologyManifestationContention(DiagnosisCodeIF etiologyCode, int etiologyIdx, DiagnosisCodeIF manifestionCode, int manifestIdx, DiagnosisScoringGridIF scoringGrid)
etiologyCode
- etiologyIdx
- manifestionCode
- manifestIdx
- scoringGrid
- public void setName(java.lang.String name)
Namable
public ScoringPointsIF score(HomeHealthRecordIF record, HomeHealthRecordValidatorIF validator)
score
in interface HomeHealthScoringModelIF
record
- validator
- scoreClinical(HomeHealthRecordIF record,
HomeHealthRecordValidatorIF validator)
,
scoreFunctional(HomeHealthRecordIF record,
HomeHealthRecordValidatorIF validator)
public ScoringPointsIF score(HomeHealthRecordIF record, HomeHealthRecordValidatorIF validator, int[][] scoreOrder)
score
in interface HomeHealthScoringModelIF
record
- validator
- scoreOrder
- - array of int[6][3] determining the scoring order
of a diagnosis code in the related position.scoreClinical(HomeHealthRecordIF record,
HomeHealthRecordValidatorIF validator)
,
scoreFunctional(HomeHealthRecordIF record,
HomeHealthRecordValidatorIF validator)
public ScoringPointsIF score(HomeHealthRecordIF record, HomeHealthRecordValidatorIF validator, int[][] scoreOrder, java.util.Collection<HomeHealthEventListenerIF> listeners)
score
in interface HomeHealthScoringModelIF
record
- validator
- scoreOrder
- listeners
- - always assumed to be nullpublic void populateCodes(HomeHealthRecordIF record)
populateCodes
in interface HomeHealthScoringModelIF
record
- public int getEquationId()
public HomeHealthGrouperIF getGrouper()
getGrouper
in interface HomeHealthScoringModelIF
public void setGrouper(HomeHealthGrouperIF grouper)
setGrouper
in interface HomeHealthScoringModelIF
grouper
- public java.lang.String getShortName()
public void setShortName(java.lang.String shortName)
shortName
- public void preprocessRecord(HomeHealthRecordIF record, HomeHealthRecordValidatorIF validator, java.util.Collection<HomeHealthEventListenerIF> listeners)
HomeHealthScoringModelIF
preprocessRecord
in interface HomeHealthScoringModelIF
listeners
- - can be null, otherwise list of listeners for notified of eventspublic int getId()
Identifiable
getId
in interface Identifiable
public void setId(int id)
Identifiable
setId
in interface Identifiable