48 lines
1.7 KiB
C#
48 lines
1.7 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Web;
|
|
|
|
namespace Weee.Models.ExtensionMethods
|
|
{
|
|
public static class OrganizationLCAExtension
|
|
{
|
|
public static decimal GetTotalVehicleData(this OrganizationLCA organizationLca)
|
|
{
|
|
var totalVehicleData = organizationLca.VehicleSheet.GetTotalKgCO2e();
|
|
|
|
foreach (var vehicle in organizationLca.VehicleSheet) {
|
|
totalVehicleData += vehicle.Scalar * vehicle.Parameter.Value;
|
|
}
|
|
|
|
return totalVehicleData;
|
|
}
|
|
|
|
public static decimal GetTotalRefrigerantData(this OrganizationLCA organizationLca)
|
|
{
|
|
var totalRefrigerantData = organizationLca.RefrigerantSheet.GetTotalKgCO2e();
|
|
|
|
foreach (var refrigerant in organizationLca.RefrigerantSheet) {
|
|
totalRefrigerantData += refrigerant.Scalar * refrigerant.Parameter.Value;
|
|
}
|
|
|
|
return totalRefrigerantData;
|
|
}
|
|
|
|
public static decimal GetTotalKgCO2e(this OrganizationLCA organizationLca)
|
|
{
|
|
return organizationLca.PowerUsageSheet.GetTotalKgCO2e() +
|
|
organizationLca.VehicleSheet.GetTotalKgCO2e() +
|
|
organizationLca.RefrigerantSheet.GetTotalKgCO2e() +
|
|
organizationLca.SteamUsageSheet.GetTotalKgCO2e();
|
|
}
|
|
|
|
public static decimal GetTotalData(this OrganizationLCA organizationLca)
|
|
{
|
|
return organizationLca.GetTotalVehicleData() +
|
|
organizationLca.GetTotalRefrigerantData() +
|
|
organizationLca.PowerUsageSheet.GetTotalKgCO2e() +
|
|
organizationLca.SteamUsageSheet.GetTotalKgCO2e();
|
|
}
|
|
}
|
|
} |