using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Data; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using KlassenBIB; namespace SanSystem { public partial class UCWerkseitigImprägniert : UserControl { InlinerSanierung inliner; public UCWerkseitigImprägniert() { InitializeComponent(); } public UCWerkseitigImprägniert(InlinerSanierung inliner) { InitializeComponent(); this.inliner = inliner; } private void UCWerkseitigImprägniert_Load(object sender, EventArgs e) { lst_imprägnierberichte.DataSource = Database.Datenbank.Instance.MainDatenbank.ImprägnierBerichtListe; int index = 0; foreach(WerkseitigImprägniert x in Database.Datenbank.Instance.MainDatenbank.ImprägnierBerichtListe.ToList()) { WerkseitigImprägniert werkseitig = (WerkseitigImprägniert)inliner.Imprägnierungsbericht; if (werkseitig != null) { if (x.Imprägniernummer.Equals(werkseitig.Imprägniernummer)) break; } else { break; } index++; } if (index > Database.Datenbank.Instance.MainDatenbank.ImprägnierBerichtListe.Capacity) index = 0; lst_imprägnierberichte.SelectedIndex = index; } private void Btn_save_Click(object sender, EventArgs e) { WerkseitigImprägniert imprignier = (WerkseitigImprägniert)lst_imprägnierberichte.SelectedItem; if (imprignier == null) { MessageBox.Show("Imprignierung is null"); return; } inliner.Imprägnierungsbericht = (WerkseitigImprägniert)lst_imprägnierberichte.SelectedItem; if(imprignier.MitLinerSanierteObjekte == null) { imprignier.MitLinerSanierteObjekte = new List(); } SanierteObjekte objekt = null; if(imprignier.MitLinerSanierteObjekte.Count > 0) { objekt = imprignier.MitLinerSanierteObjekte.FindLast(x => x.Projektnummer.Equals(Global.Instance.ProjektNummer)); } if (objekt == null) { objekt = new SanierteObjekte(); objekt.Projektnummer = Global.Instance.ProjektNummer; } if(objekt.Objekt == null) objekt.Objekt = new List(); if (objekt.Objekt.FindAll(x => x.Guid.Equals(inliner.Inspektionsobjekt.Guid)).Count < 1) { objekt.Objekt.Add(inliner.Inspektionsobjekt); imprignier.MitLinerSanierteObjekte.Add(objekt); } } } }