private static void MapEntityToModel(Domain.Data.DataModel.QuoteCalculation calc, QuoteCalculation model) { model.Selected = true; model.ContractCalculationID = calc.ID; model.ContractTypeID = calc.ContractTypeID; model.ROEPortion = calc.ROEPortion; model.ROEPortionAmount = calc.ROEPortionAmount; model.ZARPortion = calc.ZARPortion; model.ZARPortionAmount = calc.ZARPortionAmount; //model.BasePrice = calc.SellingPricePercAmount * (1 + calc.SellingPricePercAmount / 100); model.BasePrice = calc.BasePrice; model.SellingPricePerc = calc.SellingPricePerc; model.ContractType = calc.ContractType.ContractTypeName; }
private void UpdateModelFromSavedValues(List <QuoteCalculation> models, int QuoteID) { QuoteCalculationsQuery query = new QuoteCalculationsQuery() { QuoteID = QuoteID }; IEnumerable <Domain.Data.DataModel.QuoteCalculation> calcs = _queryProcessor.Execute(query); foreach (QuoteCalculation model in models) { Domain.Data.DataModel.QuoteCalculation calc = calcs.FirstOrDefault(c => c.ContractTypeID == model.ContractTypeID); if (calc == null) { model.Selected = false; } else { model.Selected = true; MapEntityToModel(calc, model); } } }
private EWS.Domain.Model.QuoteCalculationItem[] GetQuoteCalculationItemsStructure(Domain.Data.DataModel.QuoteCalculation calc, short NoOfYears, DateTime?StartDate = null) { QuoteCalculationItem[] models = new QuoteCalculationItem[NoOfYears]; // new/old ROE and VAT values needed ......................................... decimal oldROE; decimal newROE; float VAT; QuoteQuery quotequery = new QuoteQuery() { ID = calc.QuoteID }; EWS.Domain.Data.DataModel.Quote quoteEntity = _queryProcessor.Execute(quotequery); newROE = quoteEntity.ROE; if (!string.IsNullOrEmpty(quoteEntity.QuoteRef)) { SourceQuoteQuery query = new SourceQuoteQuery() { QuoteRef = quoteEntity.QuoteRef }; SourceQuote entity = _queryProcessor.Execute(query); oldROE = entity.ROE; VAT = entity.VAT; } else { ContractQuery query = new ContractQuery() { ID = quoteEntity.BaseContractID.Value }; EWS.Domain.Data.DataModel.Contract entity = _queryProcessor.Execute(query); oldROE = entity.ROE; VAT = entity.VAT; } // Currently Saved values .................................................... QuoteCalculationItemsQuery qury = new QuoteCalculationItemsQuery() { QuoteCalculationID = calc.ID }; IEnumerable <Domain.Data.DataModel.QuoteCalculationItem> calcs = _queryProcessor.Execute(qury); // Setup the structure ....................................................... for (byte i = 0; i < NoOfYears; i++) { byte yearno = (byte)(i + 1); models[i] = new QuoteCalculationItem() { YearNo = yearno, NewROE = newROE, TOPSROE = oldROE, VAT = VAT, UseNewROE = true, Increment = (i == 0 ? 0 : EWS.Domain.Defaults.AnnualIncrement) }; if (StartDate.HasValue) { models[i].StartDate = StartDate.Value.AddYears(i); models[i].EndDate = StartDate.Value.AddYears(yearno).AddDays(-1); } Domain.Data.DataModel.QuoteCalculationItem item = calcs.FirstOrDefault(c => c.YearNo == yearno); if (item != null) { models[i].ID = item.ID; models[i].Increment = item.IncrPerc; models[i].UseNewROE = (item.ROE == newROE); } } return(models); }