Class: Google::Apis::SolarV1::FinancialDetails

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/solar_v1/classes.rb,
lib/google/apis/solar_v1/representations.rb,
lib/google/apis/solar_v1/representations.rb

Overview

Details of a financial analysis. Some of these details are already stored at higher levels (e.g., out of pocket cost). Total money amounts are over a lifetime period defined by the panel_lifetime_years field in SolarPotential. Note: The out of pocket cost of purchasing the panels is given in the out_of_pocket_cost field in CashPurchaseSavings.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ FinancialDetails

Returns a new instance of FinancialDetails.



505
506
507
# File 'lib/google/apis/solar_v1/classes.rb', line 505

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#cost_of_electricity_without_solarGoogle::Apis::SolarV1::Money

Represents an amount of money with its currency type. Corresponds to the JSON property costOfElectricityWithoutSolar



454
455
456
# File 'lib/google/apis/solar_v1/classes.rb', line 454

def cost_of_electricity_without_solar
  @cost_of_electricity_without_solar
end

#federal_incentiveGoogle::Apis::SolarV1::Money

Represents an amount of money with its currency type. Corresponds to the JSON property federalIncentive



459
460
461
# File 'lib/google/apis/solar_v1/classes.rb', line 459

def federal_incentive
  @federal_incentive
end

#initial_ac_kwh_per_yearFloat

How many AC kWh we think the solar panels will generate in their first year. Corresponds to the JSON property initialAcKwhPerYear

Returns:

  • (Float)


464
465
466
# File 'lib/google/apis/solar_v1/classes.rb', line 464

def initial_ac_kwh_per_year
  @initial_ac_kwh_per_year
end

#lifetime_srec_totalGoogle::Apis::SolarV1::Money

Represents an amount of money with its currency type. Corresponds to the JSON property lifetimeSrecTotal



469
470
471
# File 'lib/google/apis/solar_v1/classes.rb', line 469

def lifetime_srec_total
  @lifetime_srec_total
end

#net_metering_allowedBoolean Also known as: net_metering_allowed?

Whether net metering is allowed. Corresponds to the JSON property netMeteringAllowed

Returns:

  • (Boolean)


474
475
476
# File 'lib/google/apis/solar_v1/classes.rb', line 474

def net_metering_allowed
  @net_metering_allowed
end

#percentage_exported_to_gridFloat

The percentage (0-100) of solar electricity production we assumed was exported to the grid, based on the first quarter of production. This affects the calculations if net metering is not allowed. Corresponds to the JSON property percentageExportedToGrid

Returns:

  • (Float)


482
483
484
# File 'lib/google/apis/solar_v1/classes.rb', line 482

def percentage_exported_to_grid
  @percentage_exported_to_grid
end

#remaining_lifetime_utility_billGoogle::Apis::SolarV1::Money

Represents an amount of money with its currency type. Corresponds to the JSON property remainingLifetimeUtilityBill



487
488
489
# File 'lib/google/apis/solar_v1/classes.rb', line 487

def remaining_lifetime_utility_bill
  @remaining_lifetime_utility_bill
end

#solar_percentageFloat

Percentage (0-100) of the user's power supplied by solar. Valid for the first year but approximately correct for future years. Corresponds to the JSON property solarPercentage

Returns:

  • (Float)


493
494
495
# File 'lib/google/apis/solar_v1/classes.rb', line 493

def solar_percentage
  @solar_percentage
end

#state_incentiveGoogle::Apis::SolarV1::Money

Represents an amount of money with its currency type. Corresponds to the JSON property stateIncentive



498
499
500
# File 'lib/google/apis/solar_v1/classes.rb', line 498

def state_incentive
  @state_incentive
end

#utility_incentiveGoogle::Apis::SolarV1::Money

Represents an amount of money with its currency type. Corresponds to the JSON property utilityIncentive



503
504
505
# File 'lib/google/apis/solar_v1/classes.rb', line 503

def utility_incentive
  @utility_incentive
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



510
511
512
513
514
515
516
517
518
519
520
521
# File 'lib/google/apis/solar_v1/classes.rb', line 510

def update!(**args)
  @cost_of_electricity_without_solar = args[:cost_of_electricity_without_solar] if args.key?(:cost_of_electricity_without_solar)
  @federal_incentive = args[:federal_incentive] if args.key?(:federal_incentive)
  @initial_ac_kwh_per_year = args[:initial_ac_kwh_per_year] if args.key?(:initial_ac_kwh_per_year)
  @lifetime_srec_total = args[:lifetime_srec_total] if args.key?(:lifetime_srec_total)
  @net_metering_allowed = args[:net_metering_allowed] if args.key?(:net_metering_allowed)
  @percentage_exported_to_grid = args[:percentage_exported_to_grid] if args.key?(:percentage_exported_to_grid)
  @remaining_lifetime_utility_bill = args[:remaining_lifetime_utility_bill] if args.key?(:remaining_lifetime_utility_bill)
  @solar_percentage = args[:solar_percentage] if args.key?(:solar_percentage)
  @state_incentive = args[:state_incentive] if args.key?(:state_incentive)
  @utility_incentive = args[:utility_incentive] if args.key?(:utility_incentive)
end