Files
Kanalsanierungsverwaltung/KlassenBIB/InlinerSanierung.cs
2018-07-21 12:26:34 +02:00

230 lines
8.7 KiB
C#

using SanShared;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace KlassenBIB
{
/// <summary>
/// Inliner class
///
/// </summary>
public sealed class InlinerSanierung : Sanieren, IMakeProtokol
{
double kalibrierUnterdruck = -0.5;
double kalibierWalzenAbstand = 0.9;
double harzKalibrierTemperatur;
DateTime datumKalibrierung;
string harzChargenummer;
string linerChargenummer;
string harzTyp;
string linerTyp;
double harzbedarf = 1.8;
uint rueckholgeschwindigkeit = 24;
bool geschlosseneEnde = false;
DateTime anfangAushaertung;
DateTime endeAushaertung;
/// <summary>
/// Gibt den kompletten Harzbedarf auf die Haltungslänge bezogen zurück
/// </summary>
public double GetGesamtHarzbedarf(double haltungslaenge)
{
return haltungslaenge * harzbedarf;
}
/// <summary>
///
/// </summary>
/// <param name="projektpfad"></param>
/// <returns></returns>
public override string CheckVerzeichnisse(string projektpfad)
{
string path = Path.Combine(projektpfad, PfadZurSan);
if (!Directory.Exists(path)) Directory.CreateDirectory(path);
string mypath = Path.Combine(path, Verzeichnispfad);
if (!Directory.Exists(mypath)) Directory.CreateDirectory(mypath);
return mypath;
}
/// <summary>
///
/// </summary>
/// <param name="destinationPath"></param>
/// <returns></returns>
public Hashtable MakeProtokoll(string destinationPath)
{
Hashtable grunddaten = new Hashtable()
{
{"AG_Vorname","" },
{"KLP_Nummer","" },
{"KLP_Datum","" },
{"AG_Ort","" },
{"AG_Strasse","" },
{"AG_Ansprechpartner","" },
{"BM_Ort","" },
{"BM_Strasse","" },
{"BM_Schacht_von","" },
{"BM_Schacht_bis","" },
{"BM_Haltungsmat","" },
{"BM_Haltung_DN","" },
{"BM_Haltunglaenge","" },
{ "KL_Wetter","" },
{ "Temp_Aussen","" },
{ "KL_Temp_Kanal","" },
{ "KL_Gen_true","" },
{ "KL_Gen_false","" },
{ "KL_WH_true","" },
{ "KL_WH_false", "" },
{ "KL_STVO_true","" },
{ "KL_STVO_false","" },
{ "KL_HD_true","" },
{ "KL_mech_true","" },
{ "KL_rob_true","" },
{ "KL_HD_date","" },
{ "KL_Besatzung", "" },
{"liner_laenge","" },
{"Charge_Liner","" },
{"Charge_Harz","" },
{"harz_bedarf_m","" },
{"gesamt_harz","" },
{"temperatur_harz","" },
{"datum_kalibrierung","" },
{"walzen_abstand","" },
{"vakuum","" },
{"time_start","" },
{"time_ende","" },
{"UVImage","" }
};
double LaengeGesamt = this.Inspektionsobjekt.Haltungslaenge + this.Inspektionsobjekt.Schachtlaenge;
grunddaten["AG_Vorname"] = "";
grunddaten["KLP_Nummer"] = "";
grunddaten["KLP_Datum"] = DateTime.Now.ToShortDateString();
grunddaten["AG_Ort"] = "";
grunddaten["AG_Strasse"] = "";
grunddaten["AG_Ansprechpartner"] = "";
grunddaten["BM_Ort"] = Inspektionsobjekt.OrtName;
grunddaten["BM_Strasse"] = Inspektionsobjekt.StrasseName;
grunddaten["BM_Schacht_von"] = Inspektionsobjekt.VonPunkt;
grunddaten["BM_Schacht_bis"] = Inspektionsobjekt.BisPunkt ;
grunddaten["BM_Haltungsmat"] = Inspektionsobjekt.RohrMaterial;
grunddaten["BM_Haltung_DN"] = Inspektionsobjekt.Kanalrohrweite;
grunddaten["BM_Haltunglaenge"] = Inspektionsobjekt.Haltungslaenge;
grunddaten["KL_Wetter"] = this.Wetter;
grunddaten["Temp_Aussen"] = this.TempAusen;
grunddaten["KL_Temp_Kanal"] = this.TempKanal;
grunddaten["KL_Gen_true"] = this.GenehmigungVorhanden ? "X" : "" ;
grunddaten["KL_Gen_false"] = this.GenehmigungVorhanden ? "": "X";
grunddaten["KL_WH_true"] = this.WasserhaltungEingerichtet ? "X" : "";
grunddaten["KL_WH_false"] = this.WasserhaltungEingerichtet ? " ":"X" ;
grunddaten["KL_STVO_true"] = this.STVOAbsicherung ? "X" : "";
grunddaten["KL_STVO_false"] = this.STVOAbsicherung ? "":"X";
grunddaten["KL_HD_true"] = "";
grunddaten["KL_mech_true"] = "";
grunddaten["KL_rob_true"] = "";
grunddaten["KL_HD_date"] = this.Datum.ToShortDateString();
grunddaten["KL_Besatzung"] = "";
grunddaten["liner_laenge"] = LaengeGesamt;
grunddaten["Charge_Liner"] = this.LinerChargenummer;
grunddaten["Charge_Harz"] = this.HarzChargenummer;
grunddaten["harz_bedarf_m"] = harzbedarf;
grunddaten["gesamt_harz"] = LaengeGesamt * harzbedarf;
grunddaten["temperatur_harz"] = this.HarzKalibrierTemperatur;
grunddaten["datum_kalibrierung"] = this.DatumKalibrierung.ToShortDateString();
grunddaten["walzen_abstand"] = this.KalibierWalzenAbstand;
grunddaten["vakuum"] = this.KalibrierUnterdruck;
grunddaten["time_start"] = this.AnfangAushaertung;
grunddaten["time_ende"] = this.EndeAushaertung;
grunddaten["UVImage"] = Path.Combine(destinationPath, "linerGraph.jpg");
return grunddaten;
}
/// <summary>
///
/// </summary>
public InlinerSanierung()
{
//datumKalibrierung = new DateTime();
Verzeichnispfad = "UVAnlage";
if (datumKalibrierung <= DateTime.MinValue || datumKalibrierung >= DateTime.MaxValue) datumKalibrierung = DateTime.Now;
}
/// <summary>
///
/// </summary>
public double KalibrierUnterdruck { get => kalibrierUnterdruck; set => kalibrierUnterdruck = value; }
/// <summary>
///
/// </summary>
public double KalibierWalzenAbstand { get => kalibierWalzenAbstand; set => kalibierWalzenAbstand = value; }
/// <summary>
///
/// </summary>
public double HarzKalibrierTemperatur { get => harzKalibrierTemperatur; set => harzKalibrierTemperatur = value; }
/// <summary>
///
/// </summary>
public DateTime DatumKalibrierung
{
get
{
Trace.WriteLine("DatumKali abgefragt");
return datumKalibrierung;
}
set
{
Trace.WriteLine("Datum kali gesetzt");
datumKalibrierung = value;
}
}
/// <summary>
///
/// </summary>
public string HarzChargenummer { get => harzChargenummer; set => harzChargenummer = value; }
/// <summary>
///
/// </summary>
public string LinerChargenummer { get => linerChargenummer; set => linerChargenummer = value; }
/// <summary>
///
/// </summary>
public double Harzbedarf { get => harzbedarf; set => harzbedarf = value; }
/// <summary>
///
/// </summary>
public uint Rueckholgeschwindigkeit { get => rueckholgeschwindigkeit; set => rueckholgeschwindigkeit = value; }
/// <summary>
///
/// </summary>
public bool GeschlosseneEnde { get => geschlosseneEnde; set => geschlosseneEnde = value; }
/// <summary>
///
/// </summary>
public double HarzBedarf { get => harzbedarf; set => harzbedarf = value; }
/// <summary>
///
/// </summary>
public string HarzTyp { get => harzTyp; set => harzTyp = value; }
/// <summary>
///
/// </summary>
public string LinerTyp { get => linerTyp; set => linerTyp = value; }
/// <summary>
///
/// </summary>
public DateTime AnfangAushaertung { get => anfangAushaertung; set => anfangAushaertung = value; }
/// <summary>
///
/// </summary>
public DateTime EndeAushaertung { get => endeAushaertung; set => endeAushaertung = value; }
}
}