Bewertungssystem angefangen

This commit is contained in:
2023-09-11 20:39:23 +02:00
parent f41cfff5c0
commit 560ac6246b
32 changed files with 9504 additions and 51 deletions

View File

@@ -0,0 +1,7 @@
namespace dcnsanplanung.bewertung
{
public class Class1
{
}
}

View File

@@ -0,0 +1,118 @@
using System;
using System.Collections.Generic;
using System.Net.Http.Headers;
using System.Text;
namespace dcnsanplanung.bewertung.M149_3
{
public enum CalculateMethods
{
Dichtheit = 1,
Standsicherheit = 2,
Betriebsicherheit = 4
}
public enum Geltungsbereich
{
biegesteif,
biegeweich
}
public abstract class AbstractCode
{
private CalculateMethods VerfügbareMethoden;
string beschreibung;
protected string Ch1 = "";
protected string Ch2 = "";
protected float Q1;
protected float Q2;
protected int DN;
public AbstractCode(string beschreibung, CalculateMethods calculateMethods, int DN = -1)
{
this.beschreibung = beschreibung;
this.VerfügbareMethoden = calculateMethods;
}
protected virtual int CalculateSK()
{
return 6;
}
protected virtual int CalculateDK()
{
return 6;
}
protected virtual int CalculateBK()
{
return 6;
}
public virtual void WriteCH1(string Ch1)
{
this.Ch1 = Ch1;
}
public virtual void WriteCH2(string Ch2)
{
this.Ch2 = Ch2;
}
public virtual void WriteQ1(float Q1)
{
this.Q1 = Q1;
}
public virtual void WriteQ2(float Q2)
{
this.Q2 = Q2;
}
}
public class BAA : AbstractCode
{
Geltungsbereich geltungsbereich;
public BAA(Geltungsbereich geltungsbereich) : base("Verformung", CalculateMethods.Standsicherheit | CalculateMethods.Betriebsicherheit)
{
this.geltungsbereich = geltungsbereich;
}
protected override int CalculateSK()
{
switch(geltungsbereich)
{
case Geltungsbereich.biegesteif:
{
switch (Q1)
{
case >= 7: return 0;
case >= 4: return 1;
case >= 3: return 2;
case >= 1: return 3;
default: return 4;
}
}
case Geltungsbereich.biegeweich:
{
switch (Q1)
{
case >= 15: return 0;
case >= 10: return 1;
case >= 6: return 2;
case >= 2: return 3;
default: return 4;
}
}
default: return 6;
}
}
protected override int CalculateBK()
{
switch(Q1)
{
case >= 50: return 0;
case >= 40: return 1;
case >= 25: return 2;
case >= 10: return 3;
default: return 4;
}
}
}
}

View File

@@ -0,0 +1,109 @@
namespace dcnsanplanung.bewertung.M149_3
{
public class BAB : AbstractCode
{
public BAB() : base("Rissbildung", CalculateMethods.Standsicherheit | CalculateMethods.Dichtheit)
{
}
protected override int CalculateDK()
{
switch(Ch1)
{
case "B":
case "C":
{
switch(Ch2)
{
case "A":
case "B":
case "C":
case "D":
case "E":
{
switch(Q1)
{
case >= 3: return 1;
case >= 2: return 2;
default: return 3;
}
}
}
}
break;
}
return 10;
}
protected override int CalculateSK()
{
switch(Ch1)
{
case "A": return 4;
case "B":
case "C":
{
switch(Ch2)
{
case "A":
{
switch(DN)
{
case <= 300:
{
switch (Q1)
{
case >= 3: return 0;
case >= 2: return 1;
case >= 1: return 2;
case >= 0.5f: return 3;
default: return 5;
}
}
case <= 500:
{
switch (Q1)
{
case >= 5: return 0;
case >= 3: return 1;
case >= 2: return 2;
case >= 1: return 3;
default: return 4;
}
}
case <= 700:
{
switch (Q1)
{
case >= 8: return 0;
case >= 4: return 1;
case >= 3: return 2;
case >= 2: return 3;
default: return 4;
}
}
default:
{
switch(Q1)
{
case >= 8: return 0;
case >= 5: return 1;
case >= 3: return 2;
case >= 1: return 3;
default: return 4;
}
}
}
}
case "B": return 4;
default: return 7;
}
}
default: return 7;
}
}
}
}

View File

@@ -0,0 +1,38 @@
namespace dcnsanplanung.bewertung.M149_3
{
public class BAC : AbstractCode
{
public BAC() : base("Rohrbruch", CalculateMethods.Dichtheit | CalculateMethods.Standsicherheit | CalculateMethods.Betriebsicherheit)
{
}
protected override int CalculateBK()
{
switch (Ch1)
{
case "A": return 7;
case "C": return 0;
}
return 10;
}
protected override int CalculateSK()
{
switch(Ch1)
{
case "A": return 7;
case "B": return 7;
default: return 0;
}
}
protected override int CalculateDK()
{
switch (Ch1)
{
case "A":
case "B":
return 1;
default: return 0;
}
}
}
}

View File

@@ -0,0 +1,10 @@
namespace dcnsanplanung.bewertung.M149_3
{
public class BAD : AbstractCode
{
public BAD() : base("Defektes Mauerwerk", CalculateMethods.Dichtheit | CalculateMethods.Standsicherheit | CalculateMethods.Betriebsicherheit)
{
throw new NotImplementedException();
}
}
}

View File

@@ -0,0 +1,10 @@
namespace dcnsanplanung.bewertung.M149_3
{
public class BAE : AbstractCode
{
public BAE() : base("Fehlender Mörtel", CalculateMethods.Dichtheit | CalculateMethods.Standsicherheit)
{
throw new NotImplementedException();
}
}
}

View File

@@ -0,0 +1,10 @@
namespace dcnsanplanung.bewertung.M149_3
{
public class BAF : AbstractCode
{
public BAF() : base("Oberflächenschaden", CalculateMethods.Dichtheit | CalculateMethods.Standsicherheit | CalculateMethods.Betriebsicherheit)
{
throw new NotImplementedException();
}
}
}

View File

@@ -0,0 +1,10 @@
namespace dcnsanplanung.bewertung.M149_3
{
public class BAG : AbstractCode
{
public BAG() : base("Einragender Anschluss", CalculateMethods.Betriebsicherheit)
{
throw new NotImplementedException ();
}
}
}

View File

@@ -0,0 +1,10 @@
namespace dcnsanplanung.bewertung.M149_3
{
public class BAH : AbstractCode
{
public BAH() : base("Schadhafter Anschluss", CalculateMethods.Dichtheit | CalculateMethods.Standsicherheit | CalculateMethods.Betriebsicherheit)
{
throw new NotImplementedException () ;
}
}
}

View File

@@ -0,0 +1,10 @@
namespace dcnsanplanung.bewertung.M149_3
{
public class BAI : AbstractCode
{
public BAI() : base("Einragendes Dichtungsmaterial", CalculateMethods.Dichtheit | CalculateMethods.Betriebsicherheit)
{
throw new NotImplementedException () ;
}
}
}

View File

@@ -0,0 +1,9 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
</Project>