epb_view_models 1.2.3 → 2.0.0

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 (152) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -1
  3. data/Gemfile.lock +38 -28
  4. data/epb_view_models.gemspec +1 -1
  5. data/lib/epb_view_models.rb +1 -1
  6. data/lib/presenter/cepc/report.rb +11 -15
  7. data/lib/presenter/cepc/summary.rb +5 -14
  8. data/lib/presenter/dec/report.rb +5 -9
  9. data/lib/presenter/dec/summary.rb +3 -11
  10. data/lib/presenter/dec/xml_summary.rb +2 -2
  11. data/lib/presenter/export/base.rb +4 -4
  12. data/lib/presenter/export/commercial.rb +16 -27
  13. data/lib/presenter/export/domestic.rb +30 -39
  14. data/lib/presenter/rd_sap/domestic_digest.rb +2 -4
  15. data/lib/presenter/rd_sap/report.rb +47 -57
  16. data/lib/presenter/rd_sap/summary.rb +13 -21
  17. data/lib/presenter/sap/domestic_digest.rb +2 -4
  18. data/lib/presenter/sap/report.rb +49 -59
  19. data/lib/presenter/sap/summary.rb +27 -41
  20. data/lib/view_model/cepc31/cepc.rb +4 -44
  21. data/lib/view_model/cepc31/common_schema.rb +1 -1
  22. data/lib/view_model/cepc31/dec.rb +14 -34
  23. data/lib/view_model/cepc40/ac_report.rb +1 -1
  24. data/lib/view_model/cepc40/cepc.rb +6 -30
  25. data/lib/view_model/cepc40/common_schema.rb +1 -1
  26. data/lib/view_model/cepc40/dec.rb +16 -16
  27. data/lib/view_model/cepc50/ac_report.rb +1 -1
  28. data/lib/view_model/cepc50/cepc.rb +6 -10
  29. data/lib/view_model/cepc50/common_schema.rb +1 -1
  30. data/lib/view_model/cepc50/dec.rb +16 -16
  31. data/lib/view_model/cepc51/ac_report.rb +1 -1
  32. data/lib/view_model/cepc51/cepc.rb +6 -6
  33. data/lib/view_model/cepc51/common_schema.rb +1 -1
  34. data/lib/view_model/cepc51/dec.rb +16 -16
  35. data/lib/view_model/cepc60/ac_report.rb +1 -1
  36. data/lib/view_model/cepc60/cepc.rb +6 -10
  37. data/lib/view_model/cepc60/common_schema.rb +1 -1
  38. data/lib/view_model/cepc60/dec.rb +17 -17
  39. data/lib/view_model/cepc70/ac_cert.rb +3 -3
  40. data/lib/view_model/cepc70/ac_report.rb +1 -1
  41. data/lib/view_model/cepc70/cepc.rb +6 -10
  42. data/lib/view_model/cepc70/common_schema.rb +1 -1
  43. data/lib/view_model/cepc70/dec.rb +17 -17
  44. data/lib/view_model/cepc71/ac_cert.rb +3 -3
  45. data/lib/view_model/cepc71/ac_report.rb +1 -1
  46. data/lib/view_model/cepc71/cepc.rb +6 -6
  47. data/lib/view_model/cepc71/common_schema.rb +1 -1
  48. data/lib/view_model/cepc71/dec.rb +17 -17
  49. data/lib/view_model/cepc800/ac_cert.rb +3 -3
  50. data/lib/view_model/cepc800/ac_report.rb +1 -1
  51. data/lib/view_model/cepc800/cepc.rb +6 -11
  52. data/lib/view_model/cepc800/common_schema.rb +1 -1
  53. data/lib/view_model/cepc800/dec.rb +17 -17
  54. data/lib/view_model/cepc_ni800/ac_cert.rb +3 -3
  55. data/lib/view_model/cepc_ni800/ac_report.rb +1 -1
  56. data/lib/view_model/cepc_ni800/cepc.rb +6 -10
  57. data/lib/view_model/cepc_ni800/common_schema.rb +1 -1
  58. data/lib/view_model/cepc_ni800/dec.rb +17 -17
  59. data/lib/view_model/rd_sap_schema_170/common_schema.rb +17 -25
  60. data/lib/view_model/rd_sap_schema_171/common_schema.rb +17 -25
  61. data/lib/view_model/rd_sap_schema_180/common_schema.rb +17 -25
  62. data/lib/view_model/rd_sap_schema_190/common_schema.rb +17 -25
  63. data/lib/view_model/rd_sap_schema_200/common_schema.rb +17 -25
  64. data/lib/view_model/rd_sap_schema_210/common_schema.rb +14 -34
  65. data/lib/view_model/rd_sap_schema_ni_173/common_schema.rb +17 -25
  66. data/lib/view_model/rd_sap_schema_ni_174/common_schema.rb +17 -25
  67. data/lib/view_model/rd_sap_schema_ni_180/common_schema.rb +17 -25
  68. data/lib/view_model/rd_sap_schema_ni_190/common_schema.rb +17 -25
  69. data/lib/view_model/rd_sap_schema_ni_200/common_schema.rb +17 -25
  70. data/lib/view_model/sap_schema_102/common_schema.rb +13 -85
  71. data/lib/view_model/sap_schema_102/rdsap.rb +3 -3
  72. data/lib/view_model/sap_schema_110/common_schema.rb +13 -65
  73. data/lib/view_model/sap_schema_110/rdsap.rb +3 -19
  74. data/lib/view_model/sap_schema_110/sap.rb +1 -1
  75. data/lib/view_model/sap_schema_112/common_schema.rb +13 -65
  76. data/lib/view_model/sap_schema_112/rdsap.rb +3 -19
  77. data/lib/view_model/sap_schema_112/sap.rb +1 -1
  78. data/lib/view_model/sap_schema_120/common_schema.rb +13 -61
  79. data/lib/view_model/sap_schema_120/rdsap.rb +3 -19
  80. data/lib/view_model/sap_schema_120/sap.rb +1 -1
  81. data/lib/view_model/sap_schema_130/common_schema.rb +13 -61
  82. data/lib/view_model/sap_schema_130/rdsap.rb +3 -19
  83. data/lib/view_model/sap_schema_130/sap.rb +1 -1
  84. data/lib/view_model/sap_schema_140/common_schema.rb +14 -58
  85. data/lib/view_model/sap_schema_140/rdsap.rb +3 -19
  86. data/lib/view_model/sap_schema_140/sap.rb +1 -1
  87. data/lib/view_model/sap_schema_141/common_schema.rb +14 -58
  88. data/lib/view_model/sap_schema_141/rdsap.rb +3 -19
  89. data/lib/view_model/sap_schema_141/sap.rb +1 -1
  90. data/lib/view_model/sap_schema_142/common_schema.rb +14 -58
  91. data/lib/view_model/sap_schema_142/rdsap.rb +3 -19
  92. data/lib/view_model/sap_schema_142/sap.rb +1 -1
  93. data/lib/view_model/sap_schema_150/common_schema.rb +14 -58
  94. data/lib/view_model/sap_schema_150/rdsap.rb +3 -19
  95. data/lib/view_model/sap_schema_150/sap.rb +1 -1
  96. data/lib/view_model/sap_schema_160/common_schema.rb +14 -58
  97. data/lib/view_model/sap_schema_160/rdsap.rb +3 -19
  98. data/lib/view_model/sap_schema_160/sap.rb +1 -1
  99. data/lib/view_model/sap_schema_161/common_schema.rb +14 -58
  100. data/lib/view_model/sap_schema_161/rdsap.rb +3 -19
  101. data/lib/view_model/sap_schema_161/sap.rb +1 -1
  102. data/lib/view_model/sap_schema_162/common_schema.rb +14 -58
  103. data/lib/view_model/sap_schema_162/rdsap.rb +3 -19
  104. data/lib/view_model/sap_schema_162/sap.rb +1 -1
  105. data/lib/view_model/sap_schema_163/common_schema.rb +13 -53
  106. data/lib/view_model/sap_schema_163/rdsap.rb +3 -19
  107. data/lib/view_model/sap_schema_163/sap.rb +1 -1
  108. data/lib/view_model/sap_schema_170/common_schema.rb +13 -65
  109. data/lib/view_model/sap_schema_171/common_schema.rb +13 -65
  110. data/lib/view_model/sap_schema_1800/common_schema.rb +12 -64
  111. data/lib/view_model/sap_schema_1900/common_schema.rb +10 -50
  112. data/lib/view_model/sap_schema_1910/common_schema.rb +10 -50
  113. data/lib/view_model/sap_schema_ni_112/common_schema.rb +13 -61
  114. data/lib/view_model/sap_schema_ni_112/rdsap.rb +3 -19
  115. data/lib/view_model/sap_schema_ni_112/sap.rb +1 -1
  116. data/lib/view_model/sap_schema_ni_120/common_schema.rb +13 -61
  117. data/lib/view_model/sap_schema_ni_120/rdsap.rb +3 -19
  118. data/lib/view_model/sap_schema_ni_120/sap.rb +1 -1
  119. data/lib/view_model/sap_schema_ni_130/common_schema.rb +13 -61
  120. data/lib/view_model/sap_schema_ni_130/rdsap.rb +3 -19
  121. data/lib/view_model/sap_schema_ni_130/sap.rb +1 -1
  122. data/lib/view_model/sap_schema_ni_140/common_schema.rb +14 -58
  123. data/lib/view_model/sap_schema_ni_140/rdsap.rb +3 -19
  124. data/lib/view_model/sap_schema_ni_140/sap.rb +1 -1
  125. data/lib/view_model/sap_schema_ni_141/common_schema.rb +14 -58
  126. data/lib/view_model/sap_schema_ni_141/rdsap.rb +3 -19
  127. data/lib/view_model/sap_schema_ni_141/sap.rb +1 -1
  128. data/lib/view_model/sap_schema_ni_142/common_schema.rb +14 -58
  129. data/lib/view_model/sap_schema_ni_142/rdsap.rb +3 -19
  130. data/lib/view_model/sap_schema_ni_142/sap.rb +1 -1
  131. data/lib/view_model/sap_schema_ni_150/common_schema.rb +14 -58
  132. data/lib/view_model/sap_schema_ni_150/rdsap.rb +3 -19
  133. data/lib/view_model/sap_schema_ni_150/sap.rb +1 -1
  134. data/lib/view_model/sap_schema_ni_160/common_schema.rb +14 -54
  135. data/lib/view_model/sap_schema_ni_160/rdsap.rb +3 -19
  136. data/lib/view_model/sap_schema_ni_160/sap.rb +1 -1
  137. data/lib/view_model/sap_schema_ni_161/common_schema.rb +14 -50
  138. data/lib/view_model/sap_schema_ni_161/rdsap.rb +3 -19
  139. data/lib/view_model/sap_schema_ni_161/sap.rb +1 -1
  140. data/lib/view_model/sap_schema_ni_170/common_schema.rb +14 -54
  141. data/lib/view_model/sap_schema_ni_170/rdsap.rb +3 -19
  142. data/lib/view_model/sap_schema_ni_170/sap.rb +1 -1
  143. data/lib/view_model/sap_schema_ni_171/common_schema.rb +14 -54
  144. data/lib/view_model/sap_schema_ni_171/rdsap.rb +3 -19
  145. data/lib/view_model/sap_schema_ni_171/sap.rb +1 -1
  146. data/lib/view_model/sap_schema_ni_172/common_schema.rb +14 -54
  147. data/lib/view_model/sap_schema_ni_172/rdsap.rb +3 -23
  148. data/lib/view_model/sap_schema_ni_172/sap.rb +1 -1
  149. data/lib/view_model/sap_schema_ni_173/common_schema.rb +10 -78
  150. data/lib/view_model/sap_schema_ni_174/common_schema.rb +10 -78
  151. data/lib/view_model/sap_schema_ni_1800/common_schema.rb +10 -78
  152. metadata +4 -4
