From c43f27eea0565dc44f6954e737e9e6f6c2e8be96 Mon Sep 17 00:00:00 2001 From: Husky Date: Sat, 30 Jun 2018 22:41:02 +0200 Subject: [PATCH] =?UTF-8?q?Mehrere=20San=20eintr=C3=A4ge=20k=C3=B6nnen=20e?= =?UTF-8?q?rstellt=20werden?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- KlassenBIB/Inspektionsobjekt.cs | 5 ++-- KlassenBIB/KlassenBIB.csproj | 1 + KlassenBIB/Projekt.cs | 2 +- KlassenBIB/SanierungCollection.cs | 12 ++++++++ KlassenBIBTests/InspektionsobjektTests.cs | 4 +-- SanSystem/frmObjektEdit.cs | 34 +++++++++++++---------- SanSystem/frmObjekteList.cs | 2 +- 7 files changed, 40 insertions(+), 20 deletions(-) create mode 100644 KlassenBIB/SanierungCollection.cs diff --git a/KlassenBIB/Inspektionsobjekt.cs b/KlassenBIB/Inspektionsobjekt.cs index 9047c94..17ce84c 100644 --- a/KlassenBIB/Inspektionsobjekt.cs +++ b/KlassenBIB/Inspektionsobjekt.cs @@ -7,7 +7,7 @@ using System.Windows.Markup; namespace KlassenBIB { - [ContentProperty("Schadenskuerzeln")] + [ContentProperty("Sanierung")] public class Inspektionsobjekt { private string strasseName = "none"; @@ -25,11 +25,12 @@ namespace KlassenBIB public DateTime HaltungGemessen { get; set; } public InspektionskuerzelnCollection Schadenskuerzeln { get; private set; } - public Sanierung Sanierung { get;set; } + public SanierungCollection Sanierung { get;set; } public Inspektionsobjekt() { Schadenskuerzeln = new InspektionskuerzelnCollection(); + Sanierung = new SanierungCollection(); if (HaltungGemessen <= DateTime.MinValue || HaltungGemessen >= DateTime.MaxValue) HaltungGemessen = DateTime.Now; } } diff --git a/KlassenBIB/KlassenBIB.csproj b/KlassenBIB/KlassenBIB.csproj index d98d829..53d1c5f 100644 --- a/KlassenBIB/KlassenBIB.csproj +++ b/KlassenBIB/KlassenBIB.csproj @@ -50,6 +50,7 @@ + \ No newline at end of file diff --git a/KlassenBIB/Projekt.cs b/KlassenBIB/Projekt.cs index 3882684..215e91f 100644 --- a/KlassenBIB/Projekt.cs +++ b/KlassenBIB/Projekt.cs @@ -8,7 +8,7 @@ using System.Windows.Markup; [assembly: XmlnsDefinition("http://schemas.cosysda.de/sanVerwaltung/xaml","KlassenBIB")] namespace KlassenBIB { - [ContentProperty("Adressen")] + [ContentProperty("Objekte")] public class Projekt { public string Nummer { get; set; } diff --git a/KlassenBIB/SanierungCollection.cs b/KlassenBIB/SanierungCollection.cs new file mode 100644 index 0000000..31e1547 --- /dev/null +++ b/KlassenBIB/SanierungCollection.cs @@ -0,0 +1,12 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace KlassenBIB +{ + public class SanierungCollection : List + { + } +} diff --git a/KlassenBIBTests/InspektionsobjektTests.cs b/KlassenBIBTests/InspektionsobjektTests.cs index 968e3d1..901e7db 100644 --- a/KlassenBIBTests/InspektionsobjektTests.cs +++ b/KlassenBIBTests/InspektionsobjektTests.cs @@ -55,7 +55,7 @@ namespace KlassenBIB.Tests inliner.DatumKalibrierung = DateTime.Now; inliner.HDReinigungDatum = DateTime.Now; inliner.SanierungsDatum = DateTime.Now; - inspektionsobjekt.Sanierung = inliner; + inliner = inliner; //inliner.InspektionsObjekt = inspektionsobjekt; abwasserTechnischeAnlageCollection.Add(inspektionsobjekt); @@ -91,7 +91,7 @@ namespace KlassenBIB.Tests sanierung.WasserhaltungEingerichtet = true; sanierung.DatumKalibrierung = DateTime.Now; - inspektionsobjekt.Sanierung = sanierung; + inliner = sanierung; //Assert.AreEqual(sanierung.GesamtHarzBedarf, 18m); diff --git a/SanSystem/frmObjektEdit.cs b/SanSystem/frmObjektEdit.cs index 48317ba..bf1d3ec 100644 --- a/SanSystem/frmObjektEdit.cs +++ b/SanSystem/frmObjektEdit.cs @@ -27,8 +27,14 @@ namespace SanSystem InitializeComponent(); btn_close.Text = Global.Instance.language.Labels["btn_close"]; this.inspektionsobjekt = inspektion; - if (inspektion.Sanierung == null) inspektion.Sanierung = new InlinerSanierung(); - this.inliner = (InlinerSanierung)inspektion.Sanierung; + foreach(Sanierung san in inspektion.Sanierung) + { + if (san is InlinerSanierung) inliner = (InlinerSanierung)san; + } + if (inliner == null) inliner = new InlinerSanierung(); + inspektionsobjekt.Sanierung.Add(inliner); + //if (inspektion.Sanierung == null) inspektion.Sanierung = new InlinerSanierung(); + //this.inliner = (InlinerSanierung)inspektion.Sanierung; } private void frmObjektEdit_Load(object sender, EventArgs e) @@ -43,7 +49,7 @@ namespace SanSystem txt_dn.DataBindings.Add(new Binding("Text", inspektionsobjekt, "Kanalrohrweite")); txt_pro_nr.DataBindings.Add(new Binding("Text", inspektionsobjekt, "ProjektNummer")); dt_haltunggemessen_datum.DataBindings.Add(new Binding("Value", inspektionsobjekt, "HaltungGemessen")); - cbb_wetter.DataBindings.Add(new Binding("Text", inspektionsobjekt.Sanierung, "Wetter")); + cbb_wetter.DataBindings.Add(new Binding("Text", inliner, "Wetter")); } private void tabControl1_SelectedIndexChanged(object sender, EventArgs e) @@ -58,11 +64,11 @@ namespace SanSystem cb_wasserhaltung.DataBindings.Clear(); txt_temp_aussen.DataBindings.Clear(); txt_temp_kanal.DataBindings.Clear(); - cb_genehmigung.DataBindings.Add(new Binding("Checked", inspektionsobjekt.Sanierung, "genehmigungVorhanden")); - cb_stvo.DataBindings.Add(new Binding("Checked", inspektionsobjekt.Sanierung, "sTVOAbsicherung")); - cb_wasserhaltung.DataBindings.Add(new Binding("Checked", inspektionsobjekt.Sanierung, "wasserhaltungEingerichtet")); - txt_temp_aussen.DataBindings.Add(new Binding("Text", inspektionsobjekt.Sanierung, "TempAusen",false, DataSourceUpdateMode.OnPropertyChanged)); - txt_temp_kanal.DataBindings.Add(new Binding("Text", inspektionsobjekt.Sanierung, "TempKanal")); + cb_genehmigung.DataBindings.Add(new Binding("Checked", inliner, "genehmigungVorhanden")); + cb_stvo.DataBindings.Add(new Binding("Checked", inliner, "sTVOAbsicherung")); + cb_wasserhaltung.DataBindings.Add(new Binding("Checked", inliner, "wasserhaltungEingerichtet")); + txt_temp_aussen.DataBindings.Add(new Binding("Text", inliner, "TempAusen",false, DataSourceUpdateMode.OnPropertyChanged)); + txt_temp_kanal.DataBindings.Add(new Binding("Text", inliner, "TempKanal")); break; case (int)TabPages.LINERGRUNDLAGEN: txt_walze_distance.DataBindings.Clear(); @@ -72,11 +78,11 @@ namespace SanSystem txt_charge_liner.DataBindings.Clear(); dt_kalibrierdatum.DataBindings.Clear(); - txt_walze_distance.DataBindings.Add(new Binding("Text", inspektionsobjekt.Sanierung, "KalibierWalzenAbstand")); - txt_vakuum.DataBindings.Add(new Binding("Text", inspektionsobjekt.Sanierung, "KalibrierUnterdruck")); - txt_temp_harz.DataBindings.Add(new Binding("Text", inspektionsobjekt.Sanierung, "HarzKalibrierTemperatur")); - txt_charge_harz.DataBindings.Add(new Binding("Text", inspektionsobjekt.Sanierung, "HarzChargenummer")); - txt_charge_liner.DataBindings.Add(new Binding("Text", inspektionsobjekt.Sanierung, "LinerChargenummer")); + txt_walze_distance.DataBindings.Add(new Binding("Text", inliner, "KalibierWalzenAbstand")); + txt_vakuum.DataBindings.Add(new Binding("Text", inliner, "KalibrierUnterdruck")); + txt_temp_harz.DataBindings.Add(new Binding("Text", inliner, "HarzKalibrierTemperatur")); + txt_charge_harz.DataBindings.Add(new Binding("Text", inliner, "HarzChargenummer")); + txt_charge_liner.DataBindings.Add(new Binding("Text", inliner, "LinerChargenummer")); dt_kalibrierdatum.DataBindings.Add(new Binding("Value", inliner, "DatumKalibrierung")); break; } @@ -88,7 +94,7 @@ namespace SanSystem ITemperature temperature = TempCAN.TemperaturBuilder.Temperatur(TempCAN.TemperaturSchnittstellen.TINKERFORGE); double temperatur = temperature.GetTemperatur(); - inspektionsobjekt.Sanierung.TempAusen = temperatur; + inliner.TempAusen = temperatur; //var x = txt_temp_aussen.DataBindings; txt_temp_aussen.Update(); diff --git a/SanSystem/frmObjekteList.cs b/SanSystem/frmObjekteList.cs index 1e26011..088e3bd 100644 --- a/SanSystem/frmObjekteList.cs +++ b/SanSystem/frmObjekteList.cs @@ -172,7 +172,7 @@ namespace SanSystem dGObjekte.Columns["StrasseName"].Visible = false; dGObjekte.Columns["OrtName"].Visible = false; dGObjekte.Columns["Projektnummer"].Visible = false; - dGObjekte.Columns["Sanierung"].Visible = false; + //dGObjekte.Columns["Sanierung"].Visible = false; } private void dGObjekte_CellEndEdit(object sender, DataGridViewCellEventArgs e)