class MecsRatio
Constants
- TABLE_STRUCTURE
Public Class Methods
find_by_naics_code(code)
click to toggle source
Find the first record whose naics_code matches code and whose energy per dollar shipment is present. If no record found chop off the last character of code and try again, and so on.
# File lib/earth/industry/mecs_ratio.rb, line 27 def self.find_by_naics_code(code) candidate = find_by_naics_code_and_census_region_number(code, nil) end
find_by_naics_code_and_census_region_number(code, number, original_number = number)
click to toggle source
Find the first record whose census_region_number matches number, whose naics_code matches code, and whose energy per dollar of shipments is present. If none found and we know census region number, try looking nationwide If none found and looking nationwide, chop off the last character of code and try again looking in census region And so on
# File lib/earth/industry/mecs_ratio.rb, line 35 def self.find_by_naics_code_and_census_region_number(code, number, original_number = number) if code.blank? record = nil else code = Industry.format_naics_code code candidate = where(:census_region_number => number, :naics_code => code).first if candidate.try(:energy_per_dollar_of_shipments).present? record = candidate elsif number.present? record = find_by_naics_code_and_census_region_number(code, nil, original_number) else record = find_by_naics_code_and_census_region_number(code[0..-2], original_number) end end record end