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