private double CalcOther(Plumbing plumbing)
 {
     if (plumbing?.Other?.Doing == true)
     {
         if (plumbing.Other.PlumbingUsage.WaterQuantity == WaterQuantity.CubicMeterPerMonth)
         {
             return(plumbing.Other.PlumbingUsage.CubicMeterPerMonth.Value * plumbing.WaterActivityOther.Drink.Value * 12 / 100.0);
         }
         return(0);
     }
     return(0);
 }
 private double CalcPWA(Plumbing plumbing, BuildingType buildingType)
 {
     if (plumbing?.PWA?.Doing == true)
     {
         if (plumbing.PWA.PlumbingUsage.WaterQuantity == WaterQuantity.CubicMeterPerMonth)
         {
             return(plumbing.PWA.PlumbingUsage.CubicMeterPerMonth.Value * plumbing.WaterActivityPWA.Drink.Value * 12 / 100.0);
         }
         else if (plumbing.PWA.PlumbingUsage.WaterQuantity == WaterQuantity.WaterBill)
         {
             return(plumbing.PWA.PlumbingUsage.WaterBill.Value / WaterPricePlumping(buildingType, "PWA"));
         }
         return(0);
     }
     return(0);
 }
        private double CalcPlumping(Plumbing plumbing, BuildingType buildingType)
        {
            var sum = CalcMWA(plumbing, buildingType) + CalcPWA(plumbing, buildingType) + CalcOther(plumbing);

            return(sum);
        }