/// <summary> /// Update Claim DeDucatble Data from Genius /// </summary> /// <param name="claimHeader">Claim Header</param> /// <param name="genericDataItems">Generic Data Items</param> /// <param name="policyRefData">Policy Ref Data</param> /// <param name="policyRefs">Policy Refs</param> private void UpdateClaimDeductibleData(ClaimHeader claimHeader, IEnumerable<IGenericDataItem> genericDataItems, ClaimGenericDataItem policyRefData, string[] policyRefs) { foreach (IGenericDataItem genericData in genericDataItems) { if (claimHeader.PolicyAmountCurrencyCodeField.IsInUse.GetValueOrDefault(false)) { claimHeader.PolicyAmountCurrencyCode = genericData.CurrencyCode; } if (genericData.CustomNumeric01 == 1 && claimHeader.PolicyDeductible01Field.IsInUse.GetValueOrDefault(false)) { claimHeader.PolicyDeductible01 = genericData.CustomNumeric02; // Deductible amount claimHeader.IsDeductible01PaidByInsurer = genericData.CustomBoolean03; // Funded claimHeader.CustomBoolean12 = genericData.CustomBoolean02; // Adjustable } else if (genericData.CustomNumeric01 == 2 && claimHeader.PolicyDeductible02Field.IsInUse.GetValueOrDefault(false)) { claimHeader.PolicyDeductible02 = genericData.CustomNumeric02; // Deductible amount claimHeader.IsDeductible02PaidByInsurer = genericData.CustomBoolean03; // Funded claimHeader.CustomBoolean12 = genericData.CustomBoolean02; // Adjustable } else if (genericData.CustomNumeric01 == 3 && claimHeader.PolicyDeductible03Field.IsInUse.GetValueOrDefault(false)) { claimHeader.PolicyDeductible03 = genericData.CustomNumeric02; // Deductible amount claimHeader.IsDeductible03PaidByInsurer = genericData.CustomBoolean03; // Funded claimHeader.CustomBoolean12 = genericData.CustomBoolean02; // Adjustable } else if (genericData.CustomNumeric01 == 4 && claimHeader.PolicyDeductible04Field.IsInUse.GetValueOrDefault(false)) { claimHeader.PolicyDeductible04 = genericData.CustomNumeric02; // Deductible amount claimHeader.IsDeductible04PaidByInsurer = genericData.CustomBoolean03; // Funded claimHeader.CustomBoolean12 = genericData.CustomBoolean02; // Adjustable } else if (genericData.CustomNumeric01 == 5 && claimHeader.PolicyDeductible05Field.IsInUse.GetValueOrDefault(false)) { claimHeader.PolicyDeductible05 = genericData.CustomNumeric02; // Deductible amount claimHeader.IsDeductible05PaidByInsurer = genericData.CustomBoolean03; claimHeader.CustomBoolean12 = genericData.CustomBoolean02; // Adjustable } // copy Policy refs if (policyRefData != null) { if (genericData.CustomNumeric01 == 1) { policyRefData.CustomCode01 = genericData.CustomCode04; // UI Label = Deductiple Type 1; GDT - AND4 if (genericData.CustomBoolean03.GetValueOrDefault(false) && genericData.CustomNumeric03 != null) { policyRefData.CustomReference01 = policyRefs[(int)genericData.CustomNumeric03 - 1]; // UI Label = Deductiple Pol Ref 1; GDT - AND4 } } else if (genericData.CustomNumeric01 == 2) { policyRefData.CustomCode02 = genericData.CustomCode04; // UI Label = Deductiple Type 2; GDT - AND4 if (genericData.CustomBoolean03.GetValueOrDefault(false) && genericData.CustomNumeric03 != null) { policyRefData.CustomReference02 = policyRefs[(int)genericData.CustomNumeric03 - 1]; // UI Label = Deductiple Pol Ref 2; GDT - AND4 } } else if (genericData.CustomNumeric01 == 3) { policyRefData.CustomCode03 = genericData.CustomCode04; // UI Label = Deductiple Type 3; GDT - AND4 if (genericData.CustomBoolean03.GetValueOrDefault(false) && genericData.CustomNumeric03 != null) { policyRefData.CustomReference03 = policyRefs[(int)genericData.CustomNumeric03 - 1]; // UI Label = Deductiple Pol Ref 3; GDT - AND4 } } else if (genericData.CustomNumeric01 == 4) { policyRefData.CustomCode04 = genericData.CustomCode04; // UI Label = Deductiple Type 4; GDT - AND4 if (genericData.CustomBoolean03.GetValueOrDefault(false) && genericData.CustomNumeric03 != null) { policyRefData.CustomReference04 = policyRefs[(int)genericData.CustomNumeric03 - 1]; // UI Label = Deductiple Pol Ref 4; GDT - AND4 } } else if (genericData.CustomNumeric01 == 5) { policyRefData.CustomCode05 = genericData.CustomCode04; // UI Label = Deductiple Type 5; GDT - AND4 if (genericData.CustomBoolean03.GetValueOrDefault(false) && genericData.CustomNumeric03 != null) { policyRefData.CustomReference05 = policyRefs[(int)genericData.CustomNumeric03 - 1]; // UI Label = Deductiple Pol Ref 5; GDT - AND4 } } } } }
private void UpdateClaimDeductibleData(ClaimHeader claimHeader, IEnumerable<IGenericDataItem> genericDataItems, ClaimGenericDataItem policyRefData, string[] policyRefs) { Logger.InfoFormat("Updating E&D data\r\n[\r\n\t{{ClaimReference:{0}}}\r\n]", claimHeader.ClaimReference); foreach (IGenericDataItem genericData in genericDataItems) { if (claimHeader.PolicyAmountCurrencyCodeField.IsInUse.GetValueOrDefault(false)) { claimHeader.PolicyAmountCurrencyCode = genericData.CurrencyCode; } if (genericData.CustomNumeric01 == 1 && claimHeader.PolicyDeductible01Field.IsInUse.GetValueOrDefault(false)) { claimHeader.PolicyDeductible01 = genericData.CustomNumeric02; // Deductible amount claimHeader.IsDeductible01PaidByInsurer = genericData.CustomBoolean03; // Funded claimHeader.CustomBoolean12 = genericData.CustomBoolean02; // Adjustable } else if (genericData.CustomNumeric01 == 2 && claimHeader.PolicyDeductible02Field.IsInUse.GetValueOrDefault(false)) { claimHeader.PolicyDeductible02 = genericData.CustomNumeric02; // Deductible amount claimHeader.IsDeductible02PaidByInsurer = genericData.CustomBoolean03; // Funded claimHeader.CustomBoolean12 = genericData.CustomBoolean02; // Adjustable } else if (genericData.CustomNumeric01 == 3 && claimHeader.PolicyDeductible03Field.IsInUse.GetValueOrDefault(false)) { claimHeader.PolicyDeductible03 = genericData.CustomNumeric02; // Deductible amount claimHeader.IsDeductible03PaidByInsurer = genericData.CustomBoolean03; // Funded claimHeader.CustomBoolean12 = genericData.CustomBoolean02; // Adjustable } else if (genericData.CustomNumeric01 == 4 && claimHeader.PolicyDeductible04Field.IsInUse.GetValueOrDefault(false)) { claimHeader.PolicyDeductible04 = genericData.CustomNumeric02; // Deductible amount claimHeader.IsDeductible04PaidByInsurer = genericData.CustomBoolean03; // Funded claimHeader.CustomBoolean12 = genericData.CustomBoolean02; // Adjustable } else if (genericData.CustomNumeric01 == 5 && claimHeader.PolicyDeductible05Field.IsInUse.GetValueOrDefault(false)) { claimHeader.PolicyDeductible05 = genericData.CustomNumeric02; // Deductible amount claimHeader.IsDeductible05PaidByInsurer = genericData.CustomBoolean03; claimHeader.CustomBoolean12 = genericData.CustomBoolean02; // Adjustable } // copy Policy refs if (policyRefData != null) { if (genericData.CustomNumeric01 == 1) { policyRefData.CustomCode01 = genericData.CustomCode04; if (genericData.CustomBoolean03.GetValueOrDefault(false) && genericData.CustomNumeric03 != null) { policyRefData.CustomReference01 = policyRefs[(int)genericData.CustomNumeric03 - 1]; } } else if (genericData.CustomNumeric01 == 2) { policyRefData.CustomCode02 = genericData.CustomCode04; if (genericData.CustomBoolean03.GetValueOrDefault(false) && genericData.CustomNumeric03 != null) { policyRefData.CustomReference02 = policyRefs[(int)genericData.CustomNumeric03 - 1]; } } else if (genericData.CustomNumeric01 == 3) { policyRefData.CustomCode03 = genericData.CustomCode04; if (genericData.CustomBoolean03.GetValueOrDefault(false) && genericData.CustomNumeric03 != null) { policyRefData.CustomReference03 = policyRefs[(int)genericData.CustomNumeric03 - 1]; } } else if (genericData.CustomNumeric01 == 4) { policyRefData.CustomCode04 = genericData.CustomCode04; if (genericData.CustomBoolean03.GetValueOrDefault(false) && genericData.CustomNumeric03 != null) { policyRefData.CustomReference04 = policyRefs[(int)genericData.CustomNumeric03 - 1]; } } else if (genericData.CustomNumeric01 == 5) { policyRefData.CustomCode05 = genericData.CustomCode04; if (genericData.CustomBoolean03.GetValueOrDefault(false) && genericData.CustomNumeric03 != null) { policyRefData.CustomReference05 = policyRefs[(int)genericData.CustomNumeric03 - 1]; } } } } }