/// <summary> /// Gets the quote. /// </summary> /// <param name="inputParameters">The input parameters.</param> /// <returns></returns> /// <exception cref="System.ServiceModel.FaultException">GetQuote error description</exception> //[WebInvoke] public PolicyQuoteResponse GetQuote(PolicyQuoteRequest inputParameters) { try { //to do AUTH IncomingWebRequestContext request = WebOperationContext.Current.IncomingRequest; var context = OperationContext.Current; var url = context.IncomingMessageHeaders.To.AbsoluteUri; //WebHeaderCollection headers = request.Headers; //var url = HttpContext.Current.Request.Url.AbsoluteUri; Broker broker = new Broker() { ID = 1, Name = "Test" }; PolicyQuoteResponse result = Wservice.GetQuote(inputParameters, broker, url); return(result); /* * PolicyQuote quote = new PolicyQuote() * { * Product_ID = inputParameters.Product, * Broker_ID = broker.ID, * IsLegalPerson = inputParameters.IsLegalPerson ? LegalEntity.LegalEntity : LegalEntity.NaturalPerson, * PolicyNrOfMonthsValid = inputParameters.PolicyNrOfMonthsValid, * PolicyPaymentMethod_ID = inputParameters.PolicyPaymentMethod, * PolicyStartDate = new DateTimeOffset(inputParameters.PolicyStartingDate, TimeZoneInfo.Local.GetUtcOffset(inputParameters.PolicyStartingDate)), * PolicyEndDate = new DateTimeOffset(inputParameters.PolicyStartingDate, TimeZoneInfo.Local.GetUtcOffset(inputParameters.PolicyStartingDate)).AddYears(1).AddDays(-1), * //ResultedQuotePremium = 0, * PolicyType_ID = inputParameters.PolicyType, * PostalCode = inputParameters.PostalCode, * VehicleType_ID = inputParameters.VehicleType, * VehicleUsage_ID = inputParameters.VehicleUsage * }; * * PolicyQuote savedQuote = service.GetQuote(quote); * * return new PolicyQuoteResponse() * { * QuoteGuid = savedQuote.Guid, * CreatedAt = savedQuote.Created.DateTime, * Premium = savedQuote.Premium, * PolicyStartingDate = savedQuote.PolicyStartDate.DateTime, * PolicyEndingDate = savedQuote.PolicyEndDate.DateTime, * //received request * PolicyQuoteRequest = inputParameters * }; */ } catch (Exception ex) { throw new FaultException("GetQuote error description"); //throw new FaultException<ExceptionFaultContract>(new ExceptionFaultContract("GetQuote", "message", "description")); } }
/// <summary> /// Gets the quote asynchronous. /// </summary> /// <param name="quote">The quote.</param> /// <returns></returns> public async Task <PolicyQuoteResponse> GetQuoteAsync(PolicyQuoteRequest inputParameters, Broker broker, string url) { PolicyQuote quote = Mapper.Map <PolicyQuote>(inputParameters); quote.Broker_ID = broker.ID; quote.RequestUrl = url; quote.Premium = GetPremium(quote.Product_ID); PolicyQuote savedQuote = await DataAccess.SaveQuoteAsync(quote);; PolicyQuoteResponse result = Mapper.Map <PolicyQuoteResponse>(savedQuote); result.PolicyQuoteRequest = inputParameters; return(result); }
/// <summary> /// Gets the quotation asynchronous. /// </summary> /// <param name="inputParameters">The input parameters.</param> /// <returns></returns> /// <exception cref="FaultException{ExceptionFaultContract}">new ExceptionFaultContract(GetQuote, message, description)</exception> /// <exception cref="ExceptionFaultContract">GetQuote;message;description</exception> public async Task <PolicyQuoteResponse> GetQuotationAsync(PolicyQuoteRequest inputParameters) { try { //to do AUTH IncomingWebRequestContext request = WebOperationContext.Current.IncomingRequest; WebHeaderCollection headers = request.Headers; var url = HttpContext.Current.Request.Url.AbsoluteUri; Broker broker = new Broker() { ID = 1, Name = "Test" }; PolicyQuoteResponse result = await Wservice.GetQuoteAsync(inputParameters, broker, url); return(result); } catch (Exception ex) { throw new FaultException <ExceptionFaultContract>(new ExceptionFaultContract("GetQuote", "message", "description")); } }