Sanierungsystem umgeschrieben
This commit is contained in:
@@ -6,19 +6,12 @@ using System.Text;
|
||||
|
||||
namespace Schnittstelle.DWA149_2_2013
|
||||
{
|
||||
class BAA : CodeBeschreibung, IReparatur, IRenovation
|
||||
class BAA : CodeBeschreibung
|
||||
{
|
||||
List<SanierungMassnahme> reparatur = new List<SanierungMassnahme>();
|
||||
List<SanierungMassnahme> renovation = new List<SanierungMassnahme>();
|
||||
|
||||
public BAA(RZustand kuerzel) : base("Verformung",kuerzel)
|
||||
public BAA(RZustand kuerzel) : base("Verformung", kuerzel)
|
||||
{
|
||||
CH1.Add("A", "vertikal");
|
||||
CH1.Add("B", "horizontal");
|
||||
}
|
||||
|
||||
List<SanierungMassnahme> IReparatur.Massnahmen => reparatur;
|
||||
|
||||
List<SanierungMassnahme> IRenovation.Massnahmen => renovation;
|
||||
}
|
||||
}
|
||||
@@ -5,10 +5,8 @@ using System.Collections.Generic;
|
||||
|
||||
namespace Schnittstelle.DWA149_2_2013
|
||||
{
|
||||
class BAB : CodeBeschreibung, IReparatur
|
||||
class BAB : CodeBeschreibung
|
||||
{
|
||||
List<SanierungMassnahme> reparatur = new List<SanierungMassnahme>();
|
||||
|
||||
public BAB(RZustand kuerzel) : base("Rissbildung", kuerzel)
|
||||
{
|
||||
CH1.Add("A", "Oberflächenriss (Haarriss)");
|
||||
@@ -20,13 +18,6 @@ namespace Schnittstelle.DWA149_2_2013
|
||||
CH2.Add("C", "komplexe Rissbildung");
|
||||
CH2.Add("D", "gewundene oder spiralförmige Rissbildung");
|
||||
CH2.Add("E", "sternförmige Rissbildung");
|
||||
|
||||
reparatur.Add(new SanierungMassnahme("anfräsen",100,0));
|
||||
reparatur.Add(new SanierungMassnahme("kurzliner",200, 0));
|
||||
}
|
||||
|
||||
List<SanierungMassnahme> IReparatur.Massnahmen => reparatur;
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
@@ -4,10 +4,8 @@ using System.Collections.Generic;
|
||||
|
||||
namespace Schnittstelle.DWA149_2_2013
|
||||
{
|
||||
class BCA : CodeBeschreibung, IRenovation
|
||||
class BCA : CodeBeschreibung
|
||||
{
|
||||
List<SanierungMassnahme> renovation = new List<SanierungMassnahme>();
|
||||
|
||||
public BCA(RZustand kuerzel) : base("Anschluss", kuerzel)
|
||||
{
|
||||
CH1.Add("A", "Abzweig");
|
||||
@@ -22,9 +20,6 @@ namespace Schnittstelle.DWA149_2_2013
|
||||
CH2.Add("A", "offen");
|
||||
CH2.Add("B", "geschlossen");
|
||||
|
||||
renovation.Add(new SanierungMassnahme("Einmessen, Öffnen, Hut", 800, -1));
|
||||
}
|
||||
|
||||
List<SanierungMassnahme> IRenovation.Massnahmen => renovation;
|
||||
}
|
||||
}
|
||||
@@ -4,18 +4,13 @@ using System.Collections.Generic;
|
||||
|
||||
namespace Schnittstelle.DWA149_2_2013
|
||||
{
|
||||
class BCE : CodeBeschreibung, IRenovation
|
||||
class BCE : CodeBeschreibung
|
||||
{
|
||||
List<SanierungMassnahme> renovation = new List<SanierungMassnahme>();
|
||||
|
||||
public BCE(RZustand kuerzel) : base("Endknoten", kuerzel)
|
||||
{
|
||||
renovation.Add(new SanierungMassnahme("Schlauchliner", 100, 200));
|
||||
renovation.Add(new SanierungMassnahme("Schlauchliner", 105, 250));
|
||||
renovation.Add(new SanierungMassnahme("Schlauchliner", 120, 300));
|
||||
renovation.Add(new SanierungMassnahme("Schlauchliner", 130, 400));
|
||||
renovation.Add(new SanierungMassnahme("Schlauchliner", 140, 500));
|
||||
renovation.Add(new SanierungMassnahme("Schlauchliner", 150, 600));
|
||||
|
||||
}
|
||||
|
||||
public List<SanierungMassnahme> Massnahmen => renovation;
|
||||
|
||||
@@ -144,13 +144,20 @@ namespace Schnittstelle.Export
|
||||
worksheet.Range[row + j, 7].Text = code.KodeDescription;
|
||||
worksheet.Range[row + j, 8].Text = code.Streckenschaden;
|
||||
|
||||
IRenovation renovation = null;
|
||||
if (code.Renovation is IRenovation)
|
||||
|
||||
List<SanierungMassnahme> Massnahmen;
|
||||
|
||||
|
||||
|
||||
if (sanArt.Massnahmen.TryGetValue(code.Inspektionskode, out Massnahmen))
|
||||
{
|
||||
List<SanierungMassnahme> k = code.Renovation.Massnahmen;
|
||||
SanierungMassnahme s = k.Find(x => haltung.Inspektionsdaten.OptischeInspektion[0].Rohrleitung.Grunddaten.Profilbreite >= x.DN);
|
||||
worksheet.Range[row + j, 9].Text = s.Beschreibung;
|
||||
if (s.Beschreibung.Equals("Schlauchliner"))
|
||||
var imass = Massnahmen.Find(x =>
|
||||
haltung.Inspektionsdaten.OptischeInspektion[0].Rohrleitung.Grunddaten.Profilbreite >=
|
||||
x.DN);
|
||||
|
||||
worksheet.Range[row + j, 9].Text = imass.Beschreibung;
|
||||
|
||||
if (imass.Beschreibung.Equals("Schlauchliner"))
|
||||
{
|
||||
double zuschlag = 1;
|
||||
double tmpLaenge = Convert.ToDouble(haltung.Stammdaten.Kante.Laenge);
|
||||
@@ -158,24 +165,13 @@ namespace Schnittstelle.Export
|
||||
zuschlag = 1.3;
|
||||
if (tmpLaenge < 15)
|
||||
zuschlag = 1.5;
|
||||
worksheet.Range[row + j, 10].Number = (s.Kosten*zuschlag) * tmpLaenge;
|
||||
worksheet.Range[row + j, 10].Number = (imass.Kosten*zuschlag) * tmpLaenge;
|
||||
|
||||
}
|
||||
else
|
||||
worksheet.Range[row + j, 10].Number = s.Kosten;
|
||||
//Debugger.Break();
|
||||
worksheet.Range[row + j, 10].Number = imass.Kosten;
|
||||
}
|
||||
|
||||
//Debugger.Break();
|
||||
|
||||
/*Tuple<string, double> d;
|
||||
|
||||
if (sanArt.Sanierungen.TryGetValue(code.Inspektionskode, out d))
|
||||
{
|
||||
worksheet.Range[row + j, 9].Text = d.Item1;
|
||||
worksheet.Range[row + j, 10].Number = d.Item2;
|
||||
}
|
||||
*/
|
||||
row++;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -33,8 +33,6 @@ namespace Schnittstelle.Import.XML.v2013.Model
|
||||
string kommentar;
|
||||
Klassifizierung? klassifizierung;
|
||||
string kodeDescription;
|
||||
IReparatur? reparatur;
|
||||
IRenovation? renovation;
|
||||
|
||||
public decimal Station { get => station; set => station = value; }
|
||||
public string Inspektionskode { get => inspektionskode; set => inspektionskode = value; }
|
||||
@@ -50,7 +48,5 @@ namespace Schnittstelle.Import.XML.v2013.Model
|
||||
public string Kommentar { get => kommentar; set => kommentar = value; }
|
||||
public Klassifizierung? Klassifizierung { get => klassifizierung; set => klassifizierung = value; }
|
||||
public string KodeDescription { get => kodeDescription; set => kodeDescription = value; }
|
||||
public IReparatur Reparatur { get => reparatur; set => reparatur = value; }
|
||||
public IRenovation Renovation { get => renovation; set => renovation = value; }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -331,8 +331,6 @@ namespace Schnittstelle.Import.XML.v2013
|
||||
ICodeBeschreibung codedescription = factory.GetCodeBeschreibung(rZustand);
|
||||
|
||||
rZustand.KodeDescription = codedescription.GetBeschreibung;
|
||||
if (codedescription is IRenovation) rZustand.Renovation = (IRenovation)codedescription;
|
||||
if(codedescription is IReparatur) rZustand.Reparatur = (IReparatur)codedescription;
|
||||
|
||||
result.Add(rZustand);
|
||||
}
|
||||
|
||||
@@ -3,34 +3,6 @@ using System.Collections.Generic;
|
||||
|
||||
namespace Schnittstelle.Sanierung
|
||||
{
|
||||
public interface IReparatur
|
||||
{
|
||||
List<SanierungMassnahme> Massnahmen { get; }
|
||||
}
|
||||
|
||||
public interface IRenovation
|
||||
{
|
||||
List<SanierungMassnahme> Massnahmen { get; }
|
||||
}
|
||||
|
||||
|
||||
|
||||
public class SanierungMassnahme
|
||||
{
|
||||
string beschreibung = string.Empty;
|
||||
double kosten = double.MinValue;
|
||||
int dn = 0;
|
||||
|
||||
public string Beschreibung { get => beschreibung; }
|
||||
public double Kosten { get => kosten; }
|
||||
public int DN { get => dn; }
|
||||
|
||||
public SanierungMassnahme(string beschreibung, double kosten, int dn)
|
||||
{
|
||||
this.beschreibung = beschreibung;
|
||||
this.kosten = kosten;
|
||||
this.dn = dn;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -6,11 +6,37 @@ using System.Text;
|
||||
namespace Schnittstelle.Sanierung
|
||||
{
|
||||
|
||||
public class SanierungMassnahme
|
||||
{
|
||||
private string begrenzung = string.Empty;
|
||||
string beschreibung = string.Empty;
|
||||
double kosten = double.MinValue;
|
||||
int dn = 0;
|
||||
|
||||
public string Beschreibung { get => beschreibung; }
|
||||
public string Begrenzung { get => begrenzung; }
|
||||
public double Kosten { get => kosten; }
|
||||
public int DN { get => dn; }
|
||||
|
||||
public SanierungMassnahme(string beschreibung, double kosten, int dn,string begrenzung = "-:-")
|
||||
{
|
||||
this.beschreibung = beschreibung;
|
||||
this.kosten = kosten;
|
||||
this.dn = dn;
|
||||
this.begrenzung = begrenzung;
|
||||
}
|
||||
}
|
||||
|
||||
public abstract class Sanierungart
|
||||
{
|
||||
string sanierungsbezeichnung = string.Empty;
|
||||
public string Sanierungsbezeichnung { get => sanierungsbezeichnung; }
|
||||
public Dictionary<string, Tuple<string, double>> Sanierungen = new Dictionary<string, Tuple<string, double>>();
|
||||
|
||||
protected Dictionary<string, List<SanierungMassnahme>> massnahmen =
|
||||
new Dictionary<string, List<SanierungMassnahme>>();
|
||||
|
||||
public Dictionary<string, List<SanierungMassnahme>> Massnahmen => massnahmen;
|
||||
public Sanierungart(string art)
|
||||
{
|
||||
sanierungsbezeichnung = art;
|
||||
@@ -28,9 +54,31 @@ namespace Schnittstelle.Sanierung
|
||||
|
||||
public class Renovation : Sanierungart
|
||||
{
|
||||
|
||||
public Renovation() : base("Renovationsverfahren")
|
||||
{
|
||||
BCE();
|
||||
}
|
||||
|
||||
void BCA()
|
||||
{
|
||||
List<SanierungMassnahme> bca = new List<SanierungMassnahme>();
|
||||
bca.Add(new SanierungMassnahme("Einmessen",10,0,"BCA:-:A"));
|
||||
bca.Add(new SanierungMassnahme("Öffnen",100,0,"BCA:-:A"));
|
||||
bca.Add(new SanierungMassnahme("Hut",380,0,"BCA:-:A"));
|
||||
}
|
||||
void BCE()
|
||||
{
|
||||
List<SanierungMassnahme> bce = new List<SanierungMassnahme>();
|
||||
bce.Add(new SanierungMassnahme("Schlauchliner",100,200));
|
||||
bce.Add(new SanierungMassnahme("Schlauchliner",105,250));
|
||||
bce.Add(new SanierungMassnahme("Schlauchliner",110,300));
|
||||
bce.Add(new SanierungMassnahme("Schlauchliner",120,400));
|
||||
bce.Add(new SanierungMassnahme("Schlauchliner",130,500));
|
||||
bce.Add(new SanierungMassnahme("Schlauchliner",140,600));
|
||||
|
||||
|
||||
massnahmen.Add("BCE", bce);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user