示例#1
0
 /// <summary>
 /// prepares list of date type variables required for the report.if position of fields are altered, client header also should be altered
 /// </summary>
 /// <param name="claimData">claim related data</param>
 /// <returns>list of date type variables required for the report</returns>
 private static IEnumerable <string> GetDateTypeRowValuesAfterLos(ClaimDataViewModel claimData)
 {
     return(new[]
     {
         // Gets the BillDateValue.
         claimData.BillDateValue, claimData.ClaimDateValue, claimData.LastFiledDateValue
     });
 }
示例#2
0
 /// <summary>
 /// prepares list of double(amount) variables required for the report. if position of fields are altered, client header also should be altered
 /// </summary>
 /// <param name="claimData">claim related data</param>
 /// <returns>list of double(amount) variables required for the report</returns>
 private static IEnumerable <double?> GetAmountRowValues(ClaimDataViewModel claimData)
 {
     return(new[]
     {
         claimData.ClaimTotal, claimData.AdjudicatedValue, claimData.ActualPayment,
         claimData.PatientResponsibility, claimData.RemitAllowedAmt, claimData.RemitNonCovered, claimData.CalculatedAdjustment, claimData.ActualAdjustment, claimData.ContractualVariance, claimData.PaymentVariance
     });
 }
示例#3
0
        /// <summary>
        /// prepares list of date type variables required for the report.if position of fields are altered, client header also should be altered
        /// </summary>
        /// <param name="claimData">claim related data</param>
        /// <returns>list of date type variables required for the report</returns>
        private static IEnumerable <string> GetDateTypeRowValues(ClaimDataViewModel claimData)
        {
            return(new[]
            {
                // Gets the Adjudication DateTime based on client TimeZone on Download of Excel Sheet.
                Convert.ToDateTime(claimData.AdjudicatedDateValue).ToString("MM/dd/yyyy HH:mm",

                                                                            CultureInfo.InvariantCulture), claimData.CheckDate, claimData.CheckNumber, claimData.StatementFromValue, claimData.StatementThruValue
            });
        }
示例#4
0
 /// <summary>
 /// prepares list of string variables required for the report. if position of fields are altered, client header also should be altered
 /// </summary>
 /// <param name="claimData">claim related data</param>
 /// <returns>list of strings type variables required for variance report</returns>
 private static IEnumerable <string> GetStringRowValuesFromNpiToMrn(ClaimDataViewModel claimData)
 {
     return(new[]
     {
         claimData.Npi, claimData.ClaimType, claimData.PayerSequence, claimData.BillType, claimData.Drg,
         claimData.PriIcddCode, claimData.PriIcdpCode, claimData.PriPayerName.Replace(Constants.Comma, Constants.SemiColon), claimData.SecPayerName.Replace(Constants.Comma, Constants.SemiColon), claimData.TerPayerName.Replace(Constants.Comma, Constants.SemiColon),
         claimData.IsRemitLinked, claimData.ClaimStat, claimData.ClaimLink, claimData.LinkedRemitId, claimData.DischargeStatus, claimData.CustomField1,
         claimData.CustomField2, claimData.CustomField3, claimData.CustomField4, claimData.CustomField5,
         claimData.CustomField6, claimData.MemberId, claimData.Icn, claimData.Mrn, Convert.ToString(claimData.InsuredsGroupNumber)
     });
 }
示例#5
0
 /// <summary>
 /// prepares list of integer type variables required for the report.if position of fields are altered, client header also should be altered
 /// </summary>
 /// <param name="claimData">claim related data</param>
 /// <returns>list of integer type variables required for the report</returns>
 private static string GetLosRowValues(ClaimDataViewModel claimData)
 {
     // Gets the Los.
     return(claimData.Los);
 }
示例#6
0
 /// <summary>
 /// prepares integer type variables required for the report.if position of fields are altered, client header also should be altered
 /// </summary>
 /// <param name="claimData">claim related data</param>
 /// <returns>list of integer type variables required for the report</returns>
 private static string GetAgeRowValues(ClaimDataViewModel claimData)
 {
     // Gets the Age.
     return(claimData.Age);
 }