@@ -30,11 +30,11 @@ module ViewModel
30
30
  end
31
31
 
32
32
  def habitable_room_count
33
- xpath(%w[Habitable-Room-Count])
33
+ xpath(%w[Habitable-Room-Count])&.to_i
34
34
  end
35
35
 
36
36
  def heated_room_count
37
- xpath(%w[Heated-Room-Count])
37
+ xpath(%w[Heated-Room-Count])&.to_i
38
38
  end
39
39
 
40
40
  def photovoltaic_roof_area_percent
@@ -54,7 +54,7 @@ module ViewModel
54
54
  end
55
55
 
56
56
  def storey_count
57
- xpath(%w[Storey-Count])
57
+ xpath(%w[Storey-Count])&.to_i
58
58
  end
59
59
 
60
60
  def energy_tariff
@@ -81,22 +81,6 @@ module ViewModel
81
81
  xpath(%w[Cylinder-Thermostat])
82
82
  end
83
83
 
84
- def mech_vent_sys_index_number
85
- nil
86
- end
87
-
88
- def mechanical_vent_data_source
89
- nil
90
- end
91
-
92
- def thermal_store
93
- nil
94
- end
95
-
96
- def ventilation_type
97
- nil
98
- end
99
-
100
84
  def water_heating_fuel
