epb_view_models 2.2.9 → 2.2.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +37 -36
  3. data/lib/epb_view_models.rb +1 -1
  4. data/lib/presenter/cepc/certificate_summary.rb +9 -37
  5. data/lib/presenter/cs63/certificate_summary.rb +1 -1
  6. data/lib/presenter/dec/certificate_summary.rb +16 -17
  7. data/lib/presenter/dec_rr/certificate_summary.rb +10 -9
  8. data/lib/view_model/cepc_s_71/cepc.rb +7 -7
  9. data/lib/view_model/cs63/common_schema.rb +16 -16
  10. data/lib/view_model/rd_sap_schema_170/common_schema.rb +1 -1
  11. data/lib/view_model/rd_sap_schema_171/common_schema.rb +1 -1
  12. data/lib/view_model/rd_sap_schema_180/common_schema.rb +1 -1
  13. data/lib/view_model/rd_sap_schema_190/common_schema.rb +1 -1
  14. data/lib/view_model/rd_sap_schema_200/common_schema.rb +1 -1
  15. data/lib/view_model/rd_sap_schema_210/common_schema.rb +1 -1
  16. data/lib/view_model/rd_sap_schema_2101/common_schema.rb +1 -1
  17. data/lib/view_model/rd_sap_schema_ni_173/common_schema.rb +9 -9
  18. data/lib/view_model/rd_sap_schema_ni_174/common_schema.rb +9 -9
  19. data/lib/view_model/rd_sap_schema_ni_180/common_schema.rb +9 -9
  20. data/lib/view_model/rd_sap_schema_ni_190/common_schema.rb +9 -9
  21. data/lib/view_model/rd_sap_schema_ni_200/common_schema.rb +9 -9
  22. data/lib/view_model/rd_sap_schema_ni_210/common_schema.rb +1 -1
  23. data/lib/view_model/rd_sap_schema_ni_2101/common_schema.rb +1 -1
  24. data/lib/view_model/rd_sap_schema_s_190/common_schema.rb +1 -1
  25. data/lib/view_model/sap_schema_102/rdsap.rb +1 -1
  26. data/lib/view_model/sap_schema_110/rdsap.rb +1 -1
  27. data/lib/view_model/sap_schema_112/common_schema.rb +1 -1
  28. data/lib/view_model/sap_schema_112/rdsap.rb +1 -1
  29. data/lib/view_model/sap_schema_112/sap.rb +1 -1
  30. data/lib/view_model/sap_schema_120/common_schema.rb +1 -1
  31. data/lib/view_model/sap_schema_130/common_schema.rb +1 -1
  32. data/lib/view_model/sap_schema_140/common_schema.rb +1 -1
  33. data/lib/view_model/sap_schema_141/common_schema.rb +1 -1
  34. data/lib/view_model/sap_schema_142/common_schema.rb +1 -1
  35. data/lib/view_model/sap_schema_150/common_schema.rb +1 -1
  36. data/lib/view_model/sap_schema_160/common_schema.rb +1 -1
  37. data/lib/view_model/sap_schema_161/common_schema.rb +1 -1
  38. data/lib/view_model/sap_schema_162/common_schema.rb +1 -1
  39. data/lib/view_model/sap_schema_163/common_schema.rb +1 -1
  40. data/lib/view_model/sap_schema_170/common_schema.rb +1 -1
  41. data/lib/view_model/sap_schema_171/common_schema.rb +1 -1
  42. data/lib/view_model/sap_schema_1800/common_schema.rb +1 -1
  43. data/lib/view_model/sap_schema_1900/common_schema.rb +7 -7
  44. data/lib/view_model/sap_schema_1910/common_schema.rb +7 -7
  45. data/lib/view_model/sap_schema_1920/common_schema.rb +7 -7
  46. data/lib/view_model/sap_schema_ni_112/common_schema.rb +1 -1
  47. data/lib/view_model/sap_schema_ni_112/rdsap.rb +1 -1
  48. data/lib/view_model/sap_schema_ni_120/common_schema.rb +1 -1
  49. data/lib/view_model/sap_schema_ni_130/common_schema.rb +1 -1
  50. data/lib/view_model/sap_schema_ni_140/common_schema.rb +1 -1
  51. data/lib/view_model/sap_schema_ni_141/common_schema.rb +1 -1
  52. data/lib/view_model/sap_schema_ni_142/common_schema.rb +1 -1
  53. data/lib/view_model/sap_schema_ni_150/common_schema.rb +1 -1
  54. data/lib/view_model/sap_schema_ni_160/common_schema.rb +1 -1
  55. data/lib/view_model/sap_schema_ni_161/common_schema.rb +1 -1
  56. data/lib/view_model/sap_schema_ni_170/common_schema.rb +1 -1
  57. data/lib/view_model/sap_schema_ni_171/common_schema.rb +1 -1
  58. data/lib/view_model/sap_schema_ni_172/common_schema.rb +1 -1
  59. data/lib/view_model/sap_schema_ni_173/common_schema.rb +9 -9
  60. data/lib/view_model/sap_schema_ni_174/common_schema.rb +9 -9
  61. data/lib/view_model/sap_schema_ni_1800/common_schema.rb +9 -9
  62. data/lib/view_model/sap_schema_s_1900/common_schema.rb +7 -7
  63. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2dcf0bbef8d6df145835428d355332d1141ef5d323e554c1f40d77410d4019df
