Textfilewriter erstellt

This commit is contained in:
Husky
2021-02-25 10:52:43 +01:00
parent 709f16ad47
commit f07978ce04
3 changed files with 34 additions and 11 deletions

View File

@@ -1,10 +1,14 @@
using System;
using System.Collections.Generic;
using System.Linq;
namespace Models {
public class PressureTest {
List<MeasureData> measuredatas = new List<MeasureData>();
bool bestanden;
public string prüfdatum {get => measuredatas.Last().Datum.ToShortDateString();}
public bool Bestanden {get => bestanden; set => bestanden = value;}
public List<MeasureData> Measuredatas { get => measuredatas; set => measuredatas = value; }
}
}

View File

@@ -12,7 +12,9 @@ namespace ProtokollWriter {
{
string[] content;
ArrayList newFile = new ArrayList();
int prüfungsnummer = 0;
string targetFile;
Inspektionsobjekt inspObjekt;
Hashtable hashtable = new Hashtable() {
{"DATUM",""},
@@ -36,36 +38,52 @@ namespace ProtokollWriter {
{"BEMERKUNG","" }
};
Inspektionsobjekt inspObjekt;
public void WriteProtokoll(Inspektionsobjekt inspektionsobjekt)
public void WriteProtokoll(Inspektionsobjekt inspektionsobjekt, uint prüfungsnummer)
{
inspObjekt = inspektionsobjekt;
this.prüfungsnummer = (int)prüfungsnummer;
this.targetFile = string.Format("{0}_{1}.txt",inspObjekt.Objektname);
}
void ReadVorlage() {
content = File.ReadAllLines("./vorlage.txt",Encoding.Default);
}
string getPrüfnummer() {
string[] pruefung = inspObjekt.PressureTests[prüfungsnummer].prüfdatum.Split('.');
return string.Format("{0}{1}{2}-{3}", pruefung[2], pruefung[1], pruefung[0]);
}
double getPruefVolumen() {
double durchmesser = ((double)inspObjekt.Durchmesser / 2)/1000;
double laenge = (double)inspObjekt.ObjektLänge;
double Volumen = Math.PI * (durchmesser * durchmesser) * laenge;
Volumen = Math.Round(Volumen, 3);
return Volumen;
}
void Ersetzen() {
hashtable["DATUM"] = prüfdatum;
hashtable["DATUM"] = inspObjekt.PressureTests[prüfungsnummer].prüfdatum;
hashtable["PRUEFNR"] = getPrüfnummer();
hashtable["DN"] = inspObjekt.Durchmesser;
hashtable["LAENGE"] = inspObjekt.ObjektLänge;
hashtable["VOLUMEN"] = PruefVolumen();
hashtable["VOLUMEN"] = getPruefVolumen();
hashtable["AUFTRAGGEBER_NAME"] = inspObjekt.Bauvorhaben.Auftraggeber.Name;
hashtable["AUFTRAGGEBER_STRASSE"] = inspObjekt.Bauvorhaben.Auftraggeber.Strasse;
hashtable["AUFTRAGGEBER_ORT"] = inspObjekt.Bauvorhaben.Auftraggeber.Ort;
hashtable["AUFTRAGGEBER_TEL"] = inspObjekt.Bauvorhaben.Auftraggeber.Tel;
hashtable["VONSCHACHT"] = inspObjekt.ObereSchacht;
hashtable["BISSCHACHT"] = inspObjekt.UntereSchacht;
hashtable["PROJEKTNR"] = Projektnummer;
hashtable["PROJEKTNR"] = "000";//Projektnummer;
hashtable["HALTUNGNR"] = inspObjekt.Objektname != null ? inspObjekt.Objektname : inspObjekt.ObereSchacht;
hashtable["MESSDATEI"] = inspObjekt.Objektname != null ? inspObjekt.Objektname : inspObjekt.ObereSchacht;
hashtable["BAUVORHABEN_STRASSE"] = inspObjekt.Bauvorhaben.Strasse;
hashtable["BAUVORHABEN_ORT"] = inspObjekt.Bauvorhaben.Ort;
hashtable["BAUVORHABEN_STANDORT"] = inspObjekt.Bauvorhaben.Strasse;
hashtable["BEMERKUNG"] = inspObjekt.Bemerkung;
hashtable["PRUEFRESULTAT"] = Bestanden ? "Prüfung Bestanden" : "Prüfung N I C H T Bestanden";
hashtable["PRUEFRESULTAT"] = inspObjekt.PressureTests[prüfungsnummer].Bestanden ? "Prüfung Bestanden" : "Prüfung N I C H T Bestanden";
}
void WriteFile() {
string zeile;
@@ -83,7 +101,8 @@ namespace ProtokollWriter {
} else {
if(cmd.StartsWith("@")) {
string n = "";
foreach(MeasureData data in inspObjekt.PressureTests[0].Measuredatas) {
foreach(MeasureData data in inspObjekt.PressureTests[prüfungsnummer].Measuredatas) {
n = string.Format("{0}{1}\r\n",n,data.ToString());
}
zeile = n;

View File

@@ -3,6 +3,6 @@ using Models;
namespace ProtokollWriterContract {
public interface IProtokollWriter {
void WriteProtokoll(Inspektionsobjekt inspektionsobjekt);
void WriteProtokoll(Inspektionsobjekt inspektionsobjekt,uint prüfungsnummer);
}
}