Dictionary auf Enums umgestellt
This commit is contained in:
@@ -6,9 +6,9 @@ namespace XMLParser
|
|||||||
{
|
{
|
||||||
public static class Calculate
|
public static class Calculate
|
||||||
{
|
{
|
||||||
public static Dictionary<string,decimal> CalculateDay(List<KanalObjekt> inspektionen)
|
public static Dictionary<ECalculatedResult,decimal> CalculateDay(List<KanalObjekt> inspektionen)
|
||||||
{
|
{
|
||||||
Dictionary<string,decimal> result = new Dictionary<string, decimal>();
|
Dictionary<ECalculatedResult,decimal> result = new Dictionary<ECalculatedResult, decimal>();
|
||||||
decimal HauptkanalLaenge =0.0m;
|
decimal HauptkanalLaenge =0.0m;
|
||||||
|
|
||||||
inspektionen
|
inspektionen
|
||||||
@@ -28,16 +28,16 @@ namespace XMLParser
|
|||||||
|
|
||||||
SOs.AddRange(Anschlussleitungen);
|
SOs.AddRange(Anschlussleitungen);
|
||||||
|
|
||||||
result.Add("StraßenablaufCount",SEs.Count);
|
result.Add(ECalculatedResult.STRASSENABLAUFANZAHL,SEs.Count);
|
||||||
result.Add("SonstigeCount",SOs.Count);
|
result.Add(ECalculatedResult.SONSTIGEANZAHL,SOs.Count);
|
||||||
|
|
||||||
decimal SEPauschal = 34.00m * SEs.Count;
|
decimal SEPauschal = 34.00m * SEs.Count;
|
||||||
decimal SOPauschal = 45.00m * SOs.Count;
|
decimal SOPauschal = 45.00m * SOs.Count;
|
||||||
decimal HauptkanalPreis = 1.60m * HauptkanalLaenge;
|
decimal HauptkanalPreis = 1.60m * HauptkanalLaenge;
|
||||||
|
|
||||||
result.Add("StraßenablaufPauschal",SEPauschal);
|
result.Add(ECalculatedResult.STRASSENABLAUFUMSATZ,SEPauschal);
|
||||||
result.Add("SonstigesPauschal",SOPauschal);
|
result.Add(ECalculatedResult.SONSTIGEUMSATZ,SOPauschal);
|
||||||
result.Add("HauptkanalPreis",HauptkanalPreis);
|
result.Add(ECalculatedResult.HAUPTKANALUMSATZ,HauptkanalPreis);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -52,9 +52,9 @@ namespace XMLParser
|
|||||||
});
|
});
|
||||||
|
|
||||||
decimal LeitungsOverlengthPreis = LeitungOverlength * 2.4m;
|
decimal LeitungsOverlengthPreis = LeitungOverlength * 2.4m;
|
||||||
result.Add("LeitungÜberlaenge",LeitungOverlength);
|
result.Add(ECalculatedResult.LAENGEZULAGEMETER,LeitungOverlength);
|
||||||
result.Add("PreisLeitung",LeitungsOverlengthPreis);
|
result.Add(ECalculatedResult.LAENGEZULAGEUMSATZ,LeitungsOverlengthPreis);
|
||||||
result.Add("Umsatz",(LeitungsOverlengthPreis + HauptkanalPreis + SEPauschal + SOPauschal));
|
result.Add(ECalculatedResult.GESAMTUMSATZ,(LeitungsOverlengthPreis + HauptkanalPreis + SEPauschal + SOPauschal));
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -65,4 +65,15 @@ namespace XMLParser
|
|||||||
REINIGUNGSOEFFNUNG,
|
REINIGUNGSOEFFNUNG,
|
||||||
PROBENAHMEOEFFNUNG
|
PROBENAHMEOEFFNUNG
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public enum ECalculatedResult {
|
||||||
|
STRASSENABLAUFANZAHL,
|
||||||
|
SONSTIGEANZAHL,
|
||||||
|
STRASSENABLAUFUMSATZ,
|
||||||
|
SONSTIGEUMSATZ,
|
||||||
|
HAUPTKANALUMSATZ,
|
||||||
|
LAENGEZULAGEMETER,
|
||||||
|
LAENGEZULAGEUMSATZ,
|
||||||
|
GESAMTUMSATZ
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,11 +17,11 @@ namespace XMLParserTest
|
|||||||
Assert.AreEqual(35,kanalObjekts.Count);
|
Assert.AreEqual(35,kanalObjekts.Count);
|
||||||
|
|
||||||
var umsatz = Calculate.CalculateDay(kanalObjekts);
|
var umsatz = Calculate.CalculateDay(kanalObjekts);
|
||||||
Assert.AreEqual(3,umsatz["StraßenablaufCount"]);
|
Assert.AreEqual(3,umsatz[ECalculatedResult.STRASSENABLAUFANZAHL]);
|
||||||
Assert.AreEqual(29,umsatz["SonstigeCount"]);
|
Assert.AreEqual(29,umsatz[ECalculatedResult.SONSTIGEANZAHL]);
|
||||||
Assert.AreEqual(102.00m,umsatz["StraßenablaufPauschal"]);
|
Assert.AreEqual(102.00m,umsatz[ECalculatedResult.STRASSENABLAUFUMSATZ]);
|
||||||
Assert.AreEqual(1305.00m,umsatz["SonstigesPauschal"]);
|
Assert.AreEqual(1305.00m,umsatz[ECalculatedResult.SONSTIGEUMSATZ]);
|
||||||
Assert.AreEqual(27.50m,umsatz["LeitungÜberlaenge"]);
|
Assert.AreEqual(27.50m,umsatz[ECalculatedResult.LAENGEZULAGEUMSATZ]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -28,9 +28,9 @@ namespace XMLProgramm
|
|||||||
decimal gesamt = 0.0m;
|
decimal gesamt = 0.0m;
|
||||||
//Dictionary<string,decimal> s = CalculateDay(objekte.FindAll(x => x.Inspektionsdaten.OptischeInspektion.Inspektionsdatum.Equals("05.08.2021")));
|
//Dictionary<string,decimal> s = CalculateDay(objekte.FindAll(x => x.Inspektionsdaten.OptischeInspektion.Inspektionsdatum.Equals("05.08.2021")));
|
||||||
foreach(string datum in datums) {
|
foreach(string datum in datums) {
|
||||||
Dictionary<string,decimal> s = Calculate.CalculateDay(objekte.FindAll(x => x.Inspektionsdaten.OptischeInspektion.Inspektionsdatum.Equals(datum)));
|
Dictionary<ECalculatedResult,decimal> s = Calculate.CalculateDay(objekte.FindAll(x => x.Inspektionsdaten.OptischeInspektion.Inspektionsdatum.Equals(datum)));
|
||||||
Console.WriteLine("Umsatz am : "+datum + " " + s["Umsatz"]);
|
Console.WriteLine("Umsatz am : "+datum + " " + s[ECalculatedResult.GESAMTUMSATZ]);
|
||||||
gesamt +=s["Umsatz"];
|
gesamt +=s[ECalculatedResult.GESAMTUMSATZ];
|
||||||
//if(datum.Equals("05.08.2021")) Debugger.Break();
|
//if(datum.Equals("05.08.2021")) Debugger.Break();
|
||||||
}
|
}
|
||||||
Console.WriteLine(gesamt + " Durchschnitt : "+gesamt / datums.Count());
|
Console.WriteLine(gesamt + " Durchschnitt : "+gesamt / datums.Count());
|
||||||
|
|||||||
Reference in New Issue
Block a user