Class: AutomobileActivityYearType

Inherits:
ActiveRecord::Base
  • Object
show all
Extended by:
Earth::Model
Defined in:
lib/earth/automobile/automobile_activity_year_type.rb

Constant Summary collapse

TABLE_STRUCTURE =
"\nCREATE TABLE automobile_activity_year_types\n  (\n     name                      CHARACTER VARYING(255) NOT NULL PRIMARY KEY,\n     activity_year             INTEGER,\n     type_name                 CHARACTER VARYING(255),\n     hfc_emissions             FLOAT,\n     hfc_emissions_units       CHARACTER VARYING(255),\n     hfc_emission_factor       FLOAT,\n     hfc_emission_factor_units CHARACTER VARYING(255)\n  );\n\n"

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Earth::Model

extend_mining, extended, registry

Class Method Details

.find_by_type_name_and_closest_year(type_name, year) ⇒ Object

Used by Automobile and AutomobileTrip


26
27
28
29
30
31
32
33
# File 'lib/earth/automobile/automobile_activity_year_type.rb', line 26

def self.find_by_type_name_and_closest_year(type_name, year)
  return if (candidates = where(:type_name => type_name)).none?
  if year > (max_year = candidates.maximum(:activity_year))
    candidates.where(:activity_year => max_year).first
  else
    candidates.where(:activity_year => [year, candidates.minimum(:activity_year)].max).first
  end
end

Instance Method Details

#activity_year_type_fuelsObject

for calculating hfc ef


36
37
38
# File 'lib/earth/automobile/automobile_activity_year_type.rb', line 36

def activity_year_type_fuels
  AutomobileActivityYearTypeFuel.where(:activity_year => activity_year, :type_name => type_name)
end