56 lines
3.1 KiB
C#
56 lines
3.1 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace dcnsanplanung.shared.Helper
|
|
{
|
|
public class ImportToSoftware
|
|
{
|
|
public List<Model.Haltung> haltungen = new List<Model.Haltung>();
|
|
public ImportToSoftware(string XMLFile)
|
|
{
|
|
ReadSchnittstelle(XMLFile);
|
|
}
|
|
|
|
private void ReadSchnittstelle(string XMLFile)
|
|
{
|
|
List<Schnittstelle.Import.XML.v2013.Model.KanalObjekt> source_KanalObjekt = new Schnittstelle.Import.XML.v2013.XML2013(XMLFile).KanalObjekte.FindAll(x => x.Inspektionsdaten.Anlagentyp == Schnittstelle.Import.XML.v2013.Model.EAnlagetyp.Haltung);
|
|
|
|
//List<Model.Haltung> haltungen = new List<Model.Haltung>();
|
|
foreach (Schnittstelle.Import.XML.v2013.Model.KanalObjekt src in source_KanalObjekt)
|
|
{
|
|
Model.Haltung haltung = new Model.Haltung();
|
|
haltung.Guid = Guid.NewGuid();
|
|
haltung.Objektbezeichnung = src.Stammdaten.Objektbezeichnung;
|
|
haltung.Material = src.Inspektionsdaten.OptischeInspektion.Rohrleitung.Grunddaten.Material;
|
|
haltung.DN = Convert.ToUInt32(src.Inspektionsdaten.OptischeInspektion.Rohrleitung.Grunddaten.Profilbreite);
|
|
haltung.Bewertungklasse = src.Inspektionsdaten.OptischeInspektion.Rohrleitung.Bewertung == null ? 6 : src.Inspektionsdaten.OptischeInspektion.Rohrleitung.Bewertung.KlasseAutomatisch;
|
|
|
|
List<Model.Schaden> kodierungen = new List<Model.Schaden>();
|
|
foreach (Schnittstelle.Import.XML.v2013.Model.RZustand src_kodierung in src.Inspektionsdaten.OptischeInspektion.Rohrleitung.Zustaende)
|
|
{
|
|
Model.Schaden kodierung = new Model.Schaden();
|
|
kodierung.Guid = Guid.NewGuid();
|
|
kodierung.Ref_Haltung_Guid = haltung.Guid;
|
|
kodierung.Entfernung = src_kodierung.Station;
|
|
kodierung.Hauptcode = src_kodierung.Inspektionskode;
|
|
kodierung.CH1 = src_kodierung.Charakterisierung1 != null ? src_kodierung.Charakterisierung1 : "";
|
|
kodierung.CH2 = src_kodierung.Charakterisierung2 != null ? src_kodierung.Charakterisierung2 : "";
|
|
kodierung.Q1 = src_kodierung.Quantifizierung1.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);
|
|
//kodierung.Schadensklasse = src_kodierung.Klassifizierung == null ? 6 : src_kodierung.Klassifizierung.MaxSKeAuto;
|
|
kodierungen.Add(kodierung);
|
|
}
|
|
haltung.Kodierungen = kodierungen;
|
|
|
|
haltungen.Add(haltung);
|
|
}
|
|
}
|
|
}
|
|
}
|