101
85
  xpath(%w[Water-Heating-Fuel])
102
86
  end
@@ -26,7 +26,7 @@ module ViewModel
26
26
  end
27
27
 
28
28
  def mech_vent_sys_index_number
29
- xpath(%w[Mechanical-Vent-System-Index-Number])
29
+ xpath(%w[Mechanical-Vent-System-Index-Number])&.to_i
30
30
  end
31
31
 
32
32
  def mechanical_vent_data_source
@@ -90,7 +90,7 @@ module ViewModel
90
90
  end
91
91
 
92
92
  def related_party_disclosure_number
93
- xpath(%w[Related-Party-Disclosure-Number]).to_i
93
+ xpath(%w[Related-Party-Disclosure-Number])&.to_i
94
94
  end
95
95
 
96
96
  def improvements
@@ -149,11 +149,11 @@ module ViewModel
149
149
  end
150
150
 
151
151
  def potential_energy_rating
152
- xpath(%w[Energy-Rating-Potential]).to_i
152
+ xpath(%w[Energy-Rating-Potential])&.to_i
153
153
  end
154
154
 
155
155
  def current_energy_rating
156
- xpath(%w[Energy-Rating-Current]).to_i
156
+ xpath(%w[Energy-Rating-Current])&.to_i
157
157
  end