4
- data.tar.gz: ff5bad3db382217b163b22db8163019b83159f5e415015f0d25d797297df203a
3
+ metadata.gz: 41dc0de25de650cd2c1ea5bbbef683ead54956c7d9d75608afd2ba64af8da86e
4
+ data.tar.gz: 0c44d32596cdc1947cec3f45d751ecf50646df36873983bbb6ecff0ceaa9adb2
5
5
  SHA512:
6
- metadata.gz: 4872046aef2084c409a287985a00513bbc982255012213f526a750e88e55fc6161e35694b5745b8a4035337a883360db3608d35514ca0a9b158c1b6eac75d09a
7
- data.tar.gz: 5f2fc8ac67ad081a2069a636f98e81e84ccbc008d664e838210535a21be73a039a9dc634a12a2c9bfd6874526fee7fb76bd9539946b6b94357bbf49aac1e78cf
6
+ metadata.gz: 1e17fe42abc1d67c57509de21dfc80ed0a38382d1797b66c6107104f819d821c9a9bf3595885dacf2f5f59896f811d75c92e38867e8b02528133e1e77ef6fb48
7
+ data.tar.gz: f197135027cf11d64667f42d3779ee4bd2ce38736ce1ce4f5b2c30fae9259772134d01f6b8bf3fa5c00381ff9563e9b749366eb0c0343b1c8795ddc97ae1a1d5
data/Gemfile.lock CHANGED
@@ -1,14 +1,14 @@
1
1
  GEM
2
2
  remote: https://rubygems.org/
3
3
  specs:
4
- activesupport (8.0.2)
4
+ activesupport (8.1.2)
5
5
  base64
6
- benchmark (>= 0.3)
7
6
  bigdecimal
8
7
  concurrent-ruby (~> 1.0, >= 1.3.1)
9
8
  connection_pool (>= 2.2.5)
10
9
  drb
11
10
  i18n (>= 1.6, < 2)
11
+ json
12
12
  logger (>= 1.4.2)
13
13
  minitest (>= 5.1)
14
14
  securerandom (>= 0.3)
@@ -16,48 +16,49 @@ GEM
16
16
  uri (>= 0.13.1)
17
17
  ast (2.4.3)
18
18
  base64 (0.3.0)
19
- benchmark (0.4.1)
20
- bigdecimal (3.2.2)
21
- concurrent-ruby (1.3.5)
22
- connection_pool (2.5.3)
19
+ bigdecimal (4.0.1)
20
+ concurrent-ruby (1.3.6)
21
+ connection_pool (3.0.2)
23
22
  diff-lcs (1.6.2)
24
23
  drb (2.2.3)
25
- i18n (1.14.7)
24
+ i18n (1.14.8)
26
25
  concurrent-ruby (~> 1.0)
27
- json (2.12.2)
26
+ json (2.18.1)
28
27
  language_server-protocol (3.17.0.5)
29
28
  lint_roller (1.1.0)
30
29
  logger (1.7.0)
31
30
  mini_portile2 (2.8.9)
32
- minitest (5.25.5)
33
- nokogiri (1.18.8)
31
+ minitest (6.0.2)
32
+ drb (~> 2.0)
33
+ prism (~> 1.5)
34
+ nokogiri (1.19.1)
34
35
  mini_portile2 (~> 2.8.2)
35
36
  racc (~> 1.4)
36
37
  parallel (1.27.0)
37
- parser (3.3.8.0)
38
+ parser (3.3.10.2)
38
39
  ast (~> 2.4.1)
39
40
  racc
40
- prism (1.4.0)
41
+ prism (1.9.0)
41
42
  racc (1.8.1)
42
- rack (3.1.16)
43
+ rack (3.2.5)
43
44
  rainbow (3.1.1)
44
45
  rake (13.0.6)
