Anzahl wird nun angezeigt in der Spalte

This commit is contained in:
HuskyTeufel
2020-03-12 14:32:51 +01:00
parent f988c6b5fa
commit 2172f11ff8
2 changed files with 72 additions and 5 deletions

View File

@@ -1,4 +1,5 @@
using Database;
using KlassenBIB;
using System;
using System.Collections.Generic;
using System.ComponentModel;
@@ -12,6 +13,17 @@ using System.Windows.Forms;
namespace SanSystem
{
class StrassenContent
{
public string Strassename;
public int AnzahlObjekte;
public int AnzahlFertig;
public override string ToString()
{
return string.Format("{0} ({1} / {2})", Strassename, AnzahlFertig, AnzahlObjekte);
}
}
/// <summary>
///
/// </summary>
@@ -30,8 +42,47 @@ namespace SanSystem
{
lst_strassen.DataSource = null;
List<string> strassen = Datenbank.Instance.loadedProjekt.Objekte.Select(x => x.StrasseName).Distinct().ToList();
//bs.DataSource = strassen;
lst_strassen.DataSource = strassen;
List<string> streets = new List<string>();
List<StrassenContent> strassenContents = new List<StrassenContent>();
foreach (string strassename in strassen)
{
string streetname = string.Empty;
//Anzahl gesamt objekte
IEnumerable<KlassenBIB.Inspektionsobjekt> objekte = Datenbank.Instance.loadedProjekt.Objekte.Where(x => x.StrasseName.Equals(strassename));
int counter = 0;
foreach(var objekt in objekte)
{
bool fertig = false;
foreach(var x in objekt.Sanierung)
{
AbstractSanieren abstractSanieren = (AbstractSanieren)x;
if(abstractSanieren.Fertig == true)
{
fertig = true;
}
else
{
fertig = false;
break;
}
}
if(fertig)
{
counter++;
}
}
//Debugger.Break();
strassenContents.Add(new StrassenContent()
{
Strassename = strassename,
AnzahlObjekte = objekte.Count(),
AnzahlFertig = counter
}) ;
}
lst_strassen.DataSource = strassenContents;
}
private void frmStrassenList_Load(object sender, EventArgs e)
@@ -56,10 +107,11 @@ namespace SanSystem
private void lst_strassen_DoubleClick(object sender, EventArgs e)
{
if ((sender as ListBox).SelectedItem == null) return;
string selectedStreetName = (sender as ListBox).SelectedItem.ToString();
StrassenContent selectedStreetName = ((sender as ListBox).SelectedItem as StrassenContent);
//Debugger.Break();
if (selectedStreetName == null) return;
frmObjekteList frmObjekteList = new frmObjekteList(selectedStreetName);
frmObjekteList frmObjekteList = new frmObjekteList(selectedStreetName.Strassename);
frmObjekteList.MdiParent = this.MdiParent;
frmObjekteList.FormClosed += FrmObjekt_FormClosed;
frmObjekteList.Show();