158
158
 
159
159
  def primary_energy_use
@@ -180,10 +180,6 @@ module ViewModel
180
180
  xpath(%w[Construction-Year])
181
181
  end
182
182
 
183
- def tenure
184
- nil
185
- end
186
-
187
183
  def transaction_type
188
184
  xpath(%w[Transaction-Type])
189
185
  end
@@ -198,19 +194,19 @@ module ViewModel
198
194
 
199
195
  def impact_of_cavity_insulation
200
196
  if xpath(%w[Impact-Of-Cavity-Insulation])
201
- xpath(%w[Impact-Of-Cavity-Insulation]).to_i
197
+ xpath(%w[Impact-Of-Cavity-Insulation])&.to_i
202
198
  end
203
199
  end
204
200
 
205
201
  def impact_of_loft_insulation
206
202
  if xpath(%w[Impact-Of-Loft-Insulation])
207
- xpath(%w[Impact-Of-Loft-Insulation]).to_i
203
+ xpath(%w[Impact-Of-Loft-Insulation])&.to_i
208
204
  end
209
205
  end
210
206
 
211
207
  def impact_of_solid_wall_insulation
212
208
  if xpath(%w[Impact-Of-Solid-Wall-Insulation])
213
- xpath(%w[Impact-Of-Solid-Wall-Insulation]).to_i
209
+ xpath(%w[Impact-Of-Solid-Wall-Insulation])&.to_i
214
210
  end
215
211
  end
216
212
 
@@ -227,7 +223,7 @@ module ViewModel
227
223
  end
228
224
 
229
225
  def type_of_assessment
230
- case xpath(%w[Report-Type]).to_i
226
+ case xpath(%w[Report-Type])&.to_i
231
227
  when 1
232
228
  "HCR"
233
229
  when 2
@@ -238,21 +234,17 @@ module ViewModel
238
234
  end
239
235
 
240
236
  def environmental_impact_current
241
- xpath(%w[Environmental-Impact-Current])
237
+ xpath(%w[Environmental-Impact-Current])&.to_i
242
238
  end
243
239
 
244
240
  def environmental_impact_potential
245
- xpath(%w[Environmental-Impact-Potential])
241
+ xpath(%w[Environmental-Impact-Potential])&.to_i
246
242
  end
247
243
 
248
244
  def co2_emissions_current_per_floor_area
249
245
  xpath(%w[CO2-Emissions-Current-Per-Floor-Area])
250
246
  end
251
247
 
252
- def mains_gas
253
- nil
254
- end
255
-
256
248
  def level
257
249
  xpath(%w[Level])
258
250
  end
@@ -262,10 +254,6 @@ module ViewModel
262
254
  flat_level_code == "3" ? "Y" : "N"
263
255
  end
264
256
 
265
- def storey_count
266
- nil
267
- end
268
-
269
257
  def main_heating_controls
