public string LoadCoveragesAndDiscounts(string session) { try { XDocument sessionXml = JsonConvert.DeserializeXNode(session); WebSessionDRC websession = new WebSessionDRC(sessionXml.ToString().Deserialize <WebSessionDRC>()); websession.Quote = new AutoQuote.Autoquote(); websession.Quote.deserialize(sessionXml.Element("WebSessionDRC").Element("Quote").ToString().Replace("<Quote>", "<DRCXML><RETURN><AiisQuoteMaster>").Replace("</Quote>", "</AiisQuoteMaster></RETURN></DRCXML>"), null); if (!sessionService.LoadCoveragesAndDiscounts(websession)) { loggingService.logError("LoadCoveragesAndDiscounts returned false: ", "KemperQuoteAng2", "AutoQuoteLibrary", "LoadCoveragesAndDiscounts"); } string xResult = websession.Serialize <WebSessionDRC>(); string quote = "<Quote>" + websession.Quote.serialize(null) + "</Quote>"; xResult = xResult.Replace("<Quote />", quote); xResult = xResult.Replace("<Coverage ", "<Coverage json:Array='true' "); //xResult = xResult.Replace("<VehicleCoverage ", "<VehicleCoverage json:Array='true' "); xResult = xResult.Replace("<VehicleCoverage>", "<VehicleCoverage json:Array='true' >"); xResult = xResult.Replace("<Driver ", "<Driver json:Array='true' "); xResult = xResult.Replace("<Vehicle ", "<Vehicle json:Array='true' "); xResult = xResult.Replace("<WebSessionDRC ", "<WebSessionDRC xmlns:json='http://james.newtonking.com/projects/json' "); XElement xelement = XElement.Parse(xResult); string result = JsonConvert.SerializeXNode(xelement); return(result); } catch (Exception ex) { loggingService.logError("LoadCoveragesAndDiscounts Error guid: " + ex.Message, "KemperQuoteAng2", "AutoQuoteLibrary", "LoadCoveragesAndDiscounts"); return("Error: " + ex.Message); } }
public string Recalculate(string session) { XDocument sessionXml = JsonConvert.DeserializeXNode(session); WebSessionDRC websession = new WebSessionDRC(sessionXml.ToString().Deserialize <WebSessionDRC>()); websession.Quote = new AutoQuote.Autoquote(); websession.Quote.deserialize(sessionXml.Element("WebSessionDRC").Element("Quote").ToString().Replace("<Quote>", "<DRCXML><RETURN><AiisQuoteMaster>").Replace("</Quote>", "</AiisQuoteMaster></RETURN></DRCXML>"), null); try { sessionService.Recalculate(websession); } catch (Exception ex) { websession.AddInfo.ErrorMessages.Add(new ErrorMessage { Error = ex.Message, Module = "AjaxController", Function = "Recalculate", Page = "Coverages" }); loggingService.logError("Recalculate exception:" + ex.Message, "KemperQuoteAng2", "AutoQuoteLibrary", "LoadCoveragesAndDiscounts"); } string xResult = websession.Serialize <WebSessionDRC>(); string quote = "<Quote>" + websession.Quote.serialize(null) + "</Quote>"; xResult = xResult.Replace("<Quote />", quote); xResult = xResult.Replace("<Coverage ", "<Coverage json:Array='true' "); //xResult = xResult.Replace("<VehicleCoverage ", "<VehicleCoverage json:Array='true' "); xResult = xResult.Replace("<VehicleCoverage>", "<VehicleCoverage json:Array='true' >"); xResult = xResult.Replace("<Driver ", "<Driver json:Array='true' "); xResult = xResult.Replace("<Vehicle ", "<Vehicle json:Array='true' "); xResult = xResult.Replace("<WebSessionDRC ", "<WebSessionDRC xmlns:json='http://james.newtonking.com/projects/json' "); XElement xelement = XElement.Parse(xResult); string result = JsonConvert.SerializeXNode(xelement); return(result); }
public string RatedSave(string session) { XDocument sessionXml = JsonConvert.DeserializeXNode(session); WebSessionDRC websession = new WebSessionDRC(sessionXml.ToString().Deserialize <WebSessionDRC>()); websession.Quote = new AutoQuote.Autoquote(); websession.Quote.deserialize(sessionXml.Element("WebSessionDRC").Element("Quote").ToString().Replace("<Quote>", "<DRCXML><RETURN><AiisQuoteMaster>").Replace("</Quote>", "</AiisQuoteMaster></RETURN></DRCXML>"), null); if (sessionService.RatedSave(websession)) { return("Success"); } else { System.Text.StringBuilder sb = new System.Text.StringBuilder(); sb.Append("Error. "); if (websession.HasErrors()) { foreach (ErrorMessage err in websession.AddInfo.ErrorMessages) { sb.Append(err.Error + ". "); } } return(sb.ToString()); } }
public XElement LoadCoverages(WebSessionDRC session) { Int32 account = LoadAccount(session.Quote.getCustomer().getMarketKeyCode()); Int32 form = 3; String units = "1"; if (session.Quote.getPolicyInfo().getHoUnitsInBldg() > 0) { units = session.Quote.getPolicyInfo().getHoUnitsInBldg().ToString(); } DateTime date = session.Quote.getPolicyInfo().getEffDate(); String zip = session.Quote.getCustomer().getZipCode1().ToString("00000"); String key = "KdQuoteLibrary_RenterServices_LoadCoverages_" + account + "_" + form + "_" + date + "_" + zip + "_" + units; XElement scenarios = (XElement)CacheManager.GetData(key); if (scenarios == null) { ScenariosSoapClient ws = new ScenariosSoapClient(); XElement coverages = XElement.Parse(ws.LookupCoverages(account, form, date, zip)); scenarios = coverages.Element(coverages.GetDefaultNamespace() + "Scenarios"); scenarios.Elements().Where(x => x.Attribute("Units").Value != units).Remove(); CacheManager.Add(key, scenarios, CacheManager.ExpireEveryDayAtSix); } return(scenarios); }
public string CreateNewSession(string zip, string ctid) { Guid myGuid = Guid.Empty; WebSessionDRC websession = new WebSessionDRC(sessionService.Load(ref myGuid, zip, true)); // ctid); string xResult = websession.Serialize <WebSessionDRC>(); string quote = "<Quote>" + websession.Quote.serialize(null) + "</Quote>"; xResult = xResult.Replace("<Quote />", quote); xResult = xResult.Replace("<Coverage ", "<Coverage json:Array='true' "); xResult = xResult.Replace("<VehicleCoverage ", "<VehicleCoverage json:Array='true' "); xResult = xResult.Replace("<Driver ", "<Driver json:Array='true' "); xResult = xResult.Replace("<Vehicle ", "<Vehicle json:Array='true' "); xResult = xResult.Replace("<WebSessionDRC ", "<WebSessionDRC xmlns:json='http://james.newtonking.com/projects/json' "); XElement xelement = XElement.Parse(xResult); string result = JsonConvert.SerializeXNode(xelement); return(result); }
public string SaveSession(string session) { Guid guid = new Guid(); try { XDocument sessionXml = JsonConvert.DeserializeXNode(session); WebSessionDRC websession = new WebSessionDRC(sessionXml.ToString().Deserialize <WebSessionDRC>()); websession.Quote = new AutoQuote.Autoquote(); websession.Quote.deserialize(sessionXml.Element("WebSessionDRC").Element("Quote").ToString().Replace("<Quote>", "<DRCXML><RETURN><AiisQuoteMaster>").Replace("</Quote>", "</AiisQuoteMaster></RETURN></DRCXML>"), null); guid = sessionService.Save(websession); loggingService.logError("SaveSession Success " + guid.ToString(), "KemperQuoteAng2", "AutoQuoteLibrary", "LoadCoveragesAndDiscounts"); return("Success"); } catch (Exception ex) { loggingService.logError("SaveSession Error guid: " + guid.ToString() + " + ex.Message", "KemperQuoteAng2", "AutoQuoteLibrary", "LoadCoveragesAndDiscounts"); return("Error: " + ex.Message); } }