Skip to content

Instantly share code, notes, and snippets.

@jakesays-old
Last active August 29, 2015 14:11
Show Gist options
  • Save jakesays-old/09282338de3f813ae3f4 to your computer and use it in GitHub Desktop.
Save jakesays-old/09282338de3f813ae3f4 to your computer and use it in GitHub Desktop.
Pattern matching in c#
ParseClaimIdentifiers(@ref, claim)
.Match(ReferenceQualifier.SpecialPaymentReferenceNumber,
r => claim.ServiceAuthExceptionCode = ServiceAuthExceptionCodeConverter.FromAnsi(r).Adapt())
.Match(ReferenceQualifier.OriginalReferenceNumber,
r => claim.OriginalPayerClaimControlNumber = r)
.Match(ReferenceQualifier.ReferralNumber,
r => claim.ReferralNumber = r)
.Match(ReferenceQualifier.PriorAuthorizationNumber,
r => claim.PriorAuthorization = r)
.Match(ReferenceQualifier.RepricedClaimReferenceNumber,
r => claim.RepricedClaimReferenceNumber = r)
.Match(ReferenceQualifier.AdjustedRepricedClaimReferenceNumber,
r => claim.AdjustedRepricedClaimReferenceNumber = r)
.Match(ReferenceQualifier.ClaimNumber,
r => claim.ClearinghouseControlNumber = r)
.Otherwise(r => Context.InvalidQualifierError<ReferenceQualifier>(r));
if (@ref.Qualifier() == ReferenceQualifier.SpecialPaymentReferenceNumber)
{
claim.ServiceAuthExceptionCode = ServiceAuthExceptionCodeConverter.FromAnsi(@ref.REF02_ReferenceIdentification).Adapt());
}
else if (@ref.Qualifier() == ReferenceQualifier.OriginalReferenceNumber)
{
claim.OriginalPayerClaimControlNumber = @ref.REF02_ReferenceIdentification;
}
else if (@ref.Qualifier() == ReferenceQualifier.ReferralNumber)
{
claim.ReferralNumber = @ref.REF02_ReferenceIdentification;
}
else if (@ref.Qualifier() == ReferenceQualifier.PriorAuthorizationNumber)
{
claim.PriorAuthorization = @ref.REF02_ReferenceIdentification;
}
else if (@ref.Qualifier() == ReferenceQualifier.RepricedClaimReferenceNumber)
{
claim.RepricedClaimReferenceNumber = @ref.REF02_ReferenceIdentification;
}
else if (@ref.Qualifier() == ReferenceQualifier.AdjustedRepricedClaimReferenceNumber)
{
claim.AdjustedRepricedClaimReferenceNumber = @ref.REF02_ReferenceIdentification;
}
else if (@ref.Qualifier() == ReferenceQualifier.ClaimNumber)
{
claim.ClearinghouseControlNumber = @ref.REF02_ReferenceIdentification;
}
else
{
Context.InvalidQualifierError<ReferenceQualifier>(@ref.REF02_ReferenceIdentification);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment