com.mmm.cms.homehealth.proto.logic
Class LogicRow

java.lang.Object
  extended by com.mmm.cms.homehealth.proto.logic.LogicRow

public class LogicRow
extends java.lang.Object

Based on the preliminary Case Mix table format of: Row ID: unique id Diagnostic Category id: 0 for rows that include field logic only 1 - 22 for Diagnostic Group id Diagnostic Category logic type indicator: 1 to indicate Primary code logic only 2 to indicate Primary code scoring after an Other code 3 to indicate Other code logic only 4 to indicate both Primary and Other logic Description: Equation 1 Value: Equation 2 Value: Equation 3 Value: Equation 4 Value: Field Logic: Variable length field with logic with brackets <if> Field="M0250" Condition="=" or ">" or "<" or "!=" or "<=" or ">=" Values="2, 3, 4" - comma separated list of values </if> Optionally: <and /> <or /> other condition...


Field Summary
protected  java.lang.String Description
           
protected  DiagnosticCategoryIF diagnosticCategory
           
protected  FieldConditionGroup[] fieldConditionGroup
           
protected  DiagnosticCategoryLogicTypeID logicTypeID
           
protected  PointsScoringEquations pointsScoringEquations
           
protected  int rowId
           
 
Constructor Summary
LogicRow(int rowId, DiagnosticCategoryIF diagnosticCategory, DiagnosticCategoryLogicTypeID logicTypeID, PointsScoringEquations pointsScoringEquations, java.lang.String Description, FieldConditionGroup[] fieldConditionGroup)
           
 
Method Summary
 void addFieldConditionGroup(FieldConditionGroup condition)
          adds a field condition group to the
 java.lang.String getDescription()
          Get the value of Description
 DiagnosticCategoryIF getDiagnosticCategory()
          Get the value of diagnosticCategory
 FieldConditionGroup[] getFieldConditionGroup()
          Get the value of fieldConditionGroup
 FieldConditionGroup getFieldConditionGroup(int index)
          Get the value of fieldConditionGroup at specified index
 DiagnosticCategoryLogicTypeID getLogicTypeID()
          Get the value of logicTypeID
 PointsScoringEquations getPointsScoringEquations()
          Get the value of pointsScoringEquations
 int getRowId()
          Get the value of rowId
 boolean isLogicAccepted(HomeHealthRecordIF record, Icd9DiagnosisCodeIF code, DiagnosisScoringGridIF scoringGrid, int codeIndex)
          This uses the data from the record to determine if the record meets the criteria for this logic.
 void setDescription(java.lang.String Description)
          Set the value of Description
 void setDiagnosticCategory(DiagnosticCategoryIF diagnosticCategory)
          Set the value of diagnosticCategory
 void setFieldConditionGroup(FieldConditionGroup[] fieldConditionGroup)
          Set the value of fieldConditionGroup
 void setFieldConditionGroup(int index, FieldConditionGroup newFieldConditionGroup)
          Set the value of fieldConditionGroup at specified index.
 void setLogicTypeID(DiagnosticCategoryLogicTypeID logicTypeID)
          Set the value of logicTypeID
 void setPointsScoringEquations(PointsScoringEquations pointsScoringEquations)
          Set the value of pointsScoringEquations
 void setRowId(int rowId)
          Set the value of rowId
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

rowId

protected int rowId

diagnosticCategory

protected DiagnosticCategoryIF diagnosticCategory

logicTypeID

protected DiagnosticCategoryLogicTypeID logicTypeID

pointsScoringEquations

protected PointsScoringEquations pointsScoringEquations

Description

protected java.lang.String Description

fieldConditionGroup

protected FieldConditionGroup[] fieldConditionGroup
Constructor Detail

LogicRow

public LogicRow(int rowId,
                DiagnosticCategoryIF diagnosticCategory,
                DiagnosticCategoryLogicTypeID logicTypeID,
                PointsScoringEquations pointsScoringEquations,
                java.lang.String Description,
                FieldConditionGroup[] fieldConditionGroup)
Method Detail

addFieldConditionGroup

public void addFieldConditionGroup(FieldConditionGroup condition)
adds a field condition group to the

Parameters:
condition -

getFieldConditionGroup

public FieldConditionGroup[] getFieldConditionGroup()
Get the value of fieldConditionGroup

Returns:
the value of fieldConditionGroup

setFieldConditionGroup

public void setFieldConditionGroup(FieldConditionGroup[] fieldConditionGroup)
Set the value of fieldConditionGroup

Parameters:
fieldConditionGroup - new value of fieldConditionGroup

getFieldConditionGroup

public FieldConditionGroup getFieldConditionGroup(int index)
Get the value of fieldConditionGroup at specified index

Parameters:
index -
Returns:
the value of fieldConditionGroup at specified index

setFieldConditionGroup

public void setFieldConditionGroup(int index,
                                   FieldConditionGroup newFieldConditionGroup)
Set the value of fieldConditionGroup at specified index.

Parameters:
index -
newFieldConditionGroup - new value of fieldConditionGroup at specified index

getDescription

public java.lang.String getDescription()
Get the value of Description

Returns:
the value of Description

setDescription

public void setDescription(java.lang.String Description)
Set the value of Description

Parameters:
Description - new value of Description

getPointsScoringEquations

public PointsScoringEquations getPointsScoringEquations()
Get the value of pointsScoringEquations

Returns:
the value of pointsScoringEquations

setPointsScoringEquations

public void setPointsScoringEquations(PointsScoringEquations pointsScoringEquations)
Set the value of pointsScoringEquations

Parameters:
pointsScoringEquations - new value of pointsScoringEquations

getLogicTypeID

public DiagnosticCategoryLogicTypeID getLogicTypeID()
Get the value of logicTypeID

Returns:
the value of logicTypeID

setLogicTypeID

public void setLogicTypeID(DiagnosticCategoryLogicTypeID logicTypeID)
Set the value of logicTypeID

Parameters:
logicTypeID - new value of logicTypeID

getDiagnosticCategory

public DiagnosticCategoryIF getDiagnosticCategory()
Get the value of diagnosticCategory

Returns:
the value of diagnosticCategory

setDiagnosticCategory

public void setDiagnosticCategory(DiagnosticCategoryIF diagnosticCategory)
Set the value of diagnosticCategory

Parameters:
diagnosticCategory - new value of diagnosticCategory

getRowId

public int getRowId()
Get the value of rowId

Returns:
the value of rowId

setRowId

public void setRowId(int rowId)
Set the value of rowId

Parameters:
rowId - new value of rowId

isLogicAccepted

public boolean isLogicAccepted(HomeHealthRecordIF record,
                               Icd9DiagnosisCodeIF code,
                               DiagnosisScoringGridIF scoringGrid,
                               int codeIndex)
This uses the data from the record to determine if the record meets the criteria for this logic.

Parameters:
record -
Returns:
true it the criteria is met.