示例#7
0
 /// <summary>
 /// prepares list of string variables required for the report. if position of fields are altered, client header also should be altered
 /// </summary>
 /// <param name="claimData">claim related data</param>
 /// <returns>list of strings type variables required for variance report</returns>
 private static IEnumerable <string> GetStringRowValuesFromClaimIdToPatientAccountNumber(ClaimDataViewModel claimData)
 {
     return(new[]
     {
         claimData.ClaimId.ToString(CultureInfo.InvariantCulture), claimData.AdjudicatedContractName == null?null:claimData.AdjudicatedContractName.ToString(CultureInfo.InvariantCulture), claimData.IsReviewed?Constants.ReviewedOptionYes:Constants.ReviewedOptionNo, claimData.SsiNumber.ToString(), claimData.PatientAccountNumber
     });
 }
示例#8
0
        /// <summary>
        /// GetRowValues From ClaimData Based on Column name
        /// </summary>
        /// <param name="columnName"></param>
        /// <param name="claimData"></param>
        /// <returns></returns>
        private static string GetRowValuesFromClaimData(string columnName, ClaimDataViewModel claimData)
        {
            string rowValue = string.Empty, fieldName = string.Empty;

            switch (columnName)
            {
            case Constants.ClaimId:
                rowValue = claimData.ClaimId.ToString(CultureInfo.InvariantCulture);
                break;

            case Constants.IsReviewed:
                rowValue = claimData.IsReviewed ? Constants.ReviewedOptionYes : Constants.ReviewedOptionNo;
                break;

            case Constants.PropertyPriPayerName:
                rowValue = claimData.PriPayerName.Replace(Constants.Comma, Constants.SemiColon);
                break;

            case Constants.SecPayerName:
                rowValue = claimData.SecPayerName.Replace(Constants.Comma, Constants.SemiColon);
                break;

            case Constants.TerPayerName:
                rowValue = claimData.TerPayerName.Replace(Constants.Comma, Constants.SemiColon);
                break;
            }
            //Setting Database column name to Property Name
            switch (columnName)
            {
            case Constants.ClaimId:
                fieldName = Constants.ClaimIdValue;
                break;

            case Constants.ClaimStatus:
                fieldName = Constants.ClaimStat;
                break;

            case Constants.SsiNumberWithCaps:
                fieldName = Constants.SsiNumber;
                break;

            case Constants.NpiCaps:
                fieldName = Constants.PropertyNpi;
                break;

            case Constants.DrgWithCaps:
                fieldName = Constants.PropertyDrg;
                break;

            case Constants.PriIcddCodeCaps:
                fieldName = Constants.PriIcddCode;
                break;

            case Constants.PriIcdPCodeCaps:
                fieldName = Constants.PriIcdpCode;
                break;

            case Constants.MemberIdCaps:
                fieldName = Constants.MemberId;
                break;

            case Constants.IcnWithCaps:
                fieldName = Constants.PropertyIcn;
                break;

            case Constants.MrnWithCaps:
                fieldName = Constants.PropertyMrn;
                break;

            case Constants.AdjudicatedDate:
                fieldName = Constants.AdjudicatedDateValue;
                break;

            case Constants.PropertyStatementFrom:
                fieldName = Constants.StatementFromValue;
                break;

            case Constants.PropertyStatementThru:
                fieldName = Constants.StatementThruValue;
                break;

            case Constants.LosWithCaps:
                fieldName = Constants.PropertyLos;
                break;

            case Constants.PropertyBillDate:
                fieldName = Constants.BillDateValue;
                break;

            case Constants.ClaimDate:
                fieldName = Constants.ClaimDateValue;
                break;

            case Constants.LastFiledDate:
                fieldName = Constants.LastFiledDateValue;
                break;

            case Constants.ExpectedContractualAdjustment:
                fieldName = Constants.CalculatedAdjustment;
                break;

            case Constants.ActualContractualAdjustment:
                fieldName = Constants.ActualAdjustment;
                break;

            case Constants.PropertyLinkedRemitId:
                fieldName = Constants.LinkedRemitId;
                break;
            }
            if (rowValue.IsNullOrWhiteSpace())
            {
                string claimColumnName = fieldName == string.Empty ? columnName : fieldName;

                object value = (claimColumnName == Constants.AdjudicatedDateValue) ? Convert.ToDateTime(claimData.AdjudicatedDateValue).ToString("MM/dd/yyyy HH:mm",

                                                                                                                                                 CultureInfo.InvariantCulture) : GetPropertyValue(claimData, claimColumnName);
                if (IsAmountColumn(claimColumnName))
                {
                    rowValue = value != null?decimal.Parse(value.ToString()).ToString("C2") : string.Empty;
                }
                else
                {
                    rowValue = value != null?value.ToString() : string.Empty;
                }
            }
            return(rowValue);
        }