45
- regexp_parser (2.10.0)
46
- rexml (3.4.1)
47
- rspec (3.13.1)
46
+ regexp_parser (2.11.3)
47
+ rexml (3.4.4)
48
+ rspec (3.13.2)
48
49
  rspec-core (~> 3.13.0)
49
50
  rspec-expectations (~> 3.13.0)
50
51
  rspec-mocks (~> 3.13.0)
51
- rspec-core (3.13.4)
52
+ rspec-core (3.13.6)
52
53
  rspec-support (~> 3.13.0)
53
54
  rspec-expectations (3.13.5)
54
55
  diff-lcs (>= 1.2.0, < 2.0)
55
56
  rspec-support (~> 3.13.0)
56
- rspec-mocks (3.13.5)
57
+ rspec-mocks (3.13.7)
57
58
  diff-lcs (>= 1.2.0, < 2.0)
58
59
  rspec-support (~> 3.13.0)
59
- rspec-support (3.13.4)
60
- rubocop (1.76.2)
60
+ rspec-support (3.13.7)
61
+ rubocop (1.82.1)
61
62
  json (~> 2.3)
62
63
  language_server-protocol (~> 3.17.0.2)
63
64
  lint_roller (~> 1.1.0)
@@ -65,23 +66,23 @@ GEM
65
66
  parser (>= 3.3.0.2)
66
67
  rainbow (>= 2.2.2, < 4.0)
67
68
  regexp_parser (>= 2.9.3, < 3.0)
68
- rubocop-ast (>= 1.45.1, < 2.0)
69
+ rubocop-ast (>= 1.48.0, < 2.0)
69
70
  ruby-progressbar (~> 1.7)
70
71
  unicode-display_width (>= 2.4.0, < 4.0)
71
- rubocop-ast (1.45.1)
72
+ rubocop-ast (1.49.0)
72
73
  parser (>= 3.3.7.2)
73
- prism (~> 1.4)
74
+ prism (~> 1.7)
74
75
  rubocop-capybara (2.22.1)
75
76
  lint_roller (~> 1.1)
76
77
  rubocop (~> 1.72, >= 1.72.1)
77
- rubocop-govuk (5.1.15)
78
- rubocop (= 1.76.2)
79
- rubocop-ast (= 1.45.1)
78
+ rubocop-govuk (5.2.0)
79
+ rubocop (= 1.82.1)
80
+ rubocop-ast (= 1.49.0)
80
81
  rubocop-capybara (= 2.22.1)
81
- rubocop-rails (= 2.32.0)
82
+ rubocop-rails (= 2.34.3)
82
83
  rubocop-rake (= 0.7.1)
83
- rubocop-rspec (= 3.6.0)
84
- rubocop-rails (2.32.0)
84
+ rubocop-rspec (= 3.9.0)
85
+ rubocop-rails (2.34.3)
85
86
  activesupport (>= 4.2.0)
86
87
  lint_roller (~> 1.1)
87
88
  rack (>= 1.1)
@@ -90,18 +91,18 @@ GEM
90
91
  rubocop-rake (0.7.1)
91
92
  lint_roller (~> 1.1)
92
93
  rubocop (>= 1.72.1)
93
- rubocop-rspec (3.6.0)
94
+ rubocop-rspec (3.9.0)
94
95
  lint_roller (~> 1.1)
95
- rubocop (~> 1.72, >= 1.72.1)
96
+ rubocop (~> 1.81)
96
97
  ruby-progressbar (1.13.0)
97
98
  securerandom (0.4.1)
98
99
  tzinfo (2.0.6)
99
100
  concurrent-ruby (~> 1.0)
100
- unicode-display_width (3.1.4)
101
- unicode-emoji (~> 4.0, >= 4.0.4)
102
- unicode-emoji (4.0.4)
103
- uri (1.0.3)
104
- zeitwerk (2.7.3)
101
+ unicode-display_width (3.2.0)
102
+ unicode-emoji (~> 4.1)
103
+ unicode-emoji (4.2.0)
104
+ uri (1.1.1)
105
+ zeitwerk (2.7.5)
105
106
 
106
107
  PLATFORMS
107
108
  ruby
@@ -5,7 +5,7 @@ loader = Zeitwerk::Loader.for_gem(warn_on_extra_files: false)
5
5
  loader.setup
6
6
 
7
7
  module EpbViewModels
8
- VERSION = "2.2.9"
8
+ VERSION = "2.2.11"
9
9
  end
10
10
 
11
11
  # Monkey patching to avoid using ActiveRecord::Type::Boolean.new.cast
