Contracts hinzugefügt

This commit is contained in:
Husky
2021-08-15 12:04:09 +02:00
parent 5c9770bf45
commit 538ec3d00b
36 changed files with 201 additions and 97 deletions

View File

@@ -0,0 +1,20 @@
namespace XMLParser.Model
{
public class AbwassertechnischeAnlage
{
string objektbezeichnung;
EObjektArt objektArt;
string entwaesserungsart;
Kante kante;
Knoten knoten;
Geometrie geometrie;
public string Objektbezeichnung { get => objektbezeichnung; set => objektbezeichnung = value; }
public EObjektArt ObjektArt { get => objektArt; set => objektArt = value; }
public string Entwaesserungsart { get => entwaesserungsart; set => entwaesserungsart = value; }
public Kante Kante { get => kante; set => kante = value; }
public Geometrie Geometrie { get => geometrie; set => geometrie = value; }
public Knoten Knoten { get => knoten; set => knoten = value; }
}
}

View File

@@ -0,0 +1,19 @@
namespace XMLParser.Model
{
public class Anschlussdaten
{
string objektbezeichnung;
EKantenTyp kantentyp;
decimal entfernung;
string anschlussArt;
string fixierung;
string kommentar;
public string Objektbezeichnung { get => objektbezeichnung; set => objektbezeichnung = value; }
public EKantenTyp Kantentyp { get => kantentyp; set => kantentyp = value; }
public decimal Entfernung { get => entfernung; set => entfernung = value; }
public string AnschlussArt { get => anschlussArt; set => anschlussArt = value; }
public string Fixierung { get => fixierung; set => fixierung = value; }
public string Kommentar { get => kommentar; set => kommentar = value; }
}
}

View File

@@ -0,0 +1,9 @@
namespace XMLParser.Model
{
public class Anschlusspunkt
{
string punktkennung;
public string Punktkennung { get => punktkennung; set => punktkennung = value; }
}
}

94
XMLParser.Model/Enums.cs Normal file
View File

@@ -0,0 +1,94 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace XMLParser.Model
{
public enum EAnlagetyp
{
Haltung = 1,
Anschlussleitung = 2,
Schacht = 3,
Bauwerk = 4
}
public enum EInspektionverfahren
{
TVUntersuchung,
Begehung,
VomSchacht,
Other
}
public enum EWetter
{
KEINNIEDERSCHLAG = 1,
REGEN = 2,
SCHNEE = 3
}
public enum ERohrleitungstyp
{
HALTUNG,
LEITUNG
}
public enum EObjektArt
{
KANTE = 1,
KNOTEN = 2
}
public enum EKnotenTyp
{
SCHACHT = 0,
ANSCHLUSSPUNKT = 1,
BAUWERK = 2
}
public enum EKantenTyp
{
HALTUNG,
LEITUNG,
RINNE,
GERINNE
}
public enum ESchachtFunktion
{
SCHACHT = 1,
SONDERSCHACHT,
KONTROLLSCHACHT,
DROSSELSCHACHT,
LAMPENSCHACHT,
PROBENAHMESCHACHT,
HAUSREVISIONSCHACHT,
VERBINDUNGSSCHACHT,
SCHACHTMITNOTUEBERLAUF,
INSPEKTIONSOEFFNUNG,
REINIGUNGSOEFFNUNG,
PROBENAHMEOEFFNUNG
}
public enum ECalculatedResult {
STRASSENABLAUFANZAHL,
SONSTIGEANZAHL,
STRASSENABLAUFUMSATZ,
SONSTIGEUMSATZ,
DN150DN250,
DN300DN400,
DN450DN600,
DN650DN800,
DN850DN1000,
GESAMTHAUPTKANAL,
HAUPTKANALUMSATZ,
SONSTIGELAENGEZULAGEMETER,
STRASSENABLAUFLAENGEZULAGEMETER,
LAENGEZULAGEUMSATZ,
GESAMTUMSATZ
}
public enum EWasserhaltung {
NONE=1,
OBERHALB,
TEILOBERHALB,
SEITENZULAUFE,
UNTERHALB,
OTHER
}
}

View File

