86 lines
3.1 KiB
C#
86 lines
3.1 KiB
C#
// See https://aka.ms/new-console-template for more information
|
|
|
|
using System.Collections;
|
|
using System.Diagnostics;
|
|
using System.Xml;
|
|
using System.Windows.Markup;
|
|
using DaSaSo.DatabaseConverter;
|
|
using DaSaSo.Domain.Services;
|
|
using DaSaSo.Domain.Model;
|
|
using DaSaSo.EntityFramework.Services;
|
|
using DaSaSo.EntityFramework;
|
|
|
|
Console.WriteLine("Hello, World!");
|
|
ConvertXML convertXML = new ConvertXML();
|
|
convertXML.parseXML();
|
|
WriteToNewDB(convertXML.GetProjekts);
|
|
Console.WriteLine("Fertig");
|
|
|
|
Console.ReadLine();
|
|
|
|
static void WriteToNewDB(List<Projekt> alteDB)
|
|
{
|
|
IDataService<Project> dataService = new GenericDataService<Project>(new DaSaSoDbContextFactory("Host = localhost; Database = dasaso; Username = kansan; Password = kansan"));
|
|
foreach(Projekt projekt in alteDB)
|
|
{
|
|
Client newClient = new Client();
|
|
/*{
|
|
Firstname = projekt.Auftraggeber.Name,
|
|
Street = projekt.Auftraggeber.Strasse,
|
|
Country = projekt.Auftraggeber.Ort
|
|
};*/
|
|
if(projekt.Auftraggeber == null)
|
|
{
|
|
newClient.Firstname = "";
|
|
newClient.Street = "";
|
|
newClient.Country ="";
|
|
}
|
|
else
|
|
{
|
|
newClient.Firstname = projekt.Auftraggeber.Name;
|
|
newClient.Street = projekt.Auftraggeber.Strasse;
|
|
newClient.Country = projekt.Auftraggeber.Ort;
|
|
}
|
|
Project project = new Project();
|
|
project.Client = newClient;
|
|
project.Name = projekt.Ort;
|
|
|
|
List<Buildingsite> buildingsites = new List<Buildingsite>();
|
|
|
|
Buildingsite buildingsite = new Buildingsite();
|
|
buildingsite.ContactPerson = projekt.Auftraggeber != null? projekt.Auftraggeber.Ansprechpartner : "";
|
|
buildingsite.BuildingSiteNumber = projekt.ProjektNummer;
|
|
buildingsite.Project = project;
|
|
|
|
List<SewerObject> Sewers = new List<SewerObject>();
|
|
foreach(Inspektionsobjekt inspektionsobjekt in projekt.inspektionsobjekte)
|
|
{
|
|
SewerObject sewerObject = new SewerObject();
|
|
sewerObject.BuildingSite = buildingsite;
|
|
|
|
sewerObject.DN = inspektionsobjekt.Kanalrohrweite;
|
|
sewerObject.ObjektName = inspektionsobjekt.Objektbezeichnung;
|
|
sewerObject.Material = inspektionsobjekt.RohrMaterial;
|
|
sewerObject.PunktOben = new SewerPoint()
|
|
{
|
|
Objektnummer = inspektionsobjekt.VonPunkt
|
|
};
|
|
sewerObject.PunktObenType = DaSaSo.Domain.Enums.EPointType.Schacht;
|
|
sewerObject.PunktUnten = new SewerPoint()
|
|
{
|
|
Objektnummer = inspektionsobjekt.BisPunkt
|
|
};
|
|
sewerObject.PunktUntenType = DaSaSo.Domain.Enums.EPointType.Anschlusspunkt;
|
|
sewerObject.StreetName = inspektionsobjekt.StrasseName;
|
|
sewerObject.SewerLength = inspektionsobjekt.Haltungslaenge;
|
|
Sewers.Add(sewerObject);
|
|
}
|
|
buildingsite.SewerObjects = Sewers;
|
|
buildingsites.Add(buildingsite);
|
|
project.BuildingSites = buildingsites;
|
|
|
|
dataService.Create(project);
|
|
}
|
|
|
|
}
|