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.



543
544
545
# File 'lib/google/apis/solar_v1/classes.rb', line 543

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



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

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



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

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)


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

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



507
508
509
# File 'lib/google/apis/solar_v1/classes.rb', line 507

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)


512
513
514
# File 'lib/google/apis/solar_v1/classes.rb', line 512

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)


520
521
522
# File 'lib/google/apis/solar_v1/classes.rb', line 520

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



525
526
527
# File 'lib/google/apis/solar_v1/classes.rb', line 525

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)


531
532
533
# File 'lib/google/apis/solar_v1/classes.rb', line 531

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



536
537
538
# File 'lib/google/apis/solar_v1/classes.rb', line 536

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



541
542
543
# File 'lib/google/apis/solar_v1/classes.rb', line 541

def utility_incentive
  @utility_incentive
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



548
549
550
551
552
553
554
555
556
557
558
559
# File 'lib/google/apis/solar_v1/classes.rb', line 548

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