@@ -0,0 +1,24 @@
namespace XMLParser.Model
{
public class Geometrie
{
Geometriedaten geometriedaten;
PolyKanteAttribute rap1;
PolyKanteAttribute rap2;
public Geometriedaten Geometriedaten
{
get
{
return geometriedaten;
}
set
{
geometriedaten = value;
}
}
public PolyKanteAttribute Rap1 { get => rap1; set => rap1 = value; }
public PolyKanteAttribute Rap2 { get => rap2; set => rap2 = value; }
}
}

View File

@@ -0,0 +1,21 @@
using System.Collections.Generic;
namespace XMLParser.Model
{
public class Geometriedaten
{
List<PolyKante> kanten;
public List<PolyKante> Kanten
{
get
{
return kanten;
}
set
{
kanten = value;
}
}
}
}

View File

@@ -0,0 +1,59 @@
namespace XMLParser.Model
{
public sealed class InspizierteAbwassertechnischeAnlage
{
string objektbezeichnung;
Lage lage;
EAnlagetyp anlagentyp;
OptischeInspektion optischeInspektion;
public string Objektbezeichnung
{
get
{
return objektbezeichnung;
}
set
{
objektbezeichnung = value;
}
}
public EAnlagetyp Anlagentyp
{
get
{
return anlagentyp;
}
set
{
anlagentyp = value;
}
}
public OptischeInspektion OptischeInspektion
{
get
{
return optischeInspektion;
}
set
{
optischeInspektion = value;
}
}
public Lage Lage
{
get
{
return lage;
}
set
{
lage = value;
}
}
public override string ToString()
{
return objektbezeichnung + " " + optischeInspektion.Rohrleitung.Grunddaten.Profilbreite;
}
}
}

View File

@@ -0,0 +1,13 @@
namespace XMLParser.Model
{
public class KanalObjekt
{
public string XmlFileName {get;set;}
public AbwassertechnischeAnlage Stammdaten { get; set; }
public InspizierteAbwassertechnischeAnlage Inspektionsdaten { get; set; }
public override string ToString()
{
return string.Format("{0} ({1})",Stammdaten.Objektbezeichnung,Inspektionsdaten.OptischeInspektion.Rohrleitung.Grunddaten.Profilbreite);
}
}
}

26
XMLParser.Model/Kante.cs Normal file
View File

@@ -0,0 +1,26 @@
namespace XMLParser.Model
{
public class Kante
{
decimal sohlhoeheZulauf;
decimal sohlhoeheAblauf;
Knoten knotenZulauf;
Knoten knotenAblauf;
int knotenAblaufTyp;
int knotenZulaufTyp;
bool isFiktiveLeitung = true;
Profil profil;
public string knotenZulaufTemp;
public string knotenAblaufTemp;
public decimal SohlhoeheZulauf { get => sohlhoeheZulauf; set => sohlhoeheZulauf = value; }
public decimal SohlhoeheAblauf { get => sohlhoeheAblauf; set => sohlhoeheAblauf = value; }
public Knoten KnotenZulauf { get => knotenZulauf; set => knotenZulauf = value; }
public Knoten KnotenAblauf { get => knotenAblauf; set => knotenAblauf = value; }
public int KnotenAblaufTyp { get => knotenAblaufTyp; set => knotenAblaufTyp = value; }
public int KnotenZulaufTyp { get => knotenZulaufTyp; set => knotenZulaufTyp = value; }
public bool IsFiktiveLeitung { get => isFiktiveLeitung; set => isFiktiveLeitung = value; }
public Profil Profil { get => profil; set => profil = value; }
}
}

13
XMLParser.Model/Knoten.cs Normal file
View File

@@ -0,0 +1,13 @@
namespace XMLParser.Model
{
public class Knoten
{
EKnotenTyp knotenTyp;
Anschlusspunkt anschlusspunkt;
Schacht schacht;
public EKnotenTyp KnotenTyp { get => knotenTyp; set => knotenTyp = value; }
public Schacht Schacht { get => schacht; set => schacht = value; }
public Anschlusspunkt Anschlusspunkt { get => anschlusspunkt; set => anschlusspunkt = value; }
}
}

36
XMLParser.Model/Lage.cs Normal file
View File