@@ -57,9 +57,9 @@ module Presenter
57
57
  {
58
58
  type_of_assessment: TYPE_OF_ASSESSMENT,
59
59
  assessment_id: @view_model.assessment_id,
60
- date_of_expiry: @view_model.date_of_expiry,
61
60
  report_type: @view_model.report_type,
62
61
  date_of_assessment: @view_model.date_of_assessment,
62
+ date_of_expiry: @view_model.date_of_expiry,
63
63
  date_of_registration: @view_model.date_of_registration,
64
64
  address: {
65
65
  address_line1: @view_model.address_line1,
@@ -90,9 +90,9 @@ module Presenter
90
90
  floor_area: @view_model.floor_area,
91
91
  },
92
92
  current_energy_efficiency_rating: @view_model.energy_efficiency_rating,
93
- potential_energy_rating: @view_model.potential_energy_rating,
94
93
  current_energy_efficiency_band: @view_model.current_energy_efficiency_band,
95
- potential_energy_band: @view_model.potential_energy_band,
94
+ potential_energy_efficiency_rating: @view_model.potential_energy_rating,
95
+ potential_energy_efficiency_band: @view_model.potential_energy_band,
96
96
  new_build_benchmark_rating: @view_model.new_build_rating,
97
97
  new_build_benchmark_band: @view_model.new_build_benchmark_band,
98
98
  comparative_asset_rating: @view_model.comparative_asset_rating,
@@ -109,40 +109,12 @@ module Presenter
109
109
  calculation_tool: @view_model.calculation_tool,
110
110
  ter_2002: @view_model.ter_2002,
111
111
  ter: @view_model.ter,
112
- recommendations: [
113
- @view_model.short_payback_recommendations.map do |recommendation|
114
- {
115
- payback_type: "short",
116
- recommendation_code: recommendation[:code],
117
- recommendation: recommendation[:text],
118
- cO2_Impact: recommendation[:cO2Impact],
119
- }
120
- end,
121
- @view_model.medium_payback_recommendations.map do |recommendation|
122
- {
123
- payback_type: "medium",
124
- recommendation_code: recommendation[:code],
125
- recommendation: recommendation[:text],
126
- cO2_Impact: recommendation[:cO2Impact],
127
- }
128
- end,
129
- @view_model.long_payback_recommendations.map do |recommendation|
130
- {
131
- payback_type: "long",
132
- recommendation_code: recommendation[:code],
133
- recommendation: recommendation[:text],
134
- cO2_Impact: recommendation[:cO2Impact],
135
- }
136
- end,
137
- @view_model.other_recommendations.map do |recommendation|
138
- {
139
- payback_type: "other",
140
- recommendation_code: recommendation[:code],
141
- recommendation: recommendation[:text],
142
- cO2_Impact: recommendation[:cO2Impact],
143
- }
144
- end,
145
- ].flatten,
112
+ short_payback_recommendations:
113
+ @view_model.short_payback_recommendations,
114
+ medium_payback_recommendations:
115
+ @view_model.medium_payback_recommendations,
116
+ long_payback_recommendations: @view_model.long_payback_recommendations,
117
+ other_payback_recommendations: @view_model.other_payback_recommendations,
146
118
  }
147
119
  end
148
120
  end
@@ -12,8 +12,8 @@ module Presenter
12
12
  type_of_assessment: TYPE_OF_ASSESSMENT,
13
13
  assessment_id: @view_model.assessment_id,
14
14
  epc_assessment_id: @view_model.epc_assessment_id,
15
- sale_lease_date: @view_model.sale_lease_date,
16
15
  report_type: @view_model.report_type,
16
+ sale_lease_date: @view_model.sale_lease_date,
17
17
  date_of_assessment: @view_model.assessment_date,
18
18
  plan_report_date: @view_model.plan_report_date,
19
19
  delegated_protocol_date: @view_model.delegated_protocol_date,
@@ -10,12 +10,14 @@ module Presenter
10
10
 
11
11
  def to_certificate_summary
