diff --git a/Database/Datenbank.cs b/Database/Datenbank.cs index 5bdb94f..a7a9d5b 100644 --- a/Database/Datenbank.cs +++ b/Database/Datenbank.cs @@ -28,7 +28,7 @@ namespace Database } public KlassenBIB.Projekt loadedProjekt = null; - public KlassenBIB.MainDataBase MainDatenbank = null; + //public KlassenBIB.MainDataBase MainDatenbank = null; public KlassenBIB.DB TeufelDB = null; public Datenbank() @@ -40,7 +40,7 @@ namespace Database TeufelDB = XamlServices.Load("./projekte/TeufelDB.xaml") as KlassenBIB.DB; //Debugger.Break(); - filepath = Path.Combine("./projekte","MainDatenbank.xaml"); + /*filepath = Path.Combine("./projekte","MainDatenbank.xaml"); if(File.Exists(filepath)) { MainDatenbank = XamlServices.Load(filepath) as KlassenBIB.MainDataBase; @@ -49,6 +49,7 @@ namespace Database { MainDatenbank = new MainDataBase(); } + */ } private string projektpfad = string.Empty; @@ -84,9 +85,12 @@ namespace Database if (!File.Exists("./projekte/TeufelDB.xaml")) { UpdateDatabase.UpdateNewGuids(); - UpdateDatabase.TransferSanierteObjekte(); + UpdateDatabase.TransferAuftraggeber(); UpdateDatabase.MakeNewDatabaseSystem(); + } else + { + //UpdateDatabase.GenerateNewBeziehungen(); } return true; @@ -124,8 +128,6 @@ namespace Database public void SaveProjekt() { - //XamlServices.Save("./projekte/MainDatenbank.xaml", MainDatenbank); - //XamlServices.Save(projektpfad, loadedProjekt); XamlServices.Save("./projekte/TeufelDB.xaml", TeufelDB); } } diff --git a/Database/UpdateDatabase.cs b/Database/UpdateDatabase.cs index 79176cd..56156a5 100644 --- a/Database/UpdateDatabase.cs +++ b/Database/UpdateDatabase.cs @@ -32,64 +32,7 @@ namespace Database return; } - public static void TransferSanierteObjekte() - { - List projekte = new List(); - - Projekt tempProjekt = null; - foreach (DirectoryInfo projekt in (new DirectoryInfo("./projekte").GetDirectories())) - { - projekte.Add(projekt.Name); - } - - foreach (string t in projekte) - { - Dictionary> SanObjekte = new Dictionary>(); - - - string filepath = Path.Combine("projekte", t, string.Format("{0}.xaml", t)); - if (!File.Exists(filepath)) continue; - tempProjekt = XamlServices.Load(filepath) as KlassenBIB.Projekt; - SanierteObjekte sanierteObjekte = new SanierteObjekte(); - sanierteObjekte.Projektnummer = tempProjekt.Nummer; - foreach (var d in tempProjekt.Objekte) - { - foreach(var s in d.Sanierung) - { - if(s is InlinerSanierung) - { - var x = s as InlinerSanierung; - if (x.LinerTyp != null && x.LinerTyp.Contains("Multiflex")) - break; - else - { - if ((WerkseitigImprägniert)x.Imprägnierungsbericht == null) continue; - WerkseitigImprägniert werkseitig = (WerkseitigImprägniert)x.Imprägnierungsbericht; - - - if(SanObjekte.ContainsKey(werkseitig.Imprägniernummer)) { - SanObjekte[werkseitig.Imprägniernummer].Add(d); - } - else - { - List ob = new List(); - ob.Add(d); - SanObjekte.Add(werkseitig.Imprägniernummer, ob); - } - } - } - } - } - - - - if (SanObjekte.Count > 0) - { - - } - //Debugger.Break(); - } - } + public static void MakeNewDatabaseSystem() { @@ -110,27 +53,19 @@ namespace Database //var x = Datenbank.Instance.MainDatenbank.AuftraggeberListe; } - Datenbank.Instance.TeufelDB.Auftraggeber = Datenbank.Instance.MainDatenbank.AuftraggeberListe; - Datenbank.Instance.TeufelDB.Imprägnierungen = Datenbank.Instance.MainDatenbank.ImprägnierBerichtListe; - - ClearImprägnierungen(); - GenerateNewBeziehungen(); + + + } - static void ClearImprägnierungen() - { - foreach(var x in Datenbank.Instance.TeufelDB.Imprägnierungen) - { - if (x.MitLinerSanierteObjekte == null) continue; - x.MitLinerSanierteObjekte.Clear(); - } - } + - static void GenerateNewBeziehungen() + 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) @@ -156,6 +91,7 @@ namespace Database public static void TransferAuftraggeber() { + /* List projekte = new List(); List auftraggebers = new List(); Projekt tempProjekt = null; @@ -182,6 +118,7 @@ namespace Database Datenbank.Instance.MainDatenbank.AuftraggeberListe.Add(tempProjekt.Auftraggeber); } + */ } } } diff --git a/KlassenBIB/DB.cs b/KlassenBIB/DB.cs index 0e1fad9..c093c9a 100644 --- a/KlassenBIB/DB.cs +++ b/KlassenBIB/DB.cs @@ -8,12 +8,16 @@ namespace KlassenBIB { public class DB { + public int DatabaseVersion { get; set; } public Collections.Projekte Projekte { get; set; } public Collections.AuftraggeberList Auftraggeber { get; set; } public Collections.ImprägnierBericht Imprägnierungen { get; set; } + + public DB() { + DatabaseVersion = 1; Projekte = new Collections.Projekte(); Auftraggeber = new Collections.AuftraggeberList(); Imprägnierungen = new Collections.ImprägnierBericht(); diff --git a/KlassenBIB/Sanierung/Renovation/WerkseitigImprägniert.cs b/KlassenBIB/Sanierung/Renovation/WerkseitigImprägniert.cs index 2fac02e..703e577 100644 --- a/KlassenBIB/Sanierung/Renovation/WerkseitigImprägniert.cs +++ b/KlassenBIB/Sanierung/Renovation/WerkseitigImprägniert.cs @@ -13,18 +13,10 @@ namespace KlassenBIB public bool LagerungKorrekt { get; set; } public string LängeCode { get; set; } public decimal LinerLänge { get; set; } - public List MitLinerSanierteObjekte { get; set; } - public override string ToString() { return string.Format("{0} ({1})",Imprägniernummer,DN); } } - - public class SanierteObjekte - { - public string Projektnummer { get; set; } - public List Objekt { get; set; } - } } diff --git a/SanSystem/FrmAuftraggeberEdit.cs b/SanSystem/FrmAuftraggeberEdit.cs index 86ba40a..0dfac06 100644 --- a/SanSystem/FrmAuftraggeberEdit.cs +++ b/SanSystem/FrmAuftraggeberEdit.cs @@ -27,7 +27,7 @@ namespace SanSystem { InitializeComponent(); this.auftraggeber = auftraggeber; - cb_auftraggeberlist.DataSource = Datenbank.Instance.MainDatenbank.AuftraggeberListe; + cb_auftraggeberlist.DataSource = Datenbank.Instance.TeufelDB.Auftraggeber; //Datenbank.Instance.MainDatenbank.AuftraggeberListe; MakeBindings(); } diff --git a/SanSystem/FrmLinerReste.cs b/SanSystem/FrmLinerReste.cs index 5222625..3058a61 100644 --- a/SanSystem/FrmLinerReste.cs +++ b/SanSystem/FrmLinerReste.cs @@ -18,17 +18,18 @@ namespace SanSystem private void BuildListe() { list_liner.Items.Clear(); - foreach (WerkseitigImprägniert linerTruhe in Datenbank.Instance.MainDatenbank.ImprägnierBerichtListe) + foreach (WerkseitigImprägniert linerTruhe in Database.Datenbank.Instance.TeufelDB.Imprägnierungen) { double verbrauch = 0; decimal rest = linerTruhe.LinerLänge; if (linerTruhe.NochVorhanden == false) continue; + /* if (linerTruhe.MitLinerSanierteObjekte != null) { linerTruhe.MitLinerSanierteObjekte.ForEach(x => x.Objekt.ForEach(d => verbrauch += d.Haltungslaenge)); rest -= Convert.ToDecimal(verbrauch); } - + */ string listoutput = string.Format("({0}) DN: {1} G: {2} R: {3}", linerTruhe.Imprägniernummer, linerTruhe.DN, linerTruhe.LinerLänge, rest); list_liner.Items.Add(listoutput); diff --git a/SanSystem/UCWerkseitigImprägniert.cs b/SanSystem/UCWerkseitigImprägniert.cs index b32c1f4..642e4ac 100644 --- a/SanSystem/UCWerkseitigImprägniert.cs +++ b/SanSystem/UCWerkseitigImprägniert.cs @@ -30,9 +30,9 @@ namespace SanSystem private void UCWerkseitigImprägniert_Load(object sender, EventArgs e) { - lst_imprägnierberichte.DataSource = Database.Datenbank.Instance.MainDatenbank.ImprägnierBerichtListe; + lst_imprägnierberichte.DataSource = Database.Datenbank.Instance.TeufelDB.Imprägnierungen; int index = 0; - foreach(WerkseitigImprägniert x in Database.Datenbank.Instance.MainDatenbank.ImprägnierBerichtListe.ToList()) + foreach(WerkseitigImprägniert x in Database.Datenbank.Instance.TeufelDB.Imprägnierungen.ToList()) { WerkseitigImprägniert werkseitig = (WerkseitigImprägniert)inliner.Imprägnierungsbericht; if (werkseitig != null) @@ -45,14 +45,14 @@ namespace SanSystem } index++; } - if (index > Database.Datenbank.Instance.MainDatenbank.ImprägnierBerichtListe.Capacity) index = 0; + if (index > Database.Datenbank.Instance.TeufelDB.Imprägnierungen.Capacity) index = 0; lst_imprägnierberichte.SelectedIndex = index; } private void Btn_save_Click(object sender, EventArgs e) { - + /* WerkseitigImprägniert orginalImprägnier = null; WerkseitigImprägniert imprignier = (WerkseitigImprägniert)lst_imprägnierberichte.SelectedItem; if (imprignier == null) @@ -61,7 +61,7 @@ namespace SanSystem return; } if (inliner.Imprägnierungsbericht != imprignier && inliner.Imprägnierungsbericht != null) - orginalImprägnier = Datenbank.Instance.MainDatenbank.ImprägnierBerichtListe.FindLast(x => x.Imprägniernummer.Equals((inliner.Imprägnierungsbericht as WerkseitigImprägniert).Imprägniernummer)); + orginalImprägnier = Database.Datenbank.Instance.TeufelDB.Imprägnierungen.FindLast(x => x.Imprägniernummer.Equals((inliner.Imprägnierungsbericht as WerkseitigImprägniert).Imprägniernummer)); inliner.Imprägnierungsbericht = imprignier; @@ -104,6 +104,7 @@ namespace SanSystem if(neu) imprignier.MitLinerSanierteObjekte.Add(objekt); } + */ } } } diff --git a/SanSystem/frmImprägnierBerichtList.cs b/SanSystem/frmImprägnierBerichtList.cs index 6029717..52baba8 100644 --- a/SanSystem/frmImprägnierBerichtList.cs +++ b/SanSystem/frmImprägnierBerichtList.cs @@ -18,14 +18,14 @@ namespace SanSystem { InitializeComponent(); lst_imprägnierBerichtNr.DataSource = null; - List imprägnierberichte = Database.Datenbank.Instance.MainDatenbank.ImprägnierBerichtListe.Select(x => x.Imprägniernummer).ToList(); + List imprägnierberichte = Database.Datenbank.Instance.TeufelDB.Imprägnierungen.Select(x => x.Imprägniernummer).ToList(); lst_imprägnierBerichtNr.DataSource = imprägnierberichte; } private void Btn_add_Click(object sender, EventArgs e) { WerkseitigImprägniert werkseitigImprägnierts = new WerkseitigImprägniert(); - Database.Datenbank.Instance.MainDatenbank.ImprägnierBerichtListe.Add(werkseitigImprägnierts); + Database.Datenbank.Instance.TeufelDB.Imprägnierungen.Add(werkseitigImprägnierts); frmImprägnierBerichtEdit frmImprägnierBerichtEdit = new frmImprägnierBerichtEdit(werkseitigImprägnierts); frmImprägnierBerichtEdit.FormClosed += FrmImprägnierBerichtEdit_FormClosed; frmImprägnierBerichtEdit.ShowDialog(); @@ -36,7 +36,7 @@ namespace SanSystem if ((sender as ListBox).SelectedItem == null) return; string selectedImprägnierung = (sender as ListBox).SelectedItem.ToString(); if (selectedImprägnierung == null) return; - WerkseitigImprägniert imprägnierung = Database.Datenbank.Instance.MainDatenbank.ImprägnierBerichtListe.Find(x => x.Imprägniernummer.Equals(selectedImprägnierung)); + WerkseitigImprägniert imprägnierung = Database.Datenbank.Instance.TeufelDB.Imprägnierungen.Find(x => x.Imprägniernummer.Equals(selectedImprägnierung)); if (imprägnierung == null) return; frmImprägnierBerichtEdit frmImprägnierBerichtEdit = new frmImprägnierBerichtEdit(imprägnierung); @@ -52,7 +52,7 @@ namespace SanSystem private void FrmImprägnierBerichtEdit_FormClosed(object sender, FormClosedEventArgs e) { lst_imprägnierBerichtNr.DataSource = null; - List imprägnierberichte = Database.Datenbank.Instance.MainDatenbank.ImprägnierBerichtListe.Select(x => x.Imprägniernummer).ToList(); + List imprägnierberichte = Database.Datenbank.Instance.TeufelDB.Imprägnierungen.Select(x => x.Imprägniernummer).ToList(); lst_imprägnierBerichtNr.DataSource = imprägnierberichte; } } diff --git a/SanSystem/frmProjektList.cs b/SanSystem/frmProjektList.cs index 77d55da..c455f2d 100644 --- a/SanSystem/frmProjektList.cs +++ b/SanSystem/frmProjektList.cs @@ -52,14 +52,8 @@ namespace SanSystem { string projekt = (string)lb_projekte.SelectedItem; if (projekt == null) return; - /* - if(Database.Datenbank.Instance.projekt != projekt) - { - Database.Datenbank.Instance.SaveProjekt(); - Global.Instance.ProjektNummer = projekt; - Database.Datenbank.Instance.LoadProjekt(projekt); - } - */ + Global.Instance.ProjektNummer = projekt; + Database.Datenbank.Instance.LoadProjekt(projekt); this.Close(); } }