private EnterEquipmentQuote GetEquipmentQuote_Model(string QuoteRef) { if (string.IsNullOrEmpty(QuoteRef)) { return(null); } else { EWS.Domain.Data.DataModel.Quote quote = GetExistingQuote(QuoteRef); if (quote != null) { return(GetEquipmentQuote_Model(quote)); } else { Domain.Model.SourceQuote sourcequote = GetSourceQuote(QuoteRef); if (sourcequote == null) { return(null); } else { EnterEquipmentQuote model = new EnterEquipmentQuote(); model.QuoteRef = QuoteRef; DeviceQuery query = new Domain.Data.Queries.DeviceQuery() { DeviceID = sourcequote.DeviceID }; model.Device = _queryProcessor.Execute(query); model.TenderNumber = sourcequote.TenderNumber; model.VAT = sourcequote.VAT; model.SellingPriceExclVAT = sourcequote.SellingPriceInclVAT / Convert.ToDecimal(1 + sourcequote.VAT / 100); model.SellingPriceInclVAT = sourcequote.SellingPriceInclVAT; model.ContractCalculations = GetNewEquipmentContractCalculationModels(model.SellingPriceExclVAT); if (quote == null) // fill in from source quote: { // Exchange Rate CurrencyQuery cquery = new CurrencyQuery() { ID = "USD" }; Domain.Data.DataModel.Currency usd = _queryProcessor.Execute(cquery); model.ExchangeRate = new ExchangeRate() { Rate = Convert.ToDecimal(usd.DefaultRateOfExchange), Date = DateTime.Today }; } return(model); } } } } //GetEquipmentQuote_Model
public IEnumerable <EWS.Domain.Model.SourceQuote> Handle(SourceQuotesQuery query) { IEnumerable <SourceQuote> dataList = _entities.Query <SourceQuote>() .Where(p => query.QuoteRef == null || p.Ref.ToLower().Contains(query.QuoteRef.ToLower()) ).AsEnumerable(); List <Domain.Model.SourceQuote> models = new List <Domain.Model.SourceQuote>(); foreach (SourceQuote item in dataList) { Domain.Model.SourceQuote model = new Domain.Model.SourceQuote() { Date = item.Date, DeviceID = item.DeviceID, DeviceDescription = item.Device.DisplayName, QuoteRef = item.Ref, Supplier = item.Supplier.SupplierName, VAT = item.VAT, SellingPriceInclVAT = item.SellingPriceInclVAT, TenderNumber = item.TenderNumber }; models.Add(model); } return(models); }