@@ -0,0 +1,36 @@
namespace XMLParser.Model
{
public class Lage
{
string strassename;
string ortname;
public string Strassename
{
get
{
return strassename;
}
set
{
strassename = value;
}
}
public string Ortname
{
get
{
return ortname;
}
set
{
ortname = value;
}
}
public Lage(string strassename, string ortname)
{
this.strassename = strassename;
this.ortname = ortname;
}
}
}

View File

@@ -0,0 +1,64 @@
using System;
namespace XMLParser.Model
{
public class OptischeInspektion
{
int auftragskennung;
DateTime inspektionstime;
Rohrleitung rohrleitung;
string nameUntersucher;
EWetter wetter;
bool reinigung;
EWasserhaltung wasserhaltung;
EInspektionverfahren inspektionsverfahren;
public DateTime Inspektionstime
{
set
{
inspektionstime = value;
}
get
{
return inspektionstime;
}
}
public string Inspektionsdatum
{
get
{
return inspektionstime.ToShortDateString();
}
/*set
{
throw new NotImplementedException();
//inspektionsdatum = value;
}*/
}
public string Inspektionszeit
{
get
{
return inspektionstime.ToShortTimeString();
}
}
public Rohrleitung Rohrleitung
{
get
{
return rohrleitung;
}
set
{
rohrleitung = value;
}
}
public string NameUntersucher { get => nameUntersucher; set => nameUntersucher = value; }
public EWetter Wetter { get => wetter; set => wetter = value; }
public bool Reinigung { get => reinigung; set => reinigung = value; }
public EWasserhaltung Wasserhaltung { get => wasserhaltung; set => wasserhaltung = value; }
public EInspektionverfahren Inspektionsverfahren { get => inspektionsverfahren; set => inspektionsverfahren = value; }
public int Auftragskennung { get => auftragskennung; set => auftragskennung = value; }
}
}

View File

@@ -0,0 +1,25 @@
using System.Collections.Generic;
namespace XMLParser.Model
{
public class PolyKante
{
PolyKanteAttribute start;
PolyKanteAttribute ende;
public PolyKanteAttribute Start { get => start; set => start = value; }
public PolyKanteAttribute Ende { get => ende; set => ende = value; }
}
public class PolyKanteAttribute
{
decimal rechtswert;
decimal hochwert;
decimal punkthoehe;
string punktattributAbwasser;
public decimal Rechtswert { get => rechtswert; set => rechtswert = value; }
public decimal Hochwert { get => hochwert; set => hochwert = value; }
public decimal Punkthoehe { get => punkthoehe; set => punkthoehe = value; }
public string PunktattributAbwasser { get => punktattributAbwasser; set => punktattributAbwasser = value; }
}
}

20
XMLParser.Model/Profil.cs Normal file
View File

@@ -0,0 +1,20 @@
namespace XMLParser.Model
{
public class Profil
{
int profilart;
int profilbreite;
int profilhoehe;
public Profil(int profilart, int profilbreite, int profilhoehe)
{
Profilart = profilart;
Profilbreite = profilbreite;
Profilhoehe = profilhoehe;
}
public int Profilart { get => profilart; set => profilart = value; }
public int Profilbreite { get => profilbreite; set => profilbreite = value; }
public int Profilhoehe { get => profilhoehe; set => profilhoehe = value; }
}
}

View File

@@ -0,0 +1,46 @@
namespace XMLParser.Model
{
public class RGrunddaten
{
string knotenZulauf;
EKnotenTyp knotenZulaufTyp;
string knotenAblauf;
EKnotenTyp knotenAblaufTyp;
int profilhoehe;
int profilbreite;
int profilart;
string material;
string kanalart;
Anschlussdaten anschlussddaten = null;
int herkunftProfilmasse;
int herkunftMaterial;
decimal regeleinzelrohrlaenge;
int artAuskleidung;
string innenschutz;
public string KnotenZulauf { get => knotenZulauf; set => knotenZulauf = value; }
public EKnotenTyp KnotenZulaufTyp { get => knotenZulaufTyp; set => knotenZulaufTyp = value; }
public string KnotenAblauf { get => knotenAblauf; set => knotenAblauf = value; }
public EKnotenTyp KnotenAblaufTyp { get => knotenAblaufTyp; set => knotenAblaufTyp = value; }
public int Profilhoehe { get => profilhoehe; set => profilhoehe = value; }
public int Profilbreite { get => profilbreite; set => profilbreite = value; }
public int Profilart { get => profilart; set => profilart = value; }
public string Material { get => material; set => material = value; }
public string Kanalart { get => kanalart; set => kanalart = value; }
public Anschlussdaten Anschlussddaten { get => anschlussddaten; set => anschlussddaten = value; }
public int HerkunftProfilmasse { get => herkunftProfilmasse; set => herkunftProfilmasse = value; }
public int HerkunftMaterial { get => herkunftMaterial; set => herkunftMaterial = value; }
public decimal Regeleinzelrohrlaenge { get => regeleinzelrohrlaenge; set => regeleinzelrohrlaenge = value; }
public int ArtAuskleidung { get => artAuskleidung; set => artAuskleidung = value; }
public bool HasGrundleitung
{
get
{
return anschlussddaten != null;
}
}
public string Innenschutz { get => innenschutz; set => innenschutz = value; }
}
}

