Sha256: cf233f59c8bf6e19559cb2440ad1fb5373d8a4f006ecf459dc7e87bf3ff96fc7

Contents?: true

Size: 1.35 KB

Versions: 46

Compression:

Stored size: 1.35 KB

Contents

module ViewModel
  module Cepc50
    class CepcRr < ViewModel::Cepc50::CommonSchema
      def recommendations(payback = "")
        if payback.empty?
          # return an enumerable of all nodes
          @xml_doc.xpath "RR-Recommendations"
        else
          @xml_doc
            .search("RR-Recommendations/#{payback}")
            .map do |node|
              {
                code: node.at("Recommendation-Code").content,
                text: node.at("Recommendation").content,
                cO2Impact: node.at("CO2-Impact").content,
              }
            end
        end
      end

      def short_payback_recommendations
        recommendations("Short-Payback")
      end

      def medium_payback_recommendations
        recommendations("Medium-Payback")
      end

      def long_payback_recommendations
        recommendations("Long-Payback")
      end

      def other_recommendations
        recommendations("Other-Payback")
      end

      def floor_area
        xpath(%w[Technical-Information Floor-Area])
      end

      def building_environment
        xpath(%w[Building-Environment])
      end

      def calculation_tools
        xpath(%w[Calculation-Tool])
      end

      def related_certificate
        xpath(%w[Related-RRN])
      end

      def related_party_disclosure
        xpath(%w[Related-Party-Disclosure])
      end
    end
  end
end

Version data entries

46 entries across 46 versions & 1 rubygems

Version Path
epb_view_models-2.0.4 lib/view_model/cepc50/cepc_rr.rb
epb_view_models-2.0.3 lib/view_model/cepc50/cepc_rr.rb
epb_view_models-2.0.2 lib/view_model/cepc50/cepc_rr.rb
epb_view_models-2.0.1 lib/view_model/cepc50/cepc_rr.rb
epb_view_models-2.0.0 lib/view_model/cepc50/cepc_rr.rb
epb_view_models-1.2.3 lib/view_model/cepc50/cepc_rr.rb
epb_view_models-1.2.2 lib/view_model/cepc50/cepc_rr.rb
epb_view_models-1.2.1 lib/view_model/cepc50/cepc_rr.rb
epb_view_models-1.2.0 lib/view_model/cepc50/cepc_rr.rb
epb_view_models-1.1.6 lib/view_model/cepc50/cepc_rr.rb
epb_view_models-1.1.5 lib/view_model/cepc50/cepc_rr.rb
epb_view_models-1.1.4 lib/view_model/cepc50/cepc_rr.rb
epb_view_models-1.1.3 lib/view_model/cepc50/cepc_rr.rb
epb_view_models-1.1.2 lib/view_model/cepc50/cepc_rr.rb
epb_view_models-1.1.1 lib/view_model/cepc50/cepc_rr.rb
epb_view_models-1.1.0 lib/view_model/cepc50/cepc_rr.rb
epb_view_models-1.0.29 lib/view_model/cepc50/cepc_rr.rb
epb_view_models-1.0.28 lib/view_model/cepc50/cepc_rr.rb
epb_view_models-1.0.27 lib/view_model/cepc50/cepc_rr.rb
epb_view_models-1.0.26 lib/view_model/cepc50/cepc_rr.rb