using KlassenBIB; using SanShared; using System; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Xaml; namespace Database { class UpdateDatabase { public static void UpdateNewGuids() { if (Datenbank.Instance.loadedProjekt == null) return; foreach(var entries in Datenbank.Instance.loadedProjekt.Objekte) { if(entries.Guid.Equals(Guid.Empty)) entries.Guid = Guid.NewGuid(); foreach(var sanierungen in entries.Sanierung) { if (sanierungen.Guid.Equals(Guid.Empty)) sanierungen.Guid = Guid.NewGuid(); } } return; } public static void MakeNewDatabaseSystem() { List projekte = new List(); Projekt tempProjekt = null; foreach (DirectoryInfo projekt in (new DirectoryInfo("./projekte").GetDirectories())) { projekte.Add(projekt.Name); } foreach (string t in projekte) { string filepath = Path.Combine("projekte", t, string.Format("{0}.xaml", t)); if (!File.Exists(filepath)) continue; tempProjekt = XamlServices.Load(filepath) as KlassenBIB.Projekt; Datenbank.Instance.TeufelDB.Projekte.Add(tempProjekt); //var x = Datenbank.Instance.MainDatenbank.AuftraggeberListe; } } public static void GenerateNewBeziehungen() { string imprägnierungsnummer = ""; foreach(Projekt projekt in Datenbank.Instance.TeufelDB.Projekte) { projekt.Auftraggeber = Datenbank.Instance.TeufelDB.Auftraggeber.Find(x => x.Name.Equals(projekt.Auftraggeber.Name)); foreach(Inspektionsobjekt inspektionsobjekt in projekt.Objekte) { if(inspektionsobjekt.Sanierung.Count > 0) { foreach(var sanierung in inspektionsobjekt.Sanierung) { if(sanierung is KlassenBIB.InlinerSanierung) { KlassenBIB.InlinerSanierung san = (sanierung as KlassenBIB.InlinerSanierung); if (!(san.Imprägnierungsbericht is KlassenBIB.WerkseitigImprägniert)) continue; KlassenBIB.WerkseitigImprägniert werkseitigImprägniert = (KlassenBIB.WerkseitigImprägniert)san.Imprägnierungsbericht; imprägnierungsnummer = werkseitigImprägniert.Imprägniernummer; //san.Imprägnierungsbericht = null; san.Imprägnierungsbericht = Datenbank.Instance.TeufelDB.Imprägnierungen.Find(x => x.Imprägniernummer.Equals(imprägnierungsnummer)); } } } } } //Debugger.Break(); } public static void TransferAuftraggeber() { /* List projekte = new List(); List auftraggebers = new List(); Projekt tempProjekt = null; foreach(DirectoryInfo projekt in (new DirectoryInfo("./projekte").GetDirectories())) { projekte.Add(projekt.Name); } foreach(string t in projekte) { string filepath = Path.Combine("projekte", t, string.Format("{0}.xaml", t)); if (!File.Exists(filepath)) continue; tempProjekt = XamlServices.Load(filepath) as KlassenBIB.Projekt; //auftraggebers.Add(tempProjekt.Auftraggeber); if (tempProjekt.Auftraggeber.Name == null && tempProjekt.Auftraggeber.Ort == null && tempProjekt.Auftraggeber.Ansprechpartner == null) continue; IAuftraggeber test = Datenbank.Instance.MainDatenbank.AuftraggeberListe.Find(x =>x.Name.Equals(tempProjekt.Auftraggeber.Name)); if (test != null) { continue; } Datenbank.Instance.MainDatenbank.AuftraggeberListe.Add(tempProjekt.Auftraggeber); } */ } } }