Klassifizierungssystem hinzugefügt
This commit is contained in:
@@ -22,7 +22,7 @@ namespace dcnsanplanung.DAL.Services.PostgresqlData
|
|||||||
public async Task<IEnumerable<Schaden>> GetAllByHaltung(string haltungs_guid)
|
public async Task<IEnumerable<Schaden>> GetAllByHaltung(string haltungs_guid)
|
||||||
{
|
{
|
||||||
List<Schaden> result = new List<Schaden>();
|
List<Schaden> result = new List<Schaden>();
|
||||||
string command = "SELECT * FROM " + tableName + " WHERE ref_haltung_guid = @1;";
|
string command = "SELECT * FROM " + tableName + " WHERE ref_haltung_guid = @1 ORDER BY id ASC;";
|
||||||
using (var cmd = new NpgsqlCommand(command, conn))
|
using (var cmd = new NpgsqlCommand(command, conn))
|
||||||
{
|
{
|
||||||
cmd.Parameters.AddWithValue("1", haltungs_guid);
|
cmd.Parameters.AddWithValue("1", haltungs_guid);
|
||||||
@@ -52,16 +52,17 @@ namespace dcnsanplanung.DAL.Services.PostgresqlData
|
|||||||
CH2 = reader.GetString(6),
|
CH2 = reader.GetString(6),
|
||||||
Q1 = reader.GetString(7),
|
Q1 = reader.GetString(7),
|
||||||
Q2 = reader.GetString(8),
|
Q2 = reader.GetString(8),
|
||||||
KD = reader.GetDataTypeOID(9),
|
KD = reader.IsDBNull(9) ? 5 : reader.GetInt32(9),
|
||||||
KB = reader.GetDataTypeOID(10),
|
KB = reader.IsDBNull(10) ? 5 : reader.GetInt32(10),
|
||||||
KS = reader.GetDataTypeOID(11),
|
KS = reader.IsDBNull(11) ? 5 : reader.GetInt32(11),
|
||||||
|
StreckenschadenCode = reader.GetString(12)
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<Schaden> Create(Schaden entity)
|
public async Task<Schaden> Create(Schaden entity)
|
||||||
{
|
{
|
||||||
string command = "INSERT INTO " + tableName + " (guid, ref_haltung_guid, entfernung, hauptcode, ch1,ch2,q1,q2) VALUES " +
|
string command = "INSERT INTO " + tableName + " (guid, ref_haltung_guid, entfernung, hauptcode, ch1,ch2,q1,q2,streckenschaden) VALUES " +
|
||||||
"(@1,@2,@3,@4,@5,@6,@7,@8) RETURNING id";
|
"(@1,@2,@3,@4,@5,@6,@7,@8,@9) RETURNING id";
|
||||||
using(var cmd = new NpgsqlCommand(command,conn))
|
using(var cmd = new NpgsqlCommand(command,conn))
|
||||||
{
|
{
|
||||||
cmd.Parameters.AddWithValue("1", entity.Guid.ToString());
|
cmd.Parameters.AddWithValue("1", entity.Guid.ToString());
|
||||||
@@ -72,6 +73,7 @@ namespace dcnsanplanung.DAL.Services.PostgresqlData
|
|||||||
cmd.Parameters.AddWithValue("6", entity.CH2);
|
cmd.Parameters.AddWithValue("6", entity.CH2);
|
||||||
cmd.Parameters.AddWithValue("7", entity.Q1);
|
cmd.Parameters.AddWithValue("7", entity.Q1);
|
||||||
cmd.Parameters.AddWithValue("8", entity.Q2);
|
cmd.Parameters.AddWithValue("8", entity.Q2);
|
||||||
|
cmd.Parameters.AddWithValue("9", entity.StreckenschadenCode);
|
||||||
//cmd.Parameters.AddWithValue("5", NpgsqlTypes.NpgsqlDbType.Oid, entity.Schadensklasse);
|
//cmd.Parameters.AddWithValue("5", NpgsqlTypes.NpgsqlDbType.Oid, entity.Schadensklasse);
|
||||||
using var reader = await cmd.ExecuteReaderAsync();
|
using var reader = await cmd.ExecuteReaderAsync();
|
||||||
reader.Read();
|
reader.Read();
|
||||||
@@ -80,6 +82,21 @@ namespace dcnsanplanung.DAL.Services.PostgresqlData
|
|||||||
return entity;
|
return entity;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public async Task<Schaden> Update(Schaden entity)
|
||||||
|
{
|
||||||
|
string command = @"UPDATE " + tableName + " SET kd=@1, kb=@2, ks=@3 WHERE id=@4";
|
||||||
|
using (var cmd = new NpgsqlCommand(command, conn))
|
||||||
|
{
|
||||||
|
cmd.Parameters.AddWithValue("1", entity.KD);
|
||||||
|
cmd.Parameters.AddWithValue("2", entity.KB);
|
||||||
|
cmd.Parameters.AddWithValue("3", entity.KS);
|
||||||
|
cmd.Parameters.AddWithValue("4", entity.ID);
|
||||||
|
|
||||||
|
await cmd.ExecuteNonQueryAsync();
|
||||||
|
}
|
||||||
|
return entity;
|
||||||
|
}
|
||||||
|
|
||||||
public async Task<bool> InsertSchadenBulk(List<Schaden> schaden)
|
public async Task<bool> InsertSchadenBulk(List<Schaden> schaden)
|
||||||
{
|
{
|
||||||
foreach(var item in schaden)
|
foreach(var item in schaden)
|
||||||
@@ -88,5 +105,14 @@ namespace dcnsanplanung.DAL.Services.PostgresqlData
|
|||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public async Task<bool> UpdateSchadenBuld(List<Schaden> schaden)
|
||||||
|
{
|
||||||
|
foreach(var item in schaden)
|
||||||
|
{
|
||||||
|
await Update(item);
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
62
dcnsanplanung.bewertung/BewM149.cs
Normal file
62
dcnsanplanung.bewertung/BewM149.cs
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
using dcnsanplanung.bewertung.M149_3;
|
||||||
|
using System.Diagnostics;
|
||||||
|
|
||||||
|
namespace dcnsanplanung.bewertung
|
||||||
|
{
|
||||||
|
public static class BewM149
|
||||||
|
{
|
||||||
|
|
||||||
|
// input Kürzel
|
||||||
|
public static Dictionary<string, int> Klassifiziere(string hauptcode, string ch1, string ch2, string q1, string q2, int dn)
|
||||||
|
{
|
||||||
|
AbstractCode? abstractCode = null;
|
||||||
|
|
||||||
|
Dictionary<string,int> result = new Dictionary<string,int>();
|
||||||
|
|
||||||
|
switch(hauptcode)
|
||||||
|
{
|
||||||
|
case "BAA": abstractCode = new BAA(EGeltungsbereich.biegesteif); break;
|
||||||
|
case "BAB": abstractCode = new BAB(); break;
|
||||||
|
case "BAC": abstractCode = new BAC(); break;
|
||||||
|
case "BAD": abstractCode = new BAD(); break;
|
||||||
|
case "BAE": abstractCode = new BAE(); break;
|
||||||
|
case "BAF": abstractCode = new BAF(); break;
|
||||||
|
case "BAG": abstractCode = new BAG(dn); break;
|
||||||
|
case "BAH": abstractCode = new BAH(); break;
|
||||||
|
case "BAI": abstractCode = new BAI(); break;
|
||||||
|
case "BAJ": abstractCode = new BAJ(); break;
|
||||||
|
case "BAK": abstractCode = new BAK(); break;
|
||||||
|
case "BAL": abstractCode = new BAL(); break;
|
||||||
|
case "BAM": abstractCode = new BAM(); break;
|
||||||
|
case "BAN": abstractCode = new BAN(); break;
|
||||||
|
case "BAO": abstractCode = new BAO(); break;
|
||||||
|
case "BAP": abstractCode = new BAP(); break;
|
||||||
|
case "BBA": abstractCode = new BBA(); break;
|
||||||
|
case "BBB": abstractCode = new BBB(); break;
|
||||||
|
case "BBC": abstractCode = new BBC(); break;
|
||||||
|
case "BBD": abstractCode = new BBD(); break;
|
||||||
|
case "BBE": abstractCode = new BBE(); break;
|
||||||
|
case "BBF": abstractCode = new BBF(); break;
|
||||||
|
case "BBG": abstractCode = new BBG(); break;
|
||||||
|
case "BBH": abstractCode = new BBH(); break;
|
||||||
|
case "BDB": abstractCode = new BDB(); break;
|
||||||
|
case "BDE": abstractCode = new BDE(); break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (abstractCode == null) return result;
|
||||||
|
|
||||||
|
abstractCode.WriteCH1(ch1);
|
||||||
|
abstractCode.WriteCH2(ch2);
|
||||||
|
float _q1 = float.Parse(q1);
|
||||||
|
//float _q2 = float.Parse(q2);
|
||||||
|
abstractCode.WriteQ1(_q1);
|
||||||
|
//abstractCode.WriteQ2(_q2);
|
||||||
|
|
||||||
|
result.Add("D", abstractCode.CalculateDK());
|
||||||
|
result.Add("B", abstractCode.CalculateBK());
|
||||||
|
result.Add("S", abstractCode.CalculateSK());
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
namespace dcnsanplanung.bewertung
|
|
||||||
{
|
|
||||||
public class Class1
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
49
dcnsanplanung.bewertung/M149-3/AbstractCode.cs
Normal file
49
dcnsanplanung.bewertung/M149-3/AbstractCode.cs
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
namespace dcnsanplanung.bewertung.M149_3
|
||||||
|
{
|
||||||
|
public abstract class AbstractCode
|
||||||
|
{
|
||||||
|
string beschreibung;
|
||||||
|
protected string Ch1 = "";
|
||||||
|
protected string Ch2 = "";
|
||||||
|
protected float Q1;
|
||||||
|
protected float Q2;
|
||||||
|
protected int DN;
|
||||||
|
|
||||||
|
public AbstractCode(string beschreibung, int DN = -1)
|
||||||
|
{
|
||||||
|
this.beschreibung = beschreibung;
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual int CalculateSK()
|
||||||
|
{
|
||||||
|
return 5;
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual int CalculateDK()
|
||||||
|
{
|
||||||
|
return 5;
|
||||||
|
}
|
||||||
|
public virtual int CalculateBK()
|
||||||
|
{
|
||||||
|
return 5;
|
||||||
|
}
|
||||||
|
|
||||||
|
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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -5,79 +5,19 @@ using System.Text;
|
|||||||
|
|
||||||
namespace dcnsanplanung.bewertung.M149_3
|
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
|
public class BAA : AbstractCode
|
||||||
{
|
{
|
||||||
Geltungsbereich geltungsbereich;
|
EGeltungsbereich geltungsbereich;
|
||||||
public BAA(Geltungsbereich geltungsbereich) : base("Verformung", CalculateMethods.Standsicherheit | CalculateMethods.Betriebsicherheit)
|
public BAA(EGeltungsbereich geltungsbereich) : base("Verformung")
|
||||||
{
|
{
|
||||||
this.geltungsbereich = geltungsbereich;
|
this.geltungsbereich = geltungsbereich;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override int CalculateSK()
|
public override int CalculateSK()
|
||||||
{
|
{
|
||||||
switch(geltungsbereich)
|
switch(geltungsbereich)
|
||||||
{
|
{
|
||||||
case Geltungsbereich.biegesteif:
|
case EGeltungsbereich.biegesteif:
|
||||||
{
|
{
|
||||||
switch (Q1)
|
switch (Q1)
|
||||||
{
|
{
|
||||||
@@ -88,7 +28,7 @@ namespace dcnsanplanung.bewertung.M149_3
|
|||||||
default: return 4;
|
default: return 4;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
case Geltungsbereich.biegeweich:
|
case EGeltungsbereich.biegeweich:
|
||||||
{
|
{
|
||||||
switch (Q1)
|
switch (Q1)
|
||||||
{
|
{
|
||||||
@@ -103,7 +43,7 @@ namespace dcnsanplanung.bewertung.M149_3
|
|||||||
default: return 6;
|
default: return 6;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
protected override int CalculateBK()
|
public override int CalculateBK()
|
||||||
{
|
{
|
||||||
switch(Q1)
|
switch(Q1)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -2,11 +2,11 @@
|
|||||||
{
|
{
|
||||||
public class BAB : AbstractCode
|
public class BAB : AbstractCode
|
||||||
{
|
{
|
||||||
public BAB() : base("Rissbildung", CalculateMethods.Standsicherheit | CalculateMethods.Dichtheit)
|
public BAB() : base("Rissbildung")
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override int CalculateDK()
|
public override int CalculateDK()
|
||||||
{
|
{
|
||||||
switch(Ch1)
|
switch(Ch1)
|
||||||
{
|
{
|
||||||
@@ -33,10 +33,10 @@
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
return 10;
|
return 5;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override int CalculateSK()
|
public override int CalculateSK()
|
||||||
{
|
{
|
||||||
switch(Ch1)
|
switch(Ch1)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -2,20 +2,20 @@
|
|||||||
{
|
{
|
||||||
public class BAC : AbstractCode
|
public class BAC : AbstractCode
|
||||||
{
|
{
|
||||||
public BAC() : base("Rohrbruch", CalculateMethods.Dichtheit | CalculateMethods.Standsicherheit | CalculateMethods.Betriebsicherheit)
|
public BAC() : base("Rohrbruch")
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override int CalculateBK()
|
public override int CalculateBK()
|
||||||
{
|
{
|
||||||
switch (Ch1)
|
switch (Ch1)
|
||||||
{
|
{
|
||||||
case "A": return 7;
|
case "A": return 7;
|
||||||
case "C": return 0;
|
case "C": return 0;
|
||||||
}
|
}
|
||||||
return 10;
|
return 5;
|
||||||
}
|
}
|
||||||
protected override int CalculateSK()
|
public override int CalculateSK()
|
||||||
{
|
{
|
||||||
switch(Ch1)
|
switch(Ch1)
|
||||||
{
|
{
|
||||||
@@ -24,7 +24,7 @@
|
|||||||
default: return 0;
|
default: return 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
protected override int CalculateDK()
|
public override int CalculateDK()
|
||||||
{
|
{
|
||||||
switch (Ch1)
|
switch (Ch1)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
{
|
{
|
||||||
public class BAD : AbstractCode
|
public class BAD : AbstractCode
|
||||||
{
|
{
|
||||||
public BAD() : base("Defektes Mauerwerk", CalculateMethods.Dichtheit | CalculateMethods.Standsicherheit | CalculateMethods.Betriebsicherheit)
|
public BAD() : base("Defektes Mauerwerk")
|
||||||
{
|
{
|
||||||
throw new NotImplementedException();
|
throw new NotImplementedException();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
{
|
{
|
||||||
public class BAE : AbstractCode
|
public class BAE : AbstractCode
|
||||||
{
|
{
|
||||||
public BAE() : base("Fehlender Mörtel", CalculateMethods.Dichtheit | CalculateMethods.Standsicherheit)
|
public BAE() : base("Fehlender Mörtel")
|
||||||
{
|
{
|
||||||
throw new NotImplementedException();
|
throw new NotImplementedException();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,9 +2,43 @@
|
|||||||
{
|
{
|
||||||
public class BAF : AbstractCode
|
public class BAF : AbstractCode
|
||||||
{
|
{
|
||||||
public BAF() : base("Oberflächenschaden", CalculateMethods.Dichtheit | CalculateMethods.Standsicherheit | CalculateMethods.Betriebsicherheit)
|
public BAF() : base("Oberflächenschaden")
|
||||||
{
|
{
|
||||||
throw new NotImplementedException();
|
}
|
||||||
|
|
||||||
|
public override int CalculateBK()
|
||||||
|
{
|
||||||
|
if (Ch1.Equals("K")) return 3;
|
||||||
|
return 4;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateDK()
|
||||||
|
{
|
||||||
|
switch(Ch1)
|
||||||
|
{
|
||||||
|
case "I": return 1;
|
||||||
|
case "Z": return 7;
|
||||||
|
default: return 5;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateSK()
|
||||||
|
{
|
||||||
|
switch(Ch1)
|
||||||
|
{
|
||||||
|
case "A": return 4;
|
||||||
|
case "B":
|
||||||
|
case "C": return 3;
|
||||||
|
case "D": return 2;
|
||||||
|
case "E": return 1;
|
||||||
|
case "F": return 3;
|
||||||
|
case "G": return 2;
|
||||||
|
case "H": return 1;
|
||||||
|
case "I":
|
||||||
|
case "J":
|
||||||
|
case "Z": return 7;
|
||||||
|
default: return 5;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,9 +2,55 @@
|
|||||||
{
|
{
|
||||||
public class BAG : AbstractCode
|
public class BAG : AbstractCode
|
||||||
{
|
{
|
||||||
public BAG() : base("Einragender Anschluss", CalculateMethods.Betriebsicherheit)
|
public BAG(int DN) : base("Einragender Anschluss", DN)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException ();
|
this.DN = DN;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateBK()
|
||||||
|
{
|
||||||
|
switch(DN)
|
||||||
|
{
|
||||||
|
case <= 250:
|
||||||
|
{
|
||||||
|
switch(Q1)
|
||||||
|
{
|
||||||
|
case >= 50: return 0;
|
||||||
|
case >= 30: return 1;
|
||||||
|
case >= 20: return 2;
|
||||||
|
case >= 10: return 3;
|
||||||
|
default: return 4;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
case <= 500:
|
||||||
|
{
|
||||||
|
switch(Q1)
|
||||||
|
{
|
||||||
|
case >= 80: return 0;
|
||||||
|
case >= 60: return 1;
|
||||||
|
case >= 40: return 2;
|
||||||
|
case >= 10: return 3;
|
||||||
|
default: return 4;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
case <= 800:
|
||||||
|
{
|
||||||
|
switch(Q1)
|
||||||
|
{
|
||||||
|
case >= 70: return 2;
|
||||||
|
case <= 10: return 3;
|
||||||
|
default: return 4;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
default:
|
||||||
|
{
|
||||||
|
switch(Q1)
|
||||||
|
{
|
||||||
|
case >= 30: return 3;
|
||||||
|
default: return 4;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,9 +2,27 @@
|
|||||||
{
|
{
|
||||||
public class BAH : AbstractCode
|
public class BAH : AbstractCode
|
||||||
{
|
{
|
||||||
public BAH() : base("Schadhafter Anschluss", CalculateMethods.Dichtheit | CalculateMethods.Standsicherheit | CalculateMethods.Betriebsicherheit)
|
public BAH() : base("Schadhafter Anschluss")
|
||||||
{
|
{
|
||||||
throw new NotImplementedException () ;
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateDK()
|
||||||
|
{
|
||||||
|
switch(Ch1)
|
||||||
|
{
|
||||||
|
case "B":
|
||||||
|
case "C":
|
||||||
|
case "D": return 2;
|
||||||
|
case "Z": return 7;
|
||||||
|
default: return 5;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateSK()
|
||||||
|
{
|
||||||
|
if (Ch1.Equals("Z")) return 7;
|
||||||
|
return 5;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,9 +2,32 @@
|
|||||||
{
|
{
|
||||||
public class BAI : AbstractCode
|
public class BAI : AbstractCode
|
||||||
{
|
{
|
||||||
public BAI() : base("Einragendes Dichtungsmaterial", CalculateMethods.Dichtheit | CalculateMethods.Betriebsicherheit)
|
public BAI() : base("Einragendes Dichtungsmaterial")
|
||||||
{
|
{
|
||||||
throw new NotImplementedException () ;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public override int CalculateDK()
|
||||||
|
{
|
||||||
|
return 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateBK()
|
||||||
|
{
|
||||||
|
if(Ch1.Equals("A"))
|
||||||
|
{
|
||||||
|
if (Ch2.Equals("A")) return 4;
|
||||||
|
return 3;
|
||||||
|
}
|
||||||
|
|
||||||
|
switch(Q1)
|
||||||
|
{
|
||||||
|
case >= 50: return 0;
|
||||||
|
case >= 35: return 1;
|
||||||
|
case >= 20: return 2;
|
||||||
|
case >= 5: return 3;
|
||||||
|
default: return 4;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
117
dcnsanplanung.bewertung/M149-3/BAJ.cs
Normal file
117
dcnsanplanung.bewertung/M149-3/BAJ.cs
Normal file
@@ -0,0 +1,117 @@
|
|||||||
|
namespace dcnsanplanung.bewertung.M149_3
|
||||||
|
{
|
||||||
|
public class BAJ : AbstractCode
|
||||||
|
{
|
||||||
|
public BAJ(int DN = -1) : base("Verschobene Verbindung", DN)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateDK()
|
||||||
|
{
|
||||||
|
switch (Ch1)
|
||||||
|
{
|
||||||
|
case "A":
|
||||||
|
{
|
||||||
|
switch (DN)
|
||||||
|
{
|
||||||
|
case <= 400:
|
||||||
|
{
|
||||||
|
switch (Q1)
|
||||||
|
{
|
||||||
|
case >= 70: return 0;
|
||||||
|
case >= 50: return 1;
|
||||||
|
case >= 30: return 2;
|
||||||
|
case >= 20: return 3;
|
||||||
|
default: return 4;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
case <= 800:
|
||||||
|
{
|
||||||
|
switch (Q1)
|
||||||
|
{
|
||||||
|
case >= 80: return 0;
|
||||||
|
case >= 60: return 1;
|
||||||
|
case >= 40: return 2;
|
||||||
|
case >= 20: return 3;
|
||||||
|
default: return 4;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
default:
|
||||||
|
{
|
||||||
|
switch (Q1)
|
||||||
|
{
|
||||||
|
case >= 90: return 0;
|
||||||
|
case >= 65: return 1;
|
||||||
|
case >= 40: return 2;
|
||||||
|
case >= 20: return 3;
|
||||||
|
default: return 4;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
case "B":
|
||||||
|
{
|
||||||
|
switch (Q1)
|
||||||
|
{
|
||||||
|
case >= 30: return 0;
|
||||||
|
case >= 20: return 1;
|
||||||
|
case >= 15: return 2;
|
||||||
|
case >= 10: return 3;
|
||||||
|
default: return 4;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
default:
|
||||||
|
{
|
||||||
|
switch (DN)
|
||||||
|
{
|
||||||
|
case <= 200:
|
||||||
|
{
|
||||||
|
switch (Q1)
|
||||||
|
{
|
||||||
|
case >= 12: return 0;
|
||||||
|
case >= 9: return 1;
|
||||||
|
case >= 7: return 2;
|
||||||
|
case >= 5: return 3;
|
||||||
|
default: return 4;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
case <= 500:
|
||||||
|
{
|
||||||
|
switch (Q1)
|
||||||
|
{
|
||||||
|
case >= 6: return 0;
|
||||||
|
case >= 4: return 1;
|
||||||
|
case >= 3: return 2;
|
||||||
|
case >= 2: return 3;
|
||||||
|
default: return 4;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
default:
|
||||||
|
{
|
||||||
|
switch (Q1)
|
||||||
|
{
|
||||||
|
case >= 6: return 0;
|
||||||
|
case >= 4: return 1;
|
||||||
|
case >= 3: return 2;
|
||||||
|
case >= 1: return 3;
|
||||||
|
default: return 4;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
public override int CalculateSK()
|
||||||
|
{
|
||||||
|
return 4;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateBK()
|
||||||
|
{
|
||||||
|
if (Ch1.Equals("B")) return 7;
|
||||||
|
return 5;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
12
dcnsanplanung.bewertung/M149-3/BAK.cs
Normal file
12
dcnsanplanung.bewertung/M149-3/BAK.cs
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
namespace dcnsanplanung.bewertung.M149_3
|
||||||
|
{
|
||||||
|
public class BAK : AbstractCode
|
||||||
|
{
|
||||||
|
public BAK() : base("Feststellung der Innenauskleidung")
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
12
dcnsanplanung.bewertung/M149-3/BAL.cs
Normal file
12
dcnsanplanung.bewertung/M149-3/BAL.cs
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
namespace dcnsanplanung.bewertung.M149_3
|
||||||
|
{
|
||||||
|
public class BAL : AbstractCode
|
||||||
|
{
|
||||||
|
public BAL() : base("Schadhafte Reparatur")
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
12
dcnsanplanung.bewertung/M149-3/BAM.cs
Normal file
12
dcnsanplanung.bewertung/M149-3/BAM.cs
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
namespace dcnsanplanung.bewertung.M149_3
|
||||||
|
{
|
||||||
|
public class BAM : AbstractCode
|
||||||
|
{
|
||||||
|
public BAM() : base("Schadhafte Schweißnaht")
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
12
dcnsanplanung.bewertung/M149-3/BAN.cs
Normal file
12
dcnsanplanung.bewertung/M149-3/BAN.cs
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
namespace dcnsanplanung.bewertung.M149_3
|
||||||
|
{
|
||||||
|
public class BAN : AbstractCode
|
||||||
|
{
|
||||||
|
public BAN() : base("Poröses Rohr")
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
22
dcnsanplanung.bewertung/M149-3/BAO.cs
Normal file
22
dcnsanplanung.bewertung/M149-3/BAO.cs
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
namespace dcnsanplanung.bewertung.M149_3
|
||||||
|
{
|
||||||
|
public class BAO : AbstractCode
|
||||||
|
{
|
||||||
|
public BAO() : base("Boden sichtbar")
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateDK()
|
||||||
|
{
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateSK()
|
||||||
|
{
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
21
dcnsanplanung.bewertung/M149-3/BAP.cs
Normal file
21
dcnsanplanung.bewertung/M149-3/BAP.cs
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
namespace dcnsanplanung.bewertung.M149_3
|
||||||
|
{
|
||||||
|
public class BAP : AbstractCode
|
||||||
|
{
|
||||||
|
public BAP() : base("Hohlraum sichtbar")
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateDK()
|
||||||
|
{
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateSK()
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
24
dcnsanplanung.bewertung/M149-3/BBA.cs
Normal file
24
dcnsanplanung.bewertung/M149-3/BBA.cs
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
namespace dcnsanplanung.bewertung.M149_3
|
||||||
|
{
|
||||||
|
public class BBA : AbstractCode
|
||||||
|
{
|
||||||
|
public BBA() : base("Wurzeln")
|
||||||
|
{
|
||||||
|
}
|
||||||
|
public override int CalculateDK()
|
||||||
|
{
|
||||||
|
return 2;
|
||||||
|
}
|
||||||
|
public override int CalculateBK()
|
||||||
|
{
|
||||||
|
switch(Q1)
|
||||||
|
{
|
||||||
|
case >= 30: return 0;
|
||||||
|
case >= 20: return 1;
|
||||||
|
case >= 10: return 2;
|
||||||
|
default: return 3;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
29
dcnsanplanung.bewertung/M149-3/BBB.cs
Normal file
29
dcnsanplanung.bewertung/M149-3/BBB.cs
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
namespace dcnsanplanung.bewertung.M149_3
|
||||||
|
{
|
||||||
|
public class BBB : AbstractCode
|
||||||
|
{
|
||||||
|
public BBB() : base("Anhaftende Stoffe")
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateDK()
|
||||||
|
{
|
||||||
|
if (Ch1.Equals("A")) return 3;
|
||||||
|
return 5;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateBK()
|
||||||
|
{
|
||||||
|
switch(Q1)
|
||||||
|
{
|
||||||
|
case >= 30: return 0;
|
||||||
|
case >= 20: return 1;
|
||||||
|
case >= 10: return 2;
|
||||||
|
case >= 5: return 3;
|
||||||
|
default: return 4;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
31
dcnsanplanung.bewertung/M149-3/BBC.cs
Normal file
31
dcnsanplanung.bewertung/M149-3/BBC.cs
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
namespace dcnsanplanung.bewertung.M149_3
|
||||||
|
{
|
||||||
|
public class BBC : AbstractCode
|
||||||
|
{
|
||||||
|
public BBC() : base("Ablagerungen")
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateBK()
|
||||||
|
{
|
||||||
|
switch(Ch1)
|
||||||
|
{
|
||||||
|
case "C":
|
||||||
|
case "Z":
|
||||||
|
{
|
||||||
|
switch(Q1)
|
||||||
|
{
|
||||||
|
case >= 50: return 0;
|
||||||
|
case >= 40: return 1;
|
||||||
|
case >= 25: return 2;
|
||||||
|
case >= 10: return 3;
|
||||||
|
default: return 4;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
default: return 4;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
32
dcnsanplanung.bewertung/M149-3/BBD.cs
Normal file
32
dcnsanplanung.bewertung/M149-3/BBD.cs
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
namespace dcnsanplanung.bewertung.M149_3
|
||||||
|
{
|
||||||
|
public class BBD : AbstractCode
|
||||||
|
{
|
||||||
|
public BBD() : base("Eindringen von Bodenmaterial")
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateDK()
|
||||||
|
{
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateSK()
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateBK()
|
||||||
|
{
|
||||||
|
switch(Q1)
|
||||||
|
{
|
||||||
|
case >= 30: return 0;
|
||||||
|
case >= 20: return 1;
|
||||||
|
case >= 10: return 2;
|
||||||
|
default: return 3;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
11
dcnsanplanung.bewertung/M149-3/BBE.cs
Normal file
11
dcnsanplanung.bewertung/M149-3/BBE.cs
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
namespace dcnsanplanung.bewertung.M149_3
|
||||||
|
{
|
||||||
|
public class BBE : AbstractCode
|
||||||
|
{
|
||||||
|
public BBE() : base("Andere Hindernisse")
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
37
dcnsanplanung.bewertung/M149-3/BBF.cs
Normal file
37
dcnsanplanung.bewertung/M149-3/BBF.cs
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
namespace dcnsanplanung.bewertung.M149_3
|
||||||
|
{
|
||||||
|
public class BBF : AbstractCode
|
||||||
|
{
|
||||||
|
public BBF() : base("Infiltration")
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateDK()
|
||||||
|
{
|
||||||
|
switch(Ch1)
|
||||||
|
{
|
||||||
|
case "A": return 2;
|
||||||
|
default: return 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateSK()
|
||||||
|
{
|
||||||
|
switch(Ch1)
|
||||||
|
{
|
||||||
|
case "A": return 3;
|
||||||
|
case "B":
|
||||||
|
case "C": return 2;
|
||||||
|
default: return 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateBK()
|
||||||
|
{
|
||||||
|
if (Ch1.Equals("A")) return 4;
|
||||||
|
return 3;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
11
dcnsanplanung.bewertung/M149-3/BBG.cs
Normal file
11
dcnsanplanung.bewertung/M149-3/BBG.cs
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
namespace dcnsanplanung.bewertung.M149_3
|
||||||
|
{
|
||||||
|
public class BBG : AbstractCode
|
||||||
|
{
|
||||||
|
public BBG() : base("Exfiltration")
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
11
dcnsanplanung.bewertung/M149-3/BBH.cs
Normal file
11
dcnsanplanung.bewertung/M149-3/BBH.cs
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
namespace dcnsanplanung.bewertung.M149_3
|
||||||
|
{
|
||||||
|
public class BBH : AbstractCode
|
||||||
|
{
|
||||||
|
public BBH() : base("Ungeziefer")
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
20
dcnsanplanung.bewertung/M149-3/BDB.cs
Normal file
20
dcnsanplanung.bewertung/M149-3/BDB.cs
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
namespace dcnsanplanung.bewertung.M149_3
|
||||||
|
{
|
||||||
|
public class BDB : AbstractCode
|
||||||
|
{
|
||||||
|
public BDB() : base("Sonderfälle")
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateBK()
|
||||||
|
{
|
||||||
|
return 7;
|
||||||
|
}
|
||||||
|
public override int CalculateDK()
|
||||||
|
{
|
||||||
|
return 7;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
20
dcnsanplanung.bewertung/M149-3/BDE.cs
Normal file
20
dcnsanplanung.bewertung/M149-3/BDE.cs
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
namespace dcnsanplanung.bewertung.M149_3
|
||||||
|
{
|
||||||
|
public class BDE : AbstractCode
|
||||||
|
{
|
||||||
|
public BDE() : base("Zufluss aus einem Anschluss")
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int CalculateBK()
|
||||||
|
{
|
||||||
|
switch(Ch2)
|
||||||
|
{
|
||||||
|
case "A": return 1;
|
||||||
|
default: return 2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
9
dcnsanplanung.bewertung/M149-3/ECalculateMethods.cs
Normal file
9
dcnsanplanung.bewertung/M149-3/ECalculateMethods.cs
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
namespace dcnsanplanung.bewertung.M149_3
|
||||||
|
{
|
||||||
|
public enum ECalculateMethods
|
||||||
|
{
|
||||||
|
Dichtheit = 1,
|
||||||
|
Standsicherheit = 2,
|
||||||
|
Betriebsicherheit = 4
|
||||||
|
}
|
||||||
|
}
|
||||||
8
dcnsanplanung.bewertung/M149-3/EGeltungsbereich.cs
Normal file
8
dcnsanplanung.bewertung/M149-3/EGeltungsbereich.cs
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
namespace dcnsanplanung.bewertung.M149_3
|
||||||
|
{
|
||||||
|
public enum EGeltungsbereich
|
||||||
|
{
|
||||||
|
biegesteif,
|
||||||
|
biegeweich
|
||||||
|
}
|
||||||
|
}
|
||||||
21
dcnsanplanung.bewertungTests/BewM149Tests.cs
Normal file
21
dcnsanplanung.bewertungTests/BewM149Tests.cs
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||||
|
using dcnsanplanung.bewertung;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace dcnsanplanung.bewertung.Tests
|
||||||
|
{
|
||||||
|
[TestClass()]
|
||||||
|
public class BewM149Tests
|
||||||
|
{
|
||||||
|
[TestMethod()]
|
||||||
|
public void BewM149Test()
|
||||||
|
{
|
||||||
|
var t = BewM149.Klassifiziere("BAB", "B", "A", "10", "10", 0);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
|
<PropertyGroup>
|
||||||
|
<TargetFramework>net7.0</TargetFramework>
|
||||||
|
<ImplicitUsings>enable</ImplicitUsings>
|
||||||
|
<Nullable>enable</Nullable>
|
||||||
|
|
||||||
|
<IsPackable>false</IsPackable>
|
||||||
|
<IsTestProject>true</IsTestProject>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.5.0" />
|
||||||
|
<PackageReference Include="MSTest.TestAdapter" Version="2.2.10" />
|
||||||
|
<PackageReference Include="MSTest.TestFramework" Version="2.2.10" />
|
||||||
|
<PackageReference Include="coverlet.collector" Version="3.2.0" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\dcnsanplanung.bewertung\dcnsanplanung.bewertung.csproj" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
</Project>
|
||||||
@@ -40,6 +40,7 @@ namespace dcnsanplanung.shared.Helper
|
|||||||
kodierung.CH2 = src_kodierung.Charakterisierung2 != null ? src_kodierung.Charakterisierung2 : "";
|
kodierung.CH2 = src_kodierung.Charakterisierung2 != null ? src_kodierung.Charakterisierung2 : "";
|
||||||
kodierung.Q1 = src_kodierung.Quantifizierung1.Numerisch.ToString();
|
kodierung.Q1 = src_kodierung.Quantifizierung1.Numerisch.ToString();
|
||||||
kodierung.Q2 = src_kodierung.Quantifizierung2.Numerisch.ToString();
|
kodierung.Q2 = src_kodierung.Quantifizierung2.Numerisch.ToString();
|
||||||
|
kodierung.StreckenschadenCode = string.Format("{0}{1}", src_kodierung.Streckenschaden, src_kodierung.Streckenschadennr);
|
||||||
|
|
||||||
//string.Format("{0}#{1}#{2}#{3}", src_kodierung.Inspektionskode ,src_kodierung.Charakterisierung1 , src_kodierung.Charakterisierung2 , src_kodierung.Quantifizierung1);
|
//string.Format("{0}#{1}#{2}#{3}", src_kodierung.Inspektionskode ,src_kodierung.Charakterisierung1 , src_kodierung.Charakterisierung2 , src_kodierung.Quantifizierung1);
|
||||||
//kodierung.Schadensklasse = src_kodierung.Klassifizierung == null ? 6 : src_kodierung.Klassifizierung.MaxSKeAuto;
|
//kodierung.Schadensklasse = src_kodierung.Klassifizierung == null ? 6 : src_kodierung.Klassifizierung.MaxSKeAuto;
|
||||||
|
|||||||
@@ -9,10 +9,11 @@
|
|||||||
public string CH2 { get; set; } = string.Empty;
|
public string CH2 { get; set; } = string.Empty;
|
||||||
public string Q1 { get; set; } = string.Empty;
|
public string Q1 { get; set; } = string.Empty;
|
||||||
public string Q2 { get; set; } = string.Empty;
|
public string Q2 { get; set; } = string.Empty;
|
||||||
public uint Schadensklasse { get; set; }
|
public int Schadensklasse { get; set; }
|
||||||
public uint KD { get; set; }
|
public int KD { get; set; }
|
||||||
public uint KS { get; set; }
|
public int KS { get; set; }
|
||||||
public uint KB { get; set; }
|
public int KB { get; set; }
|
||||||
|
public string StreckenschadenCode { get; set; } = string.Empty;
|
||||||
public List<Sanierungsvorgabe> Sanierungsvorgaben { get; set; }
|
public List<Sanierungsvorgabe> Sanierungsvorgaben { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -15,7 +15,9 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "dcnsanplanung.sharedTests",
|
|||||||
EndProject
|
EndProject
|
||||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "dcnsanplanung.DALTests", "dcnsanplanung.DALTests\dcnsanplanung.DALTests.csproj", "{91A48C89-5E1F-4C70-B995-A2AC9459E6C1}"
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "dcnsanplanung.DALTests", "dcnsanplanung.DALTests\dcnsanplanung.DALTests.csproj", "{91A48C89-5E1F-4C70-B995-A2AC9459E6C1}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "dcnsanplanung.bewertung", "dcnsanplanung.bewertung\dcnsanplanung.bewertung.csproj", "{9D3FD066-7572-40EC-BCC7-5508CBAFF02C}"
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "dcnsanplanung.bewertung", "dcnsanplanung.bewertung\dcnsanplanung.bewertung.csproj", "{9D3FD066-7572-40EC-BCC7-5508CBAFF02C}"
|
||||||
|
EndProject
|
||||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "dcnsanplanung.bewertungTests", "dcnsanplanung.bewertungTests\dcnsanplanung.bewertungTests.csproj", "{04EEBF05-C867-4638-9629-718109F029F1}"
|
||||||
EndProject
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
@@ -51,6 +53,10 @@ Global
|
|||||||
{9D3FD066-7572-40EC-BCC7-5508CBAFF02C}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
{9D3FD066-7572-40EC-BCC7-5508CBAFF02C}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
{9D3FD066-7572-40EC-BCC7-5508CBAFF02C}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
{9D3FD066-7572-40EC-BCC7-5508CBAFF02C}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
{9D3FD066-7572-40EC-BCC7-5508CBAFF02C}.Release|Any CPU.Build.0 = Release|Any CPU
|
{9D3FD066-7572-40EC-BCC7-5508CBAFF02C}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
{04EEBF05-C867-4638-9629-718109F029F1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{04EEBF05-C867-4638-9629-718109F029F1}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{04EEBF05-C867-4638-9629-718109F029F1}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{04EEBF05-C867-4638-9629-718109F029F1}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
HideSolutionNode = FALSE
|
HideSolutionNode = FALSE
|
||||||
|
|||||||
@@ -22,6 +22,9 @@
|
|||||||
</ComboBox>
|
</ComboBox>
|
||||||
|
|
||||||
<Button Name="LoadXML" Command="{Binding LoadXMLFile}" Content="LoadXML" />
|
<Button Name="LoadXML" Command="{Binding LoadXMLFile}" Content="LoadXML" />
|
||||||
|
<Button Content="Klassifiziere" Command="{Binding Klassifiere}" />
|
||||||
|
<Label Content="{Binding ZahlEinzelfall}" />
|
||||||
|
<Button Content="Zeige Einzelfall" Command="{Binding SelectEinzelfall}" />
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
|
|
||||||
</Grid>
|
</Grid>
|
||||||
|
|||||||
@@ -18,18 +18,27 @@ namespace dcnsanplanung.wpf.ViewModel
|
|||||||
public string SK { get => model.Bewertungklasse.ToString(); }
|
public string SK { get => model.Bewertungklasse.ToString(); }
|
||||||
public string DN { get => model.DN.ToString(); }
|
public string DN { get => model.DN.ToString(); }
|
||||||
public string Material { get => model.Material; }
|
public string Material { get => model.Material; }
|
||||||
|
public string Guid { get => model.Guid.ToString(); }
|
||||||
|
|
||||||
public List<Schaden> Schaeden { get => model.Kodierungen; }
|
public List<Schaden> Schaeden { get => model.Kodierungen; }
|
||||||
|
|
||||||
|
public ICommand Speichern { get; set; }
|
||||||
|
|
||||||
|
|
||||||
public HaltungObjektViewModel(Haltung selectedHaltung)
|
public HaltungObjektViewModel(Haltung selectedHaltung)
|
||||||
{
|
{
|
||||||
model = selectedHaltung;
|
model = selectedHaltung;
|
||||||
|
Speichern = new RelayCommand(() => doSpeichern());
|
||||||
LadeSchaeden();
|
LadeSchaeden();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void doSpeichern()
|
||||||
|
{
|
||||||
|
SchadenDataService schadenDataService = new SchadenDataService("Host = localhost; Database = sanplaner; Username = dcnsanplaner; Password = sanplaner");
|
||||||
|
schadenDataService.UpdateSchadenBuld(model.Kodierungen);
|
||||||
|
}
|
||||||
|
|
||||||
private async void LadeSchaeden()
|
private async void LadeSchaeden()
|
||||||
{
|
{
|
||||||
SchadenDataService schadenDataService = new SchadenDataService("Host = localhost; Database = sanplaner; Username = dcnsanplaner; Password = sanplaner");
|
SchadenDataService schadenDataService = new SchadenDataService("Host = localhost; Database = sanplaner; Username = dcnsanplaner; Password = sanplaner");
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
using CommunityToolkit.Mvvm.Input;
|
using CommunityToolkit.Mvvm.Input;
|
||||||
|
using dcnsanplanung.DAL.Services.PostgresqlData;
|
||||||
using dcnsanplanung.shared.Model;
|
using dcnsanplanung.shared.Model;
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
@@ -15,7 +16,13 @@ namespace dcnsanplanung.wpf.ViewModel
|
|||||||
{
|
{
|
||||||
public List<Haltung> VerfügbareHaltungen { get; set; } = new List<Haltung>();
|
public List<Haltung> VerfügbareHaltungen { get; set; } = new List<Haltung>();
|
||||||
|
|
||||||
|
Queue<Haltung> Einzelfallbetrachtung = new Queue<Haltung>();
|
||||||
|
|
||||||
public ICommand LoadXMLFile { get; set; }
|
public ICommand LoadXMLFile { get; set; }
|
||||||
|
public ICommand Klassifiere { get; set; }
|
||||||
|
public ICommand SelectEinzelfall { get; set; }
|
||||||
|
|
||||||
|
public string ZahlEinzelfall => Einzelfallbetrachtung.Count.ToString();
|
||||||
|
|
||||||
private Haltung? selectedHaltung;
|
private Haltung? selectedHaltung;
|
||||||
public Haltung? SelectedHaltung
|
public Haltung? SelectedHaltung
|
||||||
@@ -35,9 +42,60 @@ namespace dcnsanplanung.wpf.ViewModel
|
|||||||
|
|
||||||
LoadHaltungen();
|
LoadHaltungen();
|
||||||
LoadXMLFile = new RelayCommand(() => dooAsync());
|
LoadXMLFile = new RelayCommand(() => dooAsync());
|
||||||
|
Klassifiere = new RelayCommand(() => dooKlassifiziereAsync());
|
||||||
|
SelectEinzelfall = new RelayCommand(() => selectEinzelfall());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void selectEinzelfall()
|
||||||
|
{
|
||||||
|
Haltung? einzelfall = Einzelfallbetrachtung.Dequeue();
|
||||||
|
if (einzelfall == null) return;
|
||||||
|
W_ObjektView w_ObjektView = new W_ObjektView();
|
||||||
|
w_ObjektView.DataContext = new HaltungObjektViewModel(einzelfall);
|
||||||
|
w_ObjektView.Show();
|
||||||
|
}
|
||||||
|
|
||||||
|
private async void dooKlassifiziereAsync()
|
||||||
|
{
|
||||||
|
DAL.Services.PostgresqlData.HaltungDataService haltungDataService = new DAL.Services.PostgresqlData.HaltungDataService("Host = localhost; Database = sanplaner; Username = dcnsanplaner; Password = sanplaner");
|
||||||
|
var s = await haltungDataService.GetAllByProjekt(0);
|
||||||
|
// Alle Haltungen laden
|
||||||
|
SchadenDataService schadenDataService = new SchadenDataService("Host = localhost; Database = sanplaner; Username = dcnsanplaner; Password = sanplaner");
|
||||||
|
foreach (var item in s)
|
||||||
|
{
|
||||||
|
|
||||||
|
IEnumerable<Schaden> src_kodierung = await schadenDataService.GetAllByHaltung(item);
|
||||||
|
item.Kodierungen = src_kodierung.ToList();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Alle Schäden Klassifizieren
|
||||||
|
foreach(var haltung in s)
|
||||||
|
{
|
||||||
|
bool einzelfall = false;
|
||||||
|
foreach(var schaden in haltung.Kodierungen)
|
||||||
|
{
|
||||||
|
var k = bewertung.BewM149.Klassifiziere(schaden.Hauptcode, schaden.CH1, schaden.CH2, schaden.Q1, schaden.Q2, (int)haltung.DN);
|
||||||
|
//SchadenDataService schadenDataService = new SchadenDataService("Host = localhost; Database = sanplaner; Username = dcnsanplaner; Password = sanplaner");
|
||||||
|
if (k.Count == 0) continue;
|
||||||
|
schaden.KB = k["B"];
|
||||||
|
schaden.KD = k["D"];
|
||||||
|
schaden.KS = k["S"];
|
||||||
|
|
||||||
|
if(schaden.KB == 7 || schaden.KD == 7 || schaden.KS == 7)
|
||||||
|
{
|
||||||
|
einzelfall = true;
|
||||||
|
}
|
||||||
|
await schadenDataService.Update(schaden);
|
||||||
|
}
|
||||||
|
if(einzelfall)
|
||||||
|
{
|
||||||
|
Einzelfallbetrachtung.Enqueue(haltung);
|
||||||
|
OnPropertyChanged("ZahlEinzelfall");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
async Task dooAsync()
|
async Task dooAsync()
|
||||||
{
|
{
|
||||||
DAL.Helper.WriteToDatabase writer = new DAL.Helper.WriteToDatabase(@"D:\Airbus\Airbus Nordenham RW Viewer für Sanierungskonzept\Airbus Nordenham RW.xml");
|
DAL.Helper.WriteToDatabase writer = new DAL.Helper.WriteToDatabase(@"D:\Airbus\Airbus Nordenham RW Viewer für Sanierungskonzept\Airbus Nordenham RW.xml");
|
||||||
|
|||||||
@@ -39,13 +39,16 @@
|
|||||||
<Label Grid.Row="3" Content="Material" />
|
<Label Grid.Row="3" Content="Material" />
|
||||||
<Label Grid.Row="3" Grid.Column="1" Content="{Binding Material}" />
|
<Label Grid.Row="3" Grid.Column="1" Content="{Binding Material}" />
|
||||||
|
|
||||||
|
<Button Grid.Row="4" Content="Speichern" Command="{Binding Speichern}" />
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</Grid>
|
</Grid>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!--<views:DynamicGridView Grid.Row="1" x:Name="DynamicGridView" DataContext="{Binding Schaeden}"></views:DynamicGridView>-->
|
<!--<views:DynamicGridView Grid.Row="1" x:Name="DynamicGridView" DataContext="{Binding Schaeden}"></views:DynamicGridView>-->
|
||||||
<ListView Grid.Row="1" ItemsSource="{Binding Schaeden}" AlternationCount="2">
|
<!--<ListView Grid.Row="1" ItemsSource="{Binding Schaeden}" AlternationCount="2">
|
||||||
<ListView.ItemContainerStyle>
|
<ListView.ItemContainerStyle>
|
||||||
<Style TargetType="ListViewItem">
|
<Style TargetType="ListViewItem">
|
||||||
<Setter Property="Template">
|
<Setter Property="Template">
|
||||||
@@ -61,7 +64,7 @@
|
|||||||
<ColumnDefinition Width="80" />
|
<ColumnDefinition Width="80" />
|
||||||
</Grid.ColumnDefinitions>
|
</Grid.ColumnDefinitions>
|
||||||
<TextBlock Text="{Binding Entfernung}" />
|
<TextBlock Text="{Binding Entfernung}" />
|
||||||
<TextBlock Grid.Column="1" Text="{Binding Kodierung}" />
|
<TextBlock Grid.Column="1" Text="{Binding Hauptcode}" />
|
||||||
<TextBlock Grid.Column="2" Text="{Binding Schadensklasse}" />
|
<TextBlock Grid.Column="2" Text="{Binding Schadensklasse}" />
|
||||||
|
|
||||||
|
|
||||||
@@ -136,15 +139,21 @@
|
|||||||
</Style>
|
</Style>
|
||||||
</ListView.Style>
|
</ListView.Style>
|
||||||
|
|
||||||
</ListView>
|
</ListView>-->
|
||||||
<!--<DataGrid Grid.Row="1" ItemsSource="{Binding Schaeden}" AutoGenerateColumns="False">
|
<DataGrid Grid.Row="1" ItemsSource="{Binding Schaeden}" AutoGenerateColumns="False">
|
||||||
<DataGrid.Columns>
|
<DataGrid.Columns>
|
||||||
<DataGridTextColumn Header="Entfernung" Binding="{Binding Entfernung}" />
|
<DataGridTextColumn Header="Entfernung" Binding="{Binding Entfernung}" />
|
||||||
<DataGridTextColumn Header="Kodierung" Binding="{Binding Kodierung}" />
|
<DataGridTextColumn Header="Hauptcode" Binding="{Binding Hauptcode}" />
|
||||||
<DataGridTextColumn Header="Schadensklasse" Binding="{Binding Schadensklasse}" />
|
<DataGridTextColumn Header="Ch1" Binding="{Binding CH1}" />
|
||||||
|
<DataGridTextColumn Header="Ch2" Binding="{Binding CH2}" />
|
||||||
|
<DataGridTextColumn Header="Q1" Binding="{Binding Q1}" />
|
||||||
|
<DataGridTextColumn Header="Q2" Binding="{Binding Q2}" />
|
||||||
|
<DataGridTextColumn Header="D" Binding="{Binding KD}" />
|
||||||
|
<DataGridTextColumn Header="S" Binding="{Binding KS}" />
|
||||||
|
<DataGridTextColumn Header="B" Binding="{Binding KB}" />
|
||||||
</DataGrid.Columns>
|
</DataGrid.Columns>
|
||||||
|
|
||||||
</DataGrid>-->
|
</DataGrid>
|
||||||
|
|
||||||
</Grid>
|
</Grid>
|
||||||
</Window>
|
</Window>
|
||||||
|
|||||||
@@ -12,6 +12,7 @@
|
|||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\dcnsanplanung.bewertung\dcnsanplanung.bewertung.csproj" />
|
||||||
<ProjectReference Include="..\dcnsanplanung.DAL\dcnsanplanung.DAL.csproj" />
|
<ProjectReference Include="..\dcnsanplanung.DAL\dcnsanplanung.DAL.csproj" />
|
||||||
<ProjectReference Include="..\dcnsanplanung.shared\dcnsanplanung.shared.csproj" />
|
<ProjectReference Include="..\dcnsanplanung.shared\dcnsanplanung.shared.csproj" />
|
||||||
<ProjectReference Include="..\Schnittstelle\Schnittstelle\Schnittstelle.csproj" />
|
<ProjectReference Include="..\Schnittstelle\Schnittstelle\Schnittstelle.csproj" />
|
||||||
|
|||||||
Reference in New Issue
Block a user