270
258
  xpath(%w[Main-Heating-Controls Description])
271
259
  end
@@ -274,32 +262,20 @@ module ViewModel
274
262
  xpath(%w[Multiple-Glazed-Proportion])
275
263
  end
276
264
 
277
- def glazed_area
278
- nil
279
- end
280
-
281
- def habitable_room_count
282
- nil
283
- end
284
-
285
- def heated_room_count
286
- nil
287
- end
288
-
289
265
  def low_energy_lighting
290
266
  xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Percentage])
291
267
  end
292
268
 
293
269
  def fixed_lighting_outlets_count
294
- xpath(%w[Fixed-Lighting-Outlets-Count])
270
+ xpath(%w[Fixed-Lighting-Outlets-Count])&.to_i
295
271
  end
296
272
 
297
273
  def low_energy_fixed_lighting_outlets_count
298
- xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])
274
+ xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])&.to_i
299
275
  end
300
276
 
301
277
  def open_fireplaces_count
302
- xpath(%w[Open-Fireplaces-Count])
278
+ xpath(%w[Open-Fireplaces-Count])&.to_i
303
279
  end
304
280
 
305
281
  def hot_water_description
@@ -350,16 +326,12 @@ module ViewModel
350
326
  xpath(%w[Lighting Environmental-Efficiency-Rating])
351
327
  end
352
328
 
353
- def photovoltaic_roof_area_percent
354
- nil
355
- end
356
-
357
329
  def built_form
358
330
  xpath(%w[Built-Form])
359
331
  end
360
332
 
361
333
  def wind_turbine_count
362
- xpath(%w[Wind-Turbines-Count])
334
+ xpath(%w[Wind-Turbines-Count])&.to_i
363
335
  end
364
336
 
365
337
  def heat_loss_corridor
@@ -375,7 +347,7 @@ module ViewModel
375
347
  end
376
348
 
377
349
  def extensions_count
378
- xpath(%w[Extensions-Count])
350
+ xpath(%w[Extensions-Count])&.to_i
379
351
  end
380
352
 
381
353
  def all_main_heating_controls_descriptions
@@ -422,14 +394,6 @@ module ViewModel
422
394
  @xml_doc.search("Main-Heating/Energy-Efficiency-Rating").map(&:content)
423
395
  end
424
396
 
425
- def solar_water_heating_flag
426
- nil
427
- end
428
-
429
- def mechanical_ventilation
430
- nil
431
- end
432
-
433
397
  def main_dwelling_construction_age_band_or_year
434
398
  sap_building_parts =
435
399
  @xml_doc.xpath("//SAP-Building-Parts/SAP-Building-Part")
@@ -485,14 +449,6 @@ module ViewModel
485
449
  .search("Main-Heating-Controls/Environmental-Efficiency-Rating")
486
450
  .map(&:content)
487
451
  end
488
-
489
- def gas_smart_meter_present
490
- nil
491
- end
492
-
493
- def electricity_smart_meter_present
494
- nil
495
- end
496
452
  end
497
453
  end
498
454
  end
@@ -30,11 +30,11 @@ module ViewModel
30
30
  end
31
31
 
32
32
  def habitable_room_count
33
- xpath(%w[Habitable-Room-Count])
33
+ xpath(%w[Habitable-Room-Count])&.to_i
34
34
  end
35
35
 
36
36
  def heated_room_count
37
- xpath(%w[Heated-Room-Count])
37
+ xpath(%w[Heated-Room-Count])&.to_i
38
38
  end
39
39
 
40
40
  def photovoltaic_roof_area_percent
@@ -54,7 +54,7 @@ module ViewModel
54
54
  end
55
55
 
56
56
  def storey_count
57
- xpath(%w[Storey-Count])
57
+ xpath(%w[Storey-Count])&.to_i
58
58
  end
59
59
 
60
60
  def energy_tariff
@@ -81,22 +81,6 @@ module ViewModel
81
81
  xpath(%w[Cylinder-Thermostat])
82
82
  end
83
83
 
84
- def mech_vent_sys_index_number
85
- nil
86
- end
87
-
88
- def mechanical_vent_data_source
89
- nil
90
- end
91
-
92
- def thermal_store
93
- nil
94
- end
95
-
96
- def ventilation_type
97
- nil
98
- end
99
-
100
84
  def water_heating_fuel
101
85
  xpath(%w[Water-Heating-Fuel])
102
86
  end
