...
Method Detail | Value |
---|---|
Visibility | Public |
Below are the steps to create the enrollment span.
|
Determine Enrollment Span Status
Method Detail | Value |
---|---|
Visibility | Public |
Method Parameters | EnrollmentSpan(Current Enrollment Span), List<EnrollmentSpanDto> (Prior Enrollment Spans) |
Return Parameter | String |
Functionality | If the prior enrollment span is delinquent (isDelinquent) then the status of the current enrollment span is either "DELINQUENT" or "SUSPENDED" If the end date of the current enrollment span is less than the start date, then status is "CANCELED" If the prior enrollment span is not delinquent and if the end date of the current enrollment span is greater than the start date and if the effectuation date is not NUL, then the status is "ENROLLED" If the If the prior enrollment span is not delinquent and if the end date of the current enrollment span is greater than the start date and if the effectuation date is NUL, then the status is "PRE_MEMBER" If none of the above conditions are met, then return the status as "NO_VALID_STATUS" |
Determine Status
Method Detail | Value |
---|---|
Visibility | Public |
Method Parameters | EnrollmentSpanStatusDto |
Return Parameter | String |
Functionality | Invoke the enrollment span status determination method (determineEnrollmentSpanStatus) by passing the current enrollment span the list of prior enrollment span. |
Set Enrollment Span
Method Detail | Value |
---|---|
Visibility | Public |
...
Method Detail | Value |
---|---|
Visibility | Private |
Method Parameters | TransactionDto, List<EnrollmentSpan> (Prior Enrollment Spans) |
Return parameter | LocalDate |
Functionality | Perform the below steps to determine if an effectuation date should be returned or not.
|
Determine End Date
Method Detail | Value |
---|---|
Visibility | Private |
Method Parameters | LocalDate (Start Date), LocalDate (End Date) |
Return Parameter | LocalDate |
Functionality | If the end date is passed in as a non-null value, then return the end date value. If the end date is passed in as NULL, then get the year of the start date and return the last day of the same year as the end date. |
Get Exchange Subscriber Id
...
Method Detail | Value |
---|---|
Visibility | Private |
Method Parameters | TransactionDto |
Return | TransactionMemberDto |
Functionality | Iterate through the members in the transaction the retrieve the member with the relationship type code "HOH" Note: No exception handling is added if no member with relationship type code of "HOH" is not present, because such validations should have been done by rules well before the transaction is at this step. |
Get Prior Enrollment Spans
...
Method Detail | Value |
---|---|
Visibility | Private |
Method Parameters | EnrollmentSpan (Current Enrollment Span), List<EnrollmentSpanDto> priorEnrollmentSpans |
Return Parameter | int |
Functionality | This method returns one of the three below values 1 - To indicate the current enrollment span should be set to delinquent -1 - To indicate that the current enrollment span should be set to suspended 0 - To indicate that the current enrollment span is not delinquent. Below is how the logic is perform the determine which of the above three should be sent. Check for below conditions
If any of the above conditions are false, then span is not delinquent return the value "0" If all of the above conditions are true, then follow the below logic.
|
Is Same Plan
Method Detail | Value |
---|---|
Visibility | Private |
Method Parameters | String (Current plan), String (Prior Plan) |
Return Parameter | Boolean |
Functionality | Return true if the current plan and prior plan are same, return false if they are different. |
Is There Gap In Coverage
Method Detail | Value |
---|---|
Visibility | Private |
Method Parameters | Local Date(Effective Start Date), EnrollmentSpanDto (Prior Enrollment Span) |
Return Parameter | boolean |
Functionality | If the prior enrollment span is in "CANCEL" status, then return true. Determine the number of days between the last day of the prior enrollment span and the effective start date. If the number of days gap is greater than 1 then return true, else return false. |
Remove Canceled Spans
Method Detail | Value |
---|---|
Visibility | Private |
...