private decimal GetWiederbeschaffungswert(IFlaecheProvider strassenabschnittBase, WiederbeschaffungswertKatalogModel wieder)
        {
            //ToDo: Clarify! Should we calculate with Trottoir?
            if (strassenabschnittBase.HasTrottoirInformation())
            {
                return(strassenabschnittBase.FlaecheFahrbahn() * wieder.FlaecheFahrbahn + wieder.FlaecheTrottoir * strassenabschnittBase.FlaecheTrottoir());
            }

            return(strassenabschnittBase.GesamtFlaeche() * wieder.GesamtflaecheFahrbahn);
        }
 public static decimal FlaecheTrottoirRechts(this IFlaecheProvider flaecheProvider)
 {
     return(flaecheProvider.Laenge * flaecheProvider.BreiteTrottoirRechts ?? 0);
 }
 public static decimal FlaecheFahrbahn(this IFlaecheProvider flaecheProvider)
 {
     return(flaecheProvider.Laenge * flaecheProvider.BreiteFahrbahn);
 }
 public static decimal FlaecheTrottoir(this IFlaecheProvider flaecheProvider)
 {
     return(flaecheProvider.FlaecheTrottoirLinks() + flaecheProvider.FlaecheTrottoirRechts());
 }
 public static decimal GesamtFlaeche(this IFlaecheProvider flaecheProvider)
 {
     return(flaecheProvider.Laenge * (flaecheProvider.BreiteFahrbahn + (flaecheProvider.BreiteTrottoirLinks ?? 0) + (flaecheProvider.BreiteTrottoirRechts ?? 0)));
 }
 public static bool HasTrottoir(this IFlaecheProvider flaecheProvider)
 {
     return(flaecheProvider.Trottoir != TrottoirTyp.NochNichtErfasst && flaecheProvider.Trottoir != TrottoirTyp.KeinTrottoir);
 }
 public static bool HasTrottoirInformation(this IFlaecheProvider flaecheProvider)
 {
     return(flaecheProvider.Trottoir != TrottoirTyp.NochNichtErfasst);
 }