@@ -26,7 +26,7 @@ module ViewModel
26
26
  end
27
27
 
28
28
  def mech_vent_sys_index_number
29
- xpath(%w[Mechanical-Vent-System-Index-Number])
29
+ xpath(%w[Mechanical-Vent-System-Index-Number])&.to_i
30
30
  end
31
31
 
32
32
  def mechanical_vent_data_source
@@ -90,7 +90,7 @@ module ViewModel
90
90
  end
91
91
 
92
92
  def related_party_disclosure_number
93
- xpath(%w[Related-Party-Disclosure-Number]).to_i
93
+ xpath(%w[Related-Party-Disclosure-Number])&.to_i
94
94
  end
95
95
 
96
96
  def improvements
@@ -149,11 +149,11 @@ module ViewModel
149
149
  end
150
150
 
151
151
  def potential_energy_rating
152
- xpath(%w[Energy-Rating-Potential]).to_i
152
+ xpath(%w[Energy-Rating-Potential])&.to_i
153
153
  end
154
154
 
155
155
  def current_energy_rating
156
- xpath(%w[Energy-Rating-Current]).to_i
156
+ xpath(%w[Energy-Rating-Current])&.to_i
157
157
  end
158
158
 
159
159
  def primary_energy_use
@@ -180,10 +180,6 @@ module ViewModel
180
180
  xpath(%w[Construction-Year])
181
181
  end
182
182
 
183
- def tenure
184
- nil
185
- end
186
-
187
183
  def transaction_type
188
184
  xpath(%w[Transaction-Type])
189
185
  end
@@ -198,19 +194,19 @@ module ViewModel
198
194
 
199
195
  def impact_of_cavity_insulation
200
196
  if xpath(%w[Impact-Of-Cavity-Insulation])
201
- xpath(%w[Impact-Of-Cavity-Insulation]).to_i
197
+ xpath(%w[Impact-Of-Cavity-Insulation])&.to_i
202
198
  end
203
199
  end
204
200
 
205
201
  def impact_of_loft_insulation
206
202
  if xpath(%w[Impact-Of-Loft-Insulation])
207
- xpath(%w[Impact-Of-Loft-Insulation]).to_i
203
+ xpath(%w[Impact-Of-Loft-Insulation])&.to_i
208
204
  end
209
205
  end
210
206
 
211
207
  def impact_of_solid_wall_insulation
212
208
  if xpath(%w[Impact-Of-Solid-Wall-Insulation])
213
- xpath(%w[Impact-Of-Solid-Wall-Insulation]).to_i
209
+ xpath(%w[Impact-Of-Solid-Wall-Insulation])&.to_i
214
210
  end
215
211
  end
216
212
 
@@ -227,7 +223,7 @@ module ViewModel
227
223
  end
228
224
 
229
225
  def type_of_assessment
230
- case xpath(%w[Report-Type]).to_i
226
+ case xpath(%w[Report-Type])&.to_i
231
227
  when 1
232
228
  "HCR"
233
229
  when 2
@@ -238,21 +234,17 @@ module ViewModel
238
234
  end
239
235
 
240
236
  def environmental_impact_current
241
- xpath(%w[Environmental-Impact-Current])
237
+ xpath(%w[Environmental-Impact-Current])&.to_i
242
238
  end
243
239
 
244
240
  def environmental_impact_potential
245
- xpath(%w[Environmental-Impact-Potential])
241
+ xpath(%w[Environmental-Impact-Potential])&.to_i
246
242
  end
247
243
 
248
244
  def co2_emissions_current_per_floor_area
249
245
  xpath(%w[CO2-Emissions-Current-Per-Floor-Area])
250
246
  end
251
247
 
252
- def mains_gas
253
- nil
254
- end
255
-
256
248
  def level
257
249
  xpath(%w[Level])
258
250
  end
@@ -262,10 +254,6 @@ module ViewModel
262
254
  flat_level_code == "3" ? "Y" : "N"
263
255
  end
264
256
 
265
- def storey_count
266
- nil
267
- end
268
-
269
257
  def main_heating_controls
270
258
  xpath(%w[Main-Heating-Controls Description])
271
259
  end
@@ -274,32 +262,20 @@ module ViewModel
274
262
  xpath(%w[Multiple-Glazed-Proportion])
275
263
  end
276
264
 
277
- def glazed_area
278
- nil
279
- end
280
-
281
- def habitable_room_count
282
- nil
283
- end
284
-
285
- def heated_room_count
286
- nil
287
- end
288
-
289
265
  def low_energy_lighting
