public ConsumerWebBusinessLogic(QuoteHeader qHeader, IQuoteConfiguration config) { this.qHeader = qHeader; this.controlData = new List<ControlDataSource>(); DataBinder = new BusinessLogicSessionDataBinder(); DNQInterface = new BusinessLogicDNQInterface(); ServiceInterface = new BusinessLogicServiceInterface(); PurchaseProcessor = new BusinessLogicPurchaseProcessor(); ABTestInterface = new BusinessLogicABTestInterface(); ContactCustomerCareProcessor = new BusinessLogicCustCareProcessor(); MultiRateProcessor = new BusinessLogicMultirateProcessor(ServiceInterface, false); PartnerConfiguration = config; this.Accept(DataBinder); this.Accept(DNQInterface); this.Accept(ServiceInterface); this.Accept(PurchaseProcessor); this.Accept(ABTestInterface); this.Accept(ContactCustomerCareProcessor); this.Accept(MultiRateProcessor); }
public BillingOptions GetBillingOptions() { this.Log("GetBillingOptions - Start... Inspection Result value = " + this.BusinessLogic().Quote.InspectionResult.ToString()); BusinessLogicPurchaseProcessor Purchase = new BusinessLogicPurchaseProcessor(); this.Accept<BusinessLogicPurchaseProcessor>(Purchase); BusinessLogicSessionDataBinder data = new BusinessLogicSessionDataBinder(); this.Accept<BusinessLogicSessionDataBinder>(data); data.RefreshDataObjects(); this.Log("GetBillingOptions - DataObjects refreshed... Inspection Result value = " + this.BusinessLogic().Quote.InspectionResult.ToString()); int propertyType = 0; Structure structure = Structure.GetStructure(QHeader.SessionId); if (!String.IsNullOrEmpty(structure.PropertyType)) { propertyType = Convert.ToInt32(structure.PropertyType); } //QC#285 - getting RatingDate DateTime? policyEffectiveDt = Convert.ToDateTime(data.Coverage.PolicyEffDate); LookupProvider lookupProvider = new LookupProvider(); DateTime? ratingDate = lookupProvider.GetRatingDate(policyEffectiveDt, data.Quote.InitialQuoteRequestDt, QHeader.State); Homesite.IQuote.Data.ISODataProvider.hssp_GetInstallmentDataDataTable installmentDataTable = QuoteServices.GetInstallmentDataTable(data.Quote.CompanysQuoteNumber, QHeader.State, Convert.ToDecimal(data.Quote.PolicyPremiumAmt), Convert.ToDateTime(ratingDate), propertyType); BillingOptions billingOptions = new BillingOptions(); foreach (Homesite.IQuote.Data.ISODataProvider.hssp_GetInstallmentDataRow row in installmentDataTable.Rows) { if (row.NumOfInstallments == 0) { billingOptions.FullPremium = String.Format("{0:$###,###,##0.00}", row.NewDownPayment); } else if (row.NumOfInstallments == 1) { billingOptions.DownPayment_2Pay = String.Format("{0:$###,###,##0.00}", row.NewDownPayment); billingOptions.PaymentAmt_2Pay = String.Format("{0:$###,###,##0.00}", row.Installment); } else if (row.NumOfInstallments == 3) { billingOptions.DownPayment_4Pay = String.Format("{0:$###,###,##0.00}", row.NewDownPayment); billingOptions.PaymentAmt_4Pay = String.Format("{0:$###,###,##0.00}", row.Installment); } else if (row.NumOfInstallments == 9) { billingOptions.DownPayment_10Pay = String.Format("{0:$###,###,##0.00}", row.NewDownPayment); billingOptions.PaymentAmt_10Pay = String.Format("{0:$###,###,##0.00}", row.Installment); } else if (row.NumOfInstallments == 11) { billingOptions.DownPayment_12Pay = String.Format("{0:$###,###,##0.00}", row.NewDownPayment); billingOptions.PaymentAmt_12Pay = String.Format("{0:$###,###,##0.00}", row.Installment); } } this.Log("GetBillingOptions - end... Inspection Result value = " + this.BusinessLogic().Quote.InspectionResult.ToString()); return billingOptions; }