12
12
  {
13
+ type_of_assessment: TYPE_OF_ASSESSMENT,
14
+ schema_version: @schema_type.gsub(/[a-zA-Z-]/, ""),
13
15
  assessment_id: @view_model.assessment_id,
16
+ report_type: @view_model.report_type,
14
17
  date_of_assessment: @view_model.date_of_assessment,
15
18
  date_of_expiry: @view_model.date_of_expiry,
16
19
  date_of_registration: @view_model.date_of_registration,
17
20
  address: {
18
- address_id: @view_model.address_id,
19
21
  address_line1: @view_model.address_line1,
20
22
  address_line2: @view_model.address_line2,
21
23
  address_line3: @view_model.address_line3,
@@ -23,9 +25,18 @@ module Presenter
23
25
  town: @view_model.town,
24
26
  postcode: @view_model.postcode,
25
27
  },
26
- type_of_assessment: TYPE_OF_ASSESSMENT,
27
- schema_version: @schema_type.gsub(/[a-zA-Z-]/, ""),
28
- report_type: @view_model.report_type,
28
+ assessor: {
29
+ scheme_assessor_id: @view_model.scheme_assessor_id,
30
+ name: @view_model.assessor_name,
31
+ contact_details: {
32
+ email: @view_model.assessor_email,
33
+ telephone: @view_model.assessor_telephone,
34
+ },
35
+ company_details: {
36
+ name: @view_model.company_name,
37
+ address: @view_model.company_address,
38
+ },
39
+ },
29
40
  current_assessment: {
30
41
  date: @view_model.current_assessment_date,
31
42
  energy_efficiency_rating: @view_model.energy_efficiency_rating,
@@ -66,24 +77,12 @@ module Presenter
66
77
  renewables_fuel_thermal: @view_model.renewables_fuel_thermal,
67
78
  renewables_electrical: @view_model.renewables_electrical,
68
79
  },
69
- assessor: {
70
- scheme_assessor_id: @view_model.scheme_assessor_id,
71
- name: @view_model.assessor_name,
72
- company_details: {
73
- name: @view_model.company_name,
74
- address: @view_model.company_address,
75
- },
76
- contact_details: {
77
- email: @view_model.assessor_email,
78
- telephone: @view_model.assessor_telephone,
79
- },
80
- },
81
80
  administrative_information: {
82
81
  issue_date: @view_model.date_of_issue,
83
82
  calculation_tool: @view_model.calculation_tool,
84
83
  related_party_disclosure: @view_model.dec_related_party_disclosure,
85
- related_rrn: @view_model.related_rrn,
86
84
  },
85
+ related_rrn: @view_model.related_rrn,
87
86
  }
88
87
  end
89
88
  end
@@ -11,10 +11,9 @@ module Presenter
11
11
  assessment_id: @view_model.assessment_id,
12
12
  report_type: @view_model.report_type,
13
13
  date_of_assessment: @view_model.date_of_assessment,
14
- date_of_registration: @view_model.date_of_registration,
15
14
  date_of_expiry: @view_model.date_of_expiry,
