public class Oasis_C1_RecordUtil extends java.lang.Object implements OasisRecordConverterIF
Modifier and Type | Field and Description |
---|---|
protected DateRanger |
dateRanger |
static int |
DIAGNOSIS_CODE_LENGTH |
static int |
OASIS_C1_FLAT_RECORD_LENGTH |
Constructor and Description |
---|
Oasis_C1_RecordUtil() |
Modifier and Type | Method and Description |
---|---|
java.lang.StringBuilder |
convertFromHomeHealthRec(HomeHealthRecordIF homeHealthRecord)
Converts an OASIS record extended from the HomeHealth Record to a String
that is a continous set of characters, i.e.
|
java.lang.StringBuilder |
convertFromHomeHealthRecDelimeted(HomeHealthRecordIF homeHealthRecord,
java.lang.String delimiter)
Converts an OASIS record extended from the HomeHealth Record to a String
using the delimiter to separate the values
|
java.lang.StringBuilder |
convertFromHomeHealthToFlatRecord(HomeHealthRecord_C_IF oasisRecord) |
HomeHealthRecordIF |
convertToHomeHealthRec(java.lang.String strRecord,
int recNum)
Converts a string to a Home Health record, using the 3 parameter converter
|
HomeHealthRecordIF |
convertToHomeHealthRec(java.lang.String strRecord,
int recNum,
boolean skipPassthru)
GENERATED CODE BELOW
|
HomeHealthRecordIF |
convertToHomeHealthRec(java.lang.String M0030_START_CARE_DT,
java.lang.String M0090_INFO_COMPLETED_DT,
java.lang.String M0100_ASSMT_REASON,
java.lang.String M0110_EPISODE_TIMING,
java.lang.String M1030_THH_IV_INFUSION,
java.lang.String M1030_THH_PAR_NUTRITION,
java.lang.String M1030_THH_ENT_NUTRITION,
java.lang.String M1030_THH_NONE_ABOVE,
java.lang.String M1200_VISION,
java.lang.String M1242_PAIN_FREQ_ACTVTY_MVMT,
java.lang.String M1306_UNHLD_STG2_PRSR_ULCR,
java.lang.String M1308_NBR_PRSULC_STG2,
java.lang.String M1308_NBR_PRSULC_STG3,
java.lang.String M1308_NBR_PRSULC_STG4,
java.lang.String M1308_NSTG_DRSG,
java.lang.String M1308_NSTG_CVRG,
java.lang.String M1308_NSTG_DEEP_TISUE,
java.lang.String M1320_STUS_PRBLM_PRSR_ULCR,
java.lang.String M1322_NBR_PRSULC_STG1,
java.lang.String M1324_STG_PRBLM_ULCER,
java.lang.String M1330_STAS_ULCR_PRSNT,
java.lang.String M1332_NBR_STAS_ULCR,
java.lang.String M1334_STUS_PRBLM_STAS_ULCR,
java.lang.String M1340_SRGCL_WND_PRSNT,
java.lang.String M1342_STUS_PRBLM_SRGCL_WND,
java.lang.String M1350_LESION_OPEN_WND,
java.lang.String M1400_WHEN_DYSPNEIC,
java.lang.String M1610_UR_INCONT,
java.lang.String M1615_INCNTNT_TIMING,
java.lang.String M1620_BWL_INCONT,
java.lang.String M1630_OSTOMY,
java.lang.String M1810_CRNT_DRESS_UPPER,
java.lang.String M1820_CRNT_DRESS_LOWER,
java.lang.String M1830_CRNT_BATHG,
java.lang.String M1840_CRNT_TOILTG,
java.lang.String M1850_CRNT_TRNSFRNG,
java.lang.String M1860_CRNT_AMBLTN,
java.lang.String M2000_DRUG_RGMN_RVW,
java.lang.String M2030_CRNT_MGMT_INJCTN_MDCTN,
java.lang.String M2200_THER_NEED_NBR,
java.lang.String M2200_THER_NEED_NA,
java.lang.String M1021_PRIMARY_DIAG_ICD,
java.lang.String M1023_OTH_DIAG1_ICD,
java.lang.String M1023_OTH_DIAG2_ICD,
java.lang.String M1023_OTH_DIAG3_ICD,
java.lang.String M1023_OTH_DIAG4_ICD,
java.lang.String M1023_OTH_DIAG5_ICD,
java.lang.String M1025_PMT_DIAG_ICD_A3,
java.lang.String M1025_PMT_DIAG_ICD_A4,
java.lang.String M1025_PMT_DIAG_ICD_B3,
java.lang.String M1025_PMT_DIAG_ICD_B4,
java.lang.String M1025_PMT_DIAG_ICD_C3,
java.lang.String M1025_PMT_DIAG_ICD_C4,
java.lang.String M1025_PMT_DIAG_ICD_D3,
java.lang.String M1025_PMT_DIAG_ICD_D4,
java.lang.String M1025_PMT_DIAG_ICD_E3,
java.lang.String M1025_PMT_DIAG_ICD_E4,
java.lang.String M1025_PMT_DIAG_ICD_F3,
java.lang.String M1025_PMT_DIAG_ICD_F4) |
java.lang.String |
formatDiagnosisCode(DiagnosisCodeIF dxcode)
Ensures that a diagnosis code is 7 character long, padded with spaces
where necessary
|
static java.lang.String |
formatDxCode(DiagnosisCodeIF dxCode) |
static java.lang.String |
formatTherapyNeedNum(int needNum) |
java.lang.String |
getEndDate() |
java.lang.String |
getStartDate() |
boolean |
isRecordConvertable(java.lang.String record)
Given an OASIS 1448 or 1446 length string, determines if the converter
can actually convert the record to its supported object.
|
static java.lang.StringBuilder |
justifyLeft(java.lang.StringBuilder buffer,
java.lang.String str,
int length,
char fillchar)
This method adds to a StringBuidler a String that is left justified for
the given length and padded with the given fill character; Nulls are
treated as empty strings.
|
static void |
main(java.lang.String[] args) |
void |
postProcessRecord(Oasis_C1_Record oasisRecord)
If the value of the field is not '^', then this normalizes some fields
that may not actually be the valid length but are valid values.
|
void |
setEndDate(java.lang.String date)
Sets the end date of the converter, inclusive
|
void |
setStartDate(java.lang.String date)
Sets the start date of the converter, inclusive
|
java.lang.StringBuilder |
toHeaderOasisRecDelimeted(java.lang.String delimiter)
Builds a header record explaining the format of the OASIS record.
|
public static final int OASIS_C1_FLAT_RECORD_LENGTH
public static final int DIAGNOSIS_CODE_LENGTH
protected DateRanger dateRanger
public static void main(java.lang.String[] args)
public boolean isRecordConvertable(java.lang.String record)
OasisRecordConverterIF
isRecordConvertable
in interface OasisRecordConverterIF
public java.lang.StringBuilder convertFromHomeHealthRec(HomeHealthRecordIF homeHealthRecord)
OasisRecordConverterIF
convertFromHomeHealthRec
in interface OasisRecordConverterIF
{
public java.lang.StringBuilder convertFromHomeHealthRecDelimeted(HomeHealthRecordIF homeHealthRecord, java.lang.String delimiter)
OasisRecordConverterIF
convertFromHomeHealthRecDelimeted
in interface OasisRecordConverterIF
public HomeHealthRecordIF convertToHomeHealthRec(java.lang.String strRecord, int recNum) throws java.text.ParseException
OasisRecordConverterIF
convertToHomeHealthRec
in interface OasisRecordConverterIF
java.text.ParseException
throws ParseException
public HomeHealthRecordIF convertToHomeHealthRec(java.lang.String M0030_START_CARE_DT, java.lang.String M0090_INFO_COMPLETED_DT, java.lang.String M0100_ASSMT_REASON, java.lang.String M0110_EPISODE_TIMING, java.lang.String M1030_THH_IV_INFUSION, java.lang.String M1030_THH_PAR_NUTRITION, java.lang.String M1030_THH_ENT_NUTRITION, java.lang.String M1030_THH_NONE_ABOVE, java.lang.String M1200_VISION, java.lang.String M1242_PAIN_FREQ_ACTVTY_MVMT, java.lang.String M1306_UNHLD_STG2_PRSR_ULCR, java.lang.String M1308_NBR_PRSULC_STG2, java.lang.String M1308_NBR_PRSULC_STG3, java.lang.String M1308_NBR_PRSULC_STG4, java.lang.String M1308_NSTG_DRSG, java.lang.String M1308_NSTG_CVRG, java.lang.String M1308_NSTG_DEEP_TISUE, java.lang.String M1320_STUS_PRBLM_PRSR_ULCR, java.lang.String M1322_NBR_PRSULC_STG1, java.lang.String M1324_STG_PRBLM_ULCER, java.lang.String M1330_STAS_ULCR_PRSNT, java.lang.String M1332_NBR_STAS_ULCR, java.lang.String M1334_STUS_PRBLM_STAS_ULCR, java.lang.String M1340_SRGCL_WND_PRSNT, java.lang.String M1342_STUS_PRBLM_SRGCL_WND, java.lang.String M1350_LESION_OPEN_WND, java.lang.String M1400_WHEN_DYSPNEIC, java.lang.String M1610_UR_INCONT, java.lang.String M1615_INCNTNT_TIMING, java.lang.String M1620_BWL_INCONT, java.lang.String M1630_OSTOMY, java.lang.String M1810_CRNT_DRESS_UPPER, java.lang.String M1820_CRNT_DRESS_LOWER, java.lang.String M1830_CRNT_BATHG, java.lang.String M1840_CRNT_TOILTG, java.lang.String M1850_CRNT_TRNSFRNG, java.lang.String M1860_CRNT_AMBLTN, java.lang.String M2000_DRUG_RGMN_RVW, java.lang.String M2030_CRNT_MGMT_INJCTN_MDCTN, java.lang.String M2200_THER_NEED_NBR, java.lang.String M2200_THER_NEED_NA, java.lang.String M1021_PRIMARY_DIAG_ICD, java.lang.String M1023_OTH_DIAG1_ICD, java.lang.String M1023_OTH_DIAG2_ICD, java.lang.String M1023_OTH_DIAG3_ICD, java.lang.String M1023_OTH_DIAG4_ICD, java.lang.String M1023_OTH_DIAG5_ICD, java.lang.String M1025_PMT_DIAG_ICD_A3, java.lang.String M1025_PMT_DIAG_ICD_A4, java.lang.String M1025_PMT_DIAG_ICD_B3, java.lang.String M1025_PMT_DIAG_ICD_B4, java.lang.String M1025_PMT_DIAG_ICD_C3, java.lang.String M1025_PMT_DIAG_ICD_C4, java.lang.String M1025_PMT_DIAG_ICD_D3, java.lang.String M1025_PMT_DIAG_ICD_D4, java.lang.String M1025_PMT_DIAG_ICD_E3, java.lang.String M1025_PMT_DIAG_ICD_E4, java.lang.String M1025_PMT_DIAG_ICD_F3, java.lang.String M1025_PMT_DIAG_ICD_F4) throws java.text.ParseException
java.text.ParseException
public java.lang.String formatDiagnosisCode(DiagnosisCodeIF dxcode)
OasisRecordConverterIF
formatDiagnosisCode
in interface OasisRecordConverterIF
public java.lang.StringBuilder toHeaderOasisRecDelimeted(java.lang.String delimiter)
OasisRecordConverterIF
toHeaderOasisRecDelimeted
in interface OasisRecordConverterIF
public static java.lang.String formatDxCode(DiagnosisCodeIF dxCode)
public static java.lang.StringBuilder justifyLeft(java.lang.StringBuilder buffer, java.lang.String str, int length, char fillchar)
buffer
- str
- length
- fillchar
- public static java.lang.String formatTherapyNeedNum(int needNum)
public HomeHealthRecordIF convertToHomeHealthRec(java.lang.String strRecord, int recNum, boolean skipPassthru) throws java.text.ParseException
convertToHomeHealthRec
in interface OasisRecordConverterIF
strRecord
- - this should be an OASIS-C1 flat file formatrecNum
- - the current record number being processedskipPassthru
- - no longer usedjava.text.ParseException
public java.lang.StringBuilder convertFromHomeHealthToFlatRecord(HomeHealthRecord_C_IF oasisRecord)
public java.lang.String getStartDate()
public java.lang.String getEndDate()
public void setStartDate(java.lang.String date)
OasisRecordConverterIF
setStartDate
in interface OasisRecordConverterIF
date
- - must be non-null in the format of YYYYMMDD, for example
October 1, 2014 would formatted as 20140101public void setEndDate(java.lang.String date) throws java.lang.IllegalArgumentException
OasisRecordConverterIF
setEndDate
in interface OasisRecordConverterIF
date
- - must be non-null in the format of YYYYMMDD, for example
Sept 30, 2014 would formatted as 20140930java.lang.IllegalArgumentException
public void postProcessRecord(Oasis_C1_Record oasisRecord)
oasisRecord
-