public string SaveQuote(EnterCurrentQuote model) { try { QuoteSaveCommand cmd1 = new QuoteSaveCommand() { ID = model.QuoteID, CustomerID = model.Customer.Id, DeviceID = model.Device.Id, TenderNo = model.TenderNumber, BaseContractID = model.ContractID, SellingPrice = model.SellingPriceExclVAT, ROE = model.ExchangeRate.Rate, ROEDate = model.ExchangeRate.Date, VAT = model.VAT, ContractTerm = model.NoOfMonths, Deleted = false }; _commandProcessor.Execute(cmd1); model.QuoteID = cmd1.ID; SaveQuoteCalculation(model.ContractCalculations, model.QuoteID); return(string.Empty); } catch (Exception ex) { return("Save was unsuccessful: " + ex.Message); } }
private EnterCurrentQuote GetCurrentQuote_Model(EWS.Domain.Data.DataModel.Quote entity) { EnterCurrentQuote model = new EnterCurrentQuote(); model.QuoteID = entity.ID; model.TenderNumber = entity.TenderNo; model.VAT = entity.VAT; model.SellingPriceExclVAT = entity.SellingPrice; model.SellingPriceInclVAT = Math.Round(entity.SellingPrice * Convert.ToDecimal(entity.VAT / 100 + 1), 2); model.NoOfMonths = entity.ContractTerm; model.Customer = GetCustomer_Model(entity.CustomerID); DeviceQuery dqry = new Domain.Data.Queries.DeviceQuery() { DeviceID = entity.DeviceID }; model.Device = _queryProcessor.Execute(dqry); model.ExchangeRate = new ExchangeRate() { Rate = entity.ROE, Date = entity.ROEDate }; model.ContractCalculations = GetNewContractCalculationModels(model.SellingPriceExclVAT); UpdateModelFromSavedValues(model.ContractCalculations, model.QuoteID); return(model); }
private EnterCurrentQuote GetCurrentQuote_Model(string ContractID) { if (string.IsNullOrEmpty(ContractID)) { return(null); } else { int contractID = Convert.ToInt32(ContractID); EWS.Domain.Data.DataModel.Quote quote = GetExistingQuote(contractID); if (quote != null) { return(GetCurrentQuote_Model(quote)); } else { EWS.Domain.Data.DataModel.Contract sourcecontract = GetContract(contractID); if (sourcecontract == null) { return(null); } else { EnterCurrentQuote model = new EnterCurrentQuote(); DeviceQuery query = new Domain.Data.Queries.DeviceQuery() { DeviceID = sourcecontract.DeviceID }; model.Device = _queryProcessor.Execute(query); model.TenderNumber = sourcecontract.TenderNo; model.VAT = sourcecontract.VAT; model.SellingPriceExclVAT = 0; model.SellingPriceInclVAT = 0; List <EWS.Domain.Data.DataModel.ContractItem> contractitems = GetContractItems(contractID); model.ContractCalculations = new List <QuoteCalculation>(); foreach (EWS.Domain.Data.DataModel.ContractItem contractitem in contractitems) { model.ContractCalculations.Add(new QuoteCalculation() { Selected = true, BasePrice = contractitem.BasePrice, ContractTypeID = contractitem.ContractTypeID, ContractType = contractitem.ContractType.ContractTypeName, ROEPortion = contractitem.ROEPortion, ROEPortionAmount = contractitem.ROEPortionAmount, ZARPortion = contractitem.ZARPortion, ZARPortionAmount = contractitem.ZARPortionAmount }); } CustomerQuery customerquery = new CustomerQuery() { ID = sourcecontract.CustomerID }; Domain.Data.DataModel.Customer customer = _queryProcessor.Execute(customerquery); model.Customer = new Customer() { Id = sourcecontract.CustomerID, CustomerName = customer.CustomerNameFriendly, Locality = customer.CustomerLocality.CustomerLocalityName, RegistrationNo = customer.RegistrationNo }; model.ExchangeRate = new ExchangeRate() { Rate = sourcecontract.ROE, Date = sourcecontract.ROEDate }; return(model); } } } } //GetCurrentQuote_Model