Пример #1
0
 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);
     }
 }
Пример #2
0
        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);
        }
Пример #3
0
        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());
            }
        }
Пример #4
0
        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);
        }
Пример #5
0
        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);
        }
Пример #6
0
        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);
            }
        }