private void IntegrateSave(RuimteOfferte save) { offerteRuimte_ = new RuimteOfferte(); if (save != null) { foreach (var r in offerteRuimte_.Children) { var ruimte = r as Ruimte; if (ruimte != null) { var saved_ruimte = save.Children.Where(x => (x as Ruimte).RuimteID == ruimte.RuimteID).FirstOrDefault() as Ruimte; if (saved_ruimte != null) { ruimte.GekozenAccenten = CheckProductsExists(saved_ruimte.GekozenAccenten, save.LoadedCompleet); ruimte.GekozenBewerkingen = CheckBewerkingenExists(saved_ruimte.GekozenBewerkingen, save.LoadedCompleet); ruimte.GekozenOpties = CheckOptiesExists(saved_ruimte.GekozenOpties, save.LoadedCompleet); ruimte.GekozenPakket = CheckPakkettenExists(saved_ruimte.GekozenPakket, save.LoadedCompleet); ruimte.PakketOud = ruimte.GekozenPakket; ruimte.GekozenProfielen = CheckProfielenExists(saved_ruimte.GekozenProfielen, save.LoadedCompleet); ruimte.GekozenTegels = CheckProductsExists(saved_ruimte.GekozenTegels, save.LoadedCompleet); ruimte.AanvullendeMeters = CheckMetersExists(saved_ruimte.AanvullendeMeters, save.LoadedCompleet); } } } offerteRuimte_.Korting = save.Korting; if (save.LoadedCompleet != null) { offerteRuimte_.LoadedCompleet = save.LoadedCompleet; } } }
public void SaveOfferte(RuimteOfferte ro, bool volledig, KeuzeControls.FinalStage FinSta) { var xml = SerializeOfferte(ro); //check xml vs saved xml using xml diff var ctx = Acumulator.Instance().ctx; OpgeslagenOffertes oo = new OpgeslagenOffertes(); oo.timestamp = FinSta.PrintDatum; Acumulator.Instance().OfferteDatum = FinSta.PrintDatum; CompleteSaveOfferte(oo, xml, volledig, FinSta); //oo.timestamp = DateTime.Now; // Acumulator.Instance().OfferteDatum = DateTime.Now; }
protected override IOfferte BouwOfferte() { Acumulator.Instance().BusyBee.BusyContent = "Opbouwen OfferteBoom - Basis"; Acumulator.Instance().BusyBee.IsBusy = true; offerteBasis_ = new BaseOfferte(); Acumulator.Instance().BusyBee.BusyContent = "Opbouwen OfferteBoom - Kavel"; offerteKavel_ = new KavelOfferte(); offerteBasis_.Add(offerteKavel_); //load existing save var ctx = Acumulator.Instance().ctx; RuimteOfferte Loaded_ro = null; if (ctx.OpgeslagenOffertes != null) { var maxdate = (from oo in ctx.OpgeslagenOffertes where oo.Bouwnummer_NR == Acumulator.Instance().Bouwnr select oo.timestamp).Max(); LogHelper.SendLog("Save Found", LogType.status); var ofxml = (from oo in ctx.OpgeslagenOffertes where oo.Bouwnummer_NR == Acumulator.Instance().Bouwnr&& oo.timestamp == maxdate select oo.Xml_Value).FirstOrDefault(); if (ofxml != null) { Acumulator.Instance().SavedXml = ofxml; SaveLoadXML slx = new SaveLoadXML(); Loaded_ro = slx.LoadOfferte(ofxml); Acumulator.Instance().OfferteDatum = (System.DateTime)maxdate; } } Acumulator.Instance().BusyBee.BusyContent = "Opbouwen OfferteBoom - Ruimtes"; if (Loaded_ro != null) { LogHelper.SendLog("Xml Parse Succes", LogType.status); loaded = true; //offerteRuimte_ = Loaded_ro; IntegrateSave(Loaded_ro); } else { offerteRuimte_ = new RuimteOfferte(); } offerteKavel_.Add(offerteRuimte_); Acumulator.Instance().BusyBee.IsBusy = false; return(offerteBasis_); }
public string SerializeOfferte(RuimteOfferte ro) { XmlSerializer xser = new XmlSerializer(ro.GetType(), typez); StringWriter sw = new StringWriter(); var cntr = 0; Start: if (cntr < 3) { cntr++; try { xser.Serialize(sw, ro); } catch (Exception e) { LogHelper.SendLog(e.Message, LogType.error); goto Start; } } return(sw.ToString()); }