View File

@@ -0,0 +1,45 @@
namespace XMLParser.Model
{
public struct Quantifizierung
{
public decimal Numerisch;
public string Text;
public override string ToString()
{
if (Text != null)
return Text;
if (Numerisch == 0)
return "";
return Numerisch.ToString();
}
}
public class RZustand
{
decimal station;
string inspektionskode;
string charakterisierung1;
string charakterisierung2;
bool verbindung;
Quantifizierung quantifizierung1;
Quantifizierung quantifizierung2;
string streckenschaden;
int streckenschadennr;
int positionVon;
int positionBis;
string kommentar;
public decimal Station { get => station; set => station = value; }
public string Inspektionskode { get => inspektionskode; set => inspektionskode = value; }
public string Charakterisierung1 { get => charakterisierung1; set => charakterisierung1 = value; }
public string Charakterisierung2 { get => charakterisierung2; set => charakterisierung2 = value; }
public bool Verbindung { get => verbindung; set => verbindung = value; }
public Quantifizierung Quantifizierung1 { get => quantifizierung1; set => quantifizierung1 = value; }
public Quantifizierung Quantifizierung2 { get => quantifizierung2; set => quantifizierung2 = value; }
public string Streckenschaden { get => streckenschaden; set => streckenschaden = value; }
public int Streckenschadennr { get => streckenschadennr; set => streckenschadennr = value; }
public int PositionVon { get => positionVon; set => positionVon = value; }
public int PositionBis { get => positionBis; set => positionBis = value; }
public string Kommentar { get => kommentar; set => kommentar = value; }
}
}

View File

@@ -0,0 +1,76 @@
using System.Collections.Generic;
namespace XMLParser.Model
{
public class Rohrleitung
{
ERohrleitungstyp rohrleitungstyp;
decimal inspektionslaenge;
string inspektionsrichtung;
RGrunddaten grunddaten = null;
List<RZustand> zustaende = null;
public ERohrleitungstyp Rohrleitungstyp
{
get
{
return rohrleitungstyp;
}
set
{
rohrleitungstyp = value;
}
}
public decimal Inspektionslaenge
{
get
{
return inspektionslaenge;
}
set
{
inspektionslaenge = value;
}
}
public string Inspektionsrichtung
{
get
{
switch(inspektionsrichtung)
{
case "U": return "Gegen Fliessrichtung";
case "O": return "In Fliessrichtung";
default: return "Fliessrichtungangabe nicht bekannt(" + inspektionsrichtung + ")";
}
}
set
{
inspektionsrichtung = value;
}
}
public List<RZustand> Zustaende
{
get
{
return zustaende;
}
set
{
zustaende = value;
}
}
public RGrunddaten Grunddaten
{
get
{
return grunddaten;
}
set
{
grunddaten = value;
}
}
}
}

View File

@@ -0,0 +1,11 @@
namespace XMLParser.Model
{
public class Schacht
{
ESchachtFunktion schachtFunktion;
decimal schachtTiefe;
public ESchachtFunktion SchachtFunktion { get => schachtFunktion; set => schachtFunktion = value; }
public decimal SchachtTiefe { get => schachtTiefe; set => schachtTiefe = value; }
}
}

View File

@@ -0,0 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
</PropertyGroup>
</Project>