15
+ date_of_registration: @view_model.date_of_registration,
16
16
  address: {
17
- address_id: @view_model.address_id,
18
17
  address_line1: @view_model.address_line1,
19
18
  address_line2: @view_model.address_line2,
20
19
  address_line3: @view_model.address_line3,
@@ -25,21 +24,21 @@ module Presenter
25
24
  assessor: {
26
25
  scheme_assessor_id: @view_model.scheme_assessor_id,
27
26
  name: @view_model.assessor_name,
28
- company_details: {
29
- name: @view_model.company_name,
30
- address: @view_model.company_address,
31
- },
32
27
  contact_details: {
33
28
  email: @view_model.assessor_email,
34
29
  telephone: @view_model.assessor_telephone,
35
30
  },
31
+ company_details: {
32
+ name: @view_model.company_name,
33
+ address: @view_model.company_address,
34
+ },
36
35
  },
37
36
  short_payback_recommendations:
38
37
  @view_model.short_payback_recommendations,
39
38
  medium_payback_recommendations:
40
39
  @view_model.medium_payback_recommendations,
41
40
  long_payback_recommendations: @view_model.long_payback_recommendations,
42
- other_recommendations: @view_model.other_recommendations,
41
+ other_payback_recommendations: @view_model.other_recommendations,
43
42
  technical_information: {
44
43
  building_environment: @view_model.building_environment,
45
44
  floor_area: @view_model.floor_area,
@@ -47,10 +46,12 @@ module Presenter
47
46
  property_type: @view_model.property_type,
48
47
  renewable_sources: @view_model.renewable_sources,
49
48
  discounted_energy: @view_model.discounted_energy,
50
- date_of_issue: @view_model.date_of_issue,
51
- calculation_tool: @view_model.calculation_tool,
52
49
  inspection_type: @view_model.inspection_type,
53
50
  },
51
+ administrative_information: {
52
+ issue_date: @view_model.date_of_issue,
53
+ calculation_tool: @view_model.calculation_tool,
54
+ },
54
55
  site_service_one: @view_model.site_service_one,
55
56
  site_service_two: @view_model.site_service_two,
56
57
  site_service_three: @view_model.site_service_three,
@@ -48,7 +48,7 @@ module ViewModel
48
48
  end
49
49
 
50
50
  def floor_area
51
- xpath(%w[Technical-Information Floor-Area])
51
+ xpath(%w[Technical-Information Floor-Area])&.to_i
52
52
  end
53
53
 
54
54
  def main_heating_fuel
@@ -103,11 +103,11 @@ module ViewModel
103
103
  @xml_doc
104
104
  .search("Recommendations-Report RR-Recommendations/#{payback}")
105
105
  .map do |node|
106
- {
107
- code: node.at("Recommendation-Code").content,
108
- text: node.at("Recommendation").content,
109
- cO2Impact: node.at("CO2-Impact").content,
110
- }
106
+ {
107
+ code: node.at("Recommendation-Code").content,
108
+ text: node.at("Recommendation").content,
109
+ cO2Impact: node.at("CO2-Impact").content,
110
+ }
111
111
  end
112
112
  end
113
113
  end
@@ -124,7 +124,7 @@ module ViewModel
124
124
  recommendations("Long-Payback")
125
125
  end
126
126
 
127
- def other_recommendations
127
+ def other_payback_recommendations
128
128
  recommendations("Other-Payback")
129
129
  end
130
130
 
@@ -153,14 +153,14 @@ module ViewModel
153
153
  @xml_doc
154
154
  .search("Prescriptive-Improvements Prescriptive-Scenario")
155
155
  .map do |node|
156
- {
157
- measure_description_short:
158
- xpath(%w[Measure-Description-Short], node),
159
- measure_description_long:
160
- xpath(%w[Measure-Description-Long], node),
161
- measure_valid: xpath(%w[Measure-Valid], node),
162
- measure_type: xpath(%w[Measure-Type], node),
163
- }
156
+ {
157
+ measure_description_short:
158
+ xpath(%w[Measure-Description-Short], node),
159
+ measure_description_long:
160
+ xpath(%w[Measure-Description-Long], node),
161
+ measure_valid: xpath(%w[Measure-Valid], node),
162
+ measure_type: xpath(%w[Measure-Type], node),
163
+ }
164
164
  end
165
165
  end
166
166
 
@@ -168,14 +168,14 @@ module ViewModel
168
168
  @xml_doc
169
169
  .search("Alternative-Improvements Alternative-Scenario")
170
170
  .map do |node|
171
- {
172
- measure_description_short:
173
- xpath(%w[Measure-Description-Short], node),
174
- measure_description_long:
175
- xpath(%w[Measure-Description-Long], node),
176
- measure_valid: xpath(%w[Measure-Valid], node),
177
- measure_type: xpath(%w[Measure-Type], node),
178
- }
171
+ {
172
+ measure_description_short:
173
+ xpath(%w[Measure-Description-Short], node),
174
+ measure_description_long:
175
+ xpath(%w[Measure-Description-Long], node),
176
+ measure_valid: xpath(%w[Measure-Valid], node),
177
+ measure_type: xpath(%w[Measure-Type], node),
178
+ }
179
179
  end
180
180
  end
181
181
 
@@ -503,7 +503,7 @@ module ViewModel
503
503
 
504
504
  # Identifies the Main Dwelling
505
505
  if building_part_number&.content == "1"
506
- return(
506
+ return (
507
507
  sap_building_part.at_xpath(
508
508
  "Construction-Age-Band | Construction-Year",
509
509
  )&.content
@@ -503,7 +503,7 @@ module ViewModel
503
503
 
504
504
  # Identifies the Main Dwelling
505
505
  if building_part_number&.content == "1"
506
- return(
506
+ return (
507
507
  sap_building_part.at_xpath(
508
508
  "Construction-Age-Band | Construction-Year",
509
509
  )&.content
@@ -503,7 +503,7 @@ module ViewModel
503
503
 
504
504
  # Identifies the Main Dwelling
505
505
  if building_part_number&.content == "1"
506
- return(
506
+ return (
507
507
  sap_building_part.at_xpath(
508
508
  "Construction-Age-Band | Construction-Year",
509
509
  )&.content
@@ -503,7 +503,7 @@ module ViewModel
503
503
 
504
504
  # Identifies the Main Dwelling
505
505
  if building_part_number&.content == "1"
506
- return(
506
+ return (
507
507
  sap_building_part.at_xpath(
508
508
  "Construction-Age-Band | Construction-Year",
509
509
  )&.content
@@ -557,7 +557,7 @@ module ViewModel
557
557
 
558
558
  # Identifies the Main Dwelling
559
559
  if building_part_number&.content == "1"
560
- return(
560
+ return (
561
561
  sap_building_part.at_xpath(
562
562
  "Construction-Age-Band | Construction-Year",
563
563
  )&.content
@@ -572,7 +572,7 @@ module ViewModel
572
572
 
573
573
  # Identifies the Main Dwelling
574
574
  if building_part_number&.content == "1"
575
- return(
575
+ return (
576
576
  sap_building_part.at_xpath(
577
577
  "Construction-Age-Band | Construction-Year",
578
578
  )&.content
@@ -572,7 +572,7 @@ module ViewModel
572
572
 
573
573
  # Identifies the Main Dwelling
574
574
  if building_part_number&.content == "1"
575
- return(
575
+ return (
576
576
  sap_building_part.at_xpath(
577
577
  "Construction-Age-Band | Construction-Year",
578
578
  )&.content
@@ -492,7 +492,7 @@ module ViewModel
492
492
 
493
493
  # Identifies the Main Dwelling
494
494
  if building_part_number&.content == "1"
495
- return(
495
+ return (
496
496
  sap_building_part.at_xpath(
497
497
  "Construction-Age-Band | Construction-Year",
498
498
  )&.content
@@ -523,14 +523,14 @@ module ViewModel
523
523
  @xml_doc
524
524
  .search("Suggested-Improvements Improvement")
525
525
  .map do |node|
526
- improvement_code = xpath(%w[Improvement-Details Improvement-Number], node)
527
- {
528
- sequence: xpath(%w[Sequence], node).to_i,
529
- improvement_code: xpath(%w[Improvement-Details Improvement-Number], node),
530
- improvement_summary: improvement_code ? accessor.fetch_details(schema_version: "RdSAP-Schema-NI-17.3", improvement_number: improvement_code).summary : xpath(%w[Improvement-Summary], node),
531
- improvement_description: improvement_code ? accessor.fetch_details(schema_version: "RdSAP-Schema-NI-17.3", improvement_number: improvement_code).description : xpath(%w[Improvement-Description], node),
532
- indicative_cost: xpath(%w[Indicative-Cost], node),
533
- }
526
+ improvement_code = xpath(%w[Improvement-Details Improvement-Number], node)
527
+ {
528
+ sequence: xpath(%w[Sequence], node).to_i,
529
+ improvement_code: xpath(%w[Improvement-Details Improvement-Number], node),
530
+ improvement_summary: improvement_code ? accessor.fetch_details(schema_version: "RdSAP-Schema-NI-17.3", improvement_number: improvement_code).summary : xpath(%w[Improvement-Summary], node),
531
+ improvement_description: improvement_code ? accessor.fetch_details(schema_version: "RdSAP-Schema-NI-17.3", improvement_number: improvement_code).description : xpath(%w[Improvement-Description], node),
532
+ indicative_cost: xpath(%w[Indicative-Cost], node),
533
+ }
534
534
  end
535
535
  end
536
536
  end
@@ -492,7 +492,7 @@ module ViewModel
492
492
 
493
493
  # Identifies the Main Dwelling
494
494
  if building_part_number&.content == "1"
495
- return(
495
+ return (
496
496
  sap_building_part.at_xpath(
497
497
  "Construction-Age-Band | Construction-Year",
498
498
  )&.content
@@ -523,14 +523,14 @@ module ViewModel
523
523
  @xml_doc
524
524
  .search("Suggested-Improvements Improvement")
525
525
  .map do |node|
526
- improvement_code = xpath(%w[Improvement-Details Improvement-Number], node)
527
- {
528
- sequence: xpath(%w[Sequence], node).to_i,
529
- improvement_code: xpath(%w[Improvement-Details Improvement-Number], node),
530
- improvement_summary: improvement_code ? accessor.fetch_details(schema_version: "RdSAP-Schema-NI-17.4", improvement_number: improvement_code).summary : xpath(%w[Improvement-Summary], node),
531
- improvement_description: improvement_code ? accessor.fetch_details(schema_version: "RdSAP-Schema-NI-17.4", improvement_number: improvement_code).description : xpath(%w[Improvement-Description], node),
532
- indicative_cost: xpath(%w[Indicative-Cost], node),
533
- }
526
+ improvement_code = xpath(%w[Improvement-Details Improvement-Number], node)
527
+ {
528
+ sequence: xpath(%w[Sequence], node).to_i,
529
+ improvement_code: xpath(%w[Improvement-Details Improvement-Number], node),
530
+ improvement_summary: improvement_code ? accessor.fetch_details(schema_version: "RdSAP-Schema-NI-17.4", improvement_number: improvement_code).summary : xpath(%w[Improvement-Summary], node),
531
+ improvement_description: improvement_code ? accessor.fetch_details(schema_version: "RdSAP-Schema-NI-17.4", improvement_number: improvement_code).description : xpath(%w[Improvement-Description], node),
532
+ indicative_cost: xpath(%w[Indicative-Cost], node),
533
+ }
534
534
  end
535
535
  end
536
536
  end
@@ -492,7 +492,7 @@ module ViewModel
492
492
 
493
493
  # Identifies the Main Dwelling
494
494
  if building_part_number&.content == "1"
495
- return(
495
+ return (
496
496
  sap_building_part.at_xpath(
497
497
  "Construction-Age-Band | Construction-Year",
498
498
  )&.content
@@ -523,14 +523,14 @@ module ViewModel
523
523
  @xml_doc
524
524
  .search("Suggested-Improvements Improvement")
525
525
  .map do |node|
526
- improvement_code = xpath(%w[Improvement-Details Improvement-Number], node)
527
- {
528
- sequence: xpath(%w[Sequence], node).to_i,
529
- improvement_code: xpath(%w[Improvement-Details Improvement-Number], node),
530
- improvement_summary: improvement_code ? accessor.fetch_details(schema_version: "RdSAP-Schema-NI-18.0", improvement_number: improvement_code).summary : xpath(%w[Improvement-Summary], node),
531
- improvement_description: improvement_code ? accessor.fetch_details(schema_version: "RdSAP-Schema-NI-18.0", improvement_number: improvement_code).description : xpath(%w[Improvement-Description], node),
532
- indicative_cost: xpath(%w[Indicative-Cost], node),
533
- }
526
+ improvement_code = xpath(%w[Improvement-Details Improvement-Number], node)
527
+ {
528
+ sequence: xpath(%w[Sequence], node).to_i,
529
+ improvement_code: xpath(%w[Improvement-Details Improvement-Number], node),
530
+ improvement_summary: improvement_code ? accessor.fetch_details(schema_version: "RdSAP-Schema-NI-18.0", improvement_number: improvement_code).summary : xpath(%w[Improvement-Summary], node),
531
+ improvement_description: improvement_code ? accessor.fetch_details(schema_version: "RdSAP-Schema-NI-18.0", improvement_number: improvement_code).description : xpath(%w[Improvement-Description], node),
532
+ indicative_cost: xpath(%w[Indicative-Cost], node),
533
+ }
534
534
  end
535
535
  end
536
536
  end
@@ -492,7 +492,7 @@ module ViewModel
492
492
 
493
493
  # Identifies the Main Dwelling
494
494
  if building_part_number&.content == "1"
495
- return(
495
+ return (
496
496
  sap_building_part.at_xpath(
497
497
  "Construction-Age-Band | Construction-Year",
498
498
  )&.content
@@ -523,14 +523,14 @@ module ViewModel
523
523
  @xml_doc
524
524
  .search("Suggested-Improvements Improvement")
525
525
  .map do |node|
526
- improvement_code = xpath(%w[Improvement-Details Improvement-Number], node)
527
- {
528
- sequence: xpath(%w[Sequence], node).to_i,
529
- improvement_code: xpath(%w[Improvement-Details Improvement-Number], node),
530
- improvement_summary: improvement_code ? accessor.fetch_details(schema_version: "RdSAP-Schema-NI-19.0", improvement_number: improvement_code).summary : xpath(%w[Improvement-Summary], node),
531
- improvement_description: improvement_code ? accessor.fetch_details(schema_version: "RdSAP-Schema-NI-19.0", improvement_number: improvement_code).description : xpath(%w[Improvement-Description], node),
532
- indicative_cost: xpath(%w[Indicative-Cost], node),
533
- }
526
+ improvement_code = xpath(%w[Improvement-Details Improvement-Number], node)
527
+ {
528
+ sequence: xpath(%w[Sequence], node).to_i,
529
+ improvement_code: xpath(%w[Improvement-Details Improvement-Number], node),
530
+ improvement_summary: improvement_code ? accessor.fetch_details(schema_version: "RdSAP-Schema-NI-19.0", improvement_number: improvement_code).summary : xpath(%w[Improvement-Summary], node),
531
+ improvement_description: improvement_code ? accessor.fetch_details(schema_version: "RdSAP-Schema-NI-19.0", improvement_number: improvement_code).description : xpath(%w[Improvement-Description], node),
532
+ indicative_cost: xpath(%w[Indicative-Cost], node),
533
+ }
534
534
  end
535
535
  end
536
536
  end