290
266
  xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Percentage])
291
267
  end
292
268
 
293
269
  def fixed_lighting_outlets_count
294
- xpath(%w[Fixed-Lighting-Outlets-Count])
270
+ xpath(%w[Fixed-Lighting-Outlets-Count])&.to_i
295
271
  end
296
272
 
297
273
  def low_energy_fixed_lighting_outlets_count
298
- xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])
274
+ xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])&.to_i
299
275
  end
300
276
 
301
277
  def open_fireplaces_count
302
- xpath(%w[Open-Fireplaces-Count])
278
+ xpath(%w[Open-Fireplaces-Count])&.to_i
303
279
  end
304
280
 
305
281
  def hot_water_description
@@ -350,16 +326,12 @@ module ViewModel
350
326
  xpath(%w[Lighting Environmental-Efficiency-Rating])
351
327
  end
352
328
 
353
- def photovoltaic_roof_area_percent
354
- nil
355
- end
356
-
357
329
  def built_form
358
330
  xpath(%w[Built-Form])
359
331
  end
360
332
 
361
333
  def wind_turbine_count
362
- xpath(%w[Wind-Turbines-Count])
334
+ xpath(%w[Wind-Turbines-Count])&.to_i
363
335
  end
364
336
 
365
337
  def heat_loss_corridor
@@ -375,7 +347,7 @@ module ViewModel
375
347
  end
376
348
 
377
349
  def extensions_count
378
- xpath(%w[Extensions-Count])
350
+ xpath(%w[Extensions-Count])&.to_i
379
351
  end
380
352
 
381
353
  def all_main_heating_controls_descriptions
@@ -422,14 +394,6 @@ module ViewModel
422
394
  @xml_doc.search("Main-Heating/Energy-Efficiency-Rating").map(&:content)
423
395
  end
424
396
 
425
- def solar_water_heating_flag
426
- nil
427
- end
428
-
429
- def mechanical_ventilation
430
- nil
431
- end
432
-
433
397
  def main_dwelling_construction_age_band_or_year
434
398
  sap_building_parts =
435
399
  @xml_doc.xpath("//SAP-Building-Parts/SAP-Building-Part")
@@ -485,14 +449,6 @@ module ViewModel
485
449
  .search("Main-Heating-Controls/Environmental-Efficiency-Rating")
486
450
  .map(&:content)
487
451
  end
488
-
489
- def gas_smart_meter_present
490
- nil
491
- end
492
-
493
- def electricity_smart_meter_present
494
- nil
495
- end
496
452
  end
497
453
  end
498
454
  end
@@ -30,11 +30,11 @@ module ViewModel
30
30
  end
31
31
 
32
32
  def habitable_room_count
33
- xpath(%w[Habitable-Room-Count])
33
+ xpath(%w[Habitable-Room-Count])&.to_i
34
34
  end
35
35
 
36
36
  def heated_room_count
37
- xpath(%w[Heated-Room-Count])
37
+ xpath(%w[Heated-Room-Count])&.to_i
38
38
  end
39
39
 
40
40
  def photovoltaic_roof_area_percent
@@ -54,7 +54,7 @@ module ViewModel
54
54
  end
55
55
 
56
56
  def storey_count
57
- xpath(%w[Storey-Count])
57
+ xpath(%w[Storey-Count])&.to_i
58
58
  end
59
59
 
60
60
  def energy_tariff
@@ -81,22 +81,6 @@ module ViewModel
81
81
  xpath(%w[Cylinder-Thermostat])
82
82
  end
83
83
 
84
- def mech_vent_sys_index_number
85
- nil
86
- end
87
-
88
- def mechanical_vent_data_source
89
- nil
90
- end
91
-
92
- def thermal_store
93
- nil
94
- end
95
-
96
- def ventilation_type
97
- nil
98
- end
99
-
100
84
  def water_heating_fuel
101
85
  xpath(%w[Water-Heating-Fuel])
102
86
  end
@@ -26,7 +26,7 @@ module ViewModel
26
26
  end
27
27
 
28
28
  def mech_vent_sys_index_number
29
- xpath(%w[Mechanical-Vent-System-Index-Number])
29
+ xpath(%w[Mechanical-Vent-System-Index-Number])&.to_i
30
30
  end
31
31
 
32
32
  def mechanical_vent_data_source