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
@@ -38,11 +38,11 @@ module ViewModel
38
38
  end
39
39
 
40
40
  def habitable_room_count
41
- xpath(%w[Habitable-Room-Count])
41
+ xpath(%w[Habitable-Room-Count])&.to_i
42
42
  end
43
43
 
44
44
  def heated_room_count
45
- xpath(%w[Heated-Room-Count])
45
+ xpath(%w[Heated-Room-Count])&.to_i
46
46
  end
47
47
 
48
48
  def photovoltaic_roof_area_percent
@@ -58,7 +58,7 @@ module ViewModel
58
58
  end
59
59
 
60
60
  def storey_count
61
- xpath(%w[Storey-Count])
61
+ xpath(%w[Storey-Count])&.to_i
62
62
  end
63
63
 
64
64
  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
@@ -164,11 +164,11 @@ module ViewModel
164
164
  end
165
165
 
166
166
  def potential_energy_rating
167
- xpath(%w[Energy-Rating-Potential]).to_i
167
+ xpath(%w[Energy-Rating-Potential])&.to_i
168
168
  end
169
169
 
170
170
  def current_energy_rating
171
- xpath(%w[Energy-Rating-Current]).to_i
171
+ xpath(%w[Energy-Rating-Current])&.to_i
172
172
  end
173
173
 
174
174
  def primary_energy_use
@@ -195,10 +195,6 @@ module ViewModel
195
195
  xpath(%w[Construction-Year])
196
196
  end
197
197
 
198
- def tenure
199
- nil
200
- end
201
-
202
198
  def transaction_type
203
199
  xpath(%w[Transaction-Type])
204
200
  end
@@ -213,19 +209,19 @@ module ViewModel
213
209
 
214
210
  def impact_of_cavity_insulation
215
211
  if xpath(%w[Impact-Of-Cavity-Insulation])
216
- xpath(%w[Impact-Of-Cavity-Insulation]).to_i
212
+ xpath(%w[Impact-Of-Cavity-Insulation])&.to_i
217
213
  end
218
214
  end
219
215
 
220
216
  def impact_of_loft_insulation
221
217
  if xpath(%w[Impact-Of-Loft-Insulation])
222
- xpath(%w[Impact-Of-Loft-Insulation]).to_i
218
+ xpath(%w[Impact-Of-Loft-Insulation])&.to_i
223
219
  end
224
220
  end
225
221
 
226
222
  def impact_of_solid_wall_insulation
227
223
  if xpath(%w[Impact-Of-Solid-Wall-Insulation])
228
- xpath(%w[Impact-Of-Solid-Wall-Insulation]).to_i
224
+ xpath(%w[Impact-Of-Solid-Wall-Insulation])&.to_i
229
225
  end
230
226
  end
231
227
 
@@ -242,7 +238,7 @@ module ViewModel
242
238
  end
243
239
 
244
240
  def type_of_assessment
245
- case xpath(%w[Report-Type]).to_i
241
+ case xpath(%w[Report-Type])&.to_i
246
242
  when 1
247
243
  "HCR"
248
244
  when 2
@@ -253,21 +249,17 @@ module ViewModel
253
249
  end
254
250
 
255
251
  def environmental_impact_current
256
- xpath(%w[Environmental-Impact-Current])
252
+ xpath(%w[Environmental-Impact-Current])&.to_i
257
253
  end
258
254
 
259
255
  def environmental_impact_potential
260
- xpath(%w[Environmental-Impact-Potential])
256
+ xpath(%w[Environmental-Impact-Potential])&.to_i
261
257
  end
262
258
 
263
259
  def co2_emissions_current_per_floor_area
264
260
  xpath(%w[CO2-Emissions-Current-Per-Floor-Area])
265
261
  end
266
262
 
267
- def mains_gas
268
- nil
269
- end
270
-
271
263
  def level
272
264
  xpath(%w[Level])
273
265
  end
@@ -277,10 +269,6 @@ module ViewModel
277
269
  flat_level_code == "3" ? "Y" : "N"
278
270
  end
279
271
 
280
- def storey_count
281
- nil
282
- end
283
-
284
272
  def main_heating_controls
285
273
  xpath(%w[Main-Heating-Controls Description])
286
274
  end
@@ -289,32 +277,20 @@ module ViewModel
289
277
  xpath(%w[Multiple-Glazed-Proportion])
290
278
  end
291
279
 
292
- def glazed_area
293
- nil
294
- end
295
-
296
- def habitable_room_count
297
- nil
298
- end
299
-
300
- def heated_room_count
301
- nil
302
- end
303
-
304
280
  def low_energy_lighting
305
281
  xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Percentage])
306
282
  end
307
283
 
308
284
  def fixed_lighting_outlets_count
309
- xpath(%w[Fixed-Lighting-Outlets-Count])
285
+ xpath(%w[Fixed-Lighting-Outlets-Count])&.to_i
310
286
  end
311
287
 
312
288
  def low_energy_fixed_lighting_outlets_count
313
- xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])
289
+ xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])&.to_i
314
290
  end
315
291
 
316
292
  def open_fireplaces_count
317
- xpath(%w[Open-Fireplaces-Count])
293
+ xpath(%w[Open-Fireplaces-Count])&.to_i
318
294
  end
319
295
 
320
296
  def hot_water_description
@@ -365,10 +341,6 @@ module ViewModel
365
341
  xpath(%w[Lighting Environmental-Efficiency-Rating])
366
342
  end
367
343
 
368
- def photovoltaic_roof_area_percent
369
- nil
370
- end
371
-
372
344
  def built_form
373
345
  xpath(%w[Built-Form])
374
346
  end
@@ -382,7 +354,7 @@ module ViewModel
382
354
  end
383
355
 
384
356
  def wind_turbine_count
385
- xpath(%w[Wind-Turbines-Count])
357
+ xpath(%w[Wind-Turbines-Count])&.to_i
386
358
  end
387
359
 
388
360
  def all_main_heating_descriptions
@@ -390,7 +362,7 @@ module ViewModel
390
362
  end
391
363
 
392
364
  def extensions_count
393
- xpath(%w[Extensions-Count])
365
+ xpath(%w[Extensions-Count])&.to_i
394
366
  end
395
367
 
396
368
  def all_main_heating_controls_descriptions
@@ -437,14 +409,6 @@ module ViewModel
437
409
  @xml_doc.search("Main-Heating/Energy-Efficiency-Rating").map(&:content)
438
410
  end
439
411
 
440
- def solar_water_heating_flag
441
- nil
442
- end
443
-
444
- def mechanical_ventilation
445
- nil
446
- end
447
-
448
412
  def main_dwelling_construction_age_band_or_year
449
413
  sap_building_parts =
450
414
  @xml_doc.xpath("//SAP-Building-Parts/SAP-Building-Part")
@@ -500,14 +464,6 @@ module ViewModel
500
464
  .search("Main-Heating/Environmental-Efficiency-Rating")
501
465
  .map(&:content)
502
466
  end
503
-
504
- def gas_smart_meter_present
505
- nil
506
- end
507
-
508
- def electricity_smart_meter_present
509
- nil
510
- end
511
467
  end
512
468
  end
513
469
  end
@@ -38,11 +38,11 @@ module ViewModel
38
38
  end
39
39
 
40
40
  def habitable_room_count
41
- xpath(%w[Habitable-Room-Count])
41
+ xpath(%w[Habitable-Room-Count])&.to_i
42
42
  end
43
43
 
44
44
  def heated_room_count
45
- xpath(%w[Heated-Room-Count])
45
+ xpath(%w[Heated-Room-Count])&.to_i
46
46
  end
47
47
 
48
48
  def photovoltaic_roof_area_percent
@@ -58,7 +58,7 @@ module ViewModel
58
58
  end
59
59
 
60
60
  def storey_count
61
- xpath(%w[Storey-Count])
61
+ xpath(%w[Storey-Count])&.to_i
62
62
  end
63
63
 
64
64
  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
@@ -164,11 +164,11 @@ module ViewModel
164
164
  end
165
165
 
166
166
  def potential_energy_rating
167
- xpath(%w[Energy-Rating-Potential]).to_i
167
+ xpath(%w[Energy-Rating-Potential])&.to_i
168
168
  end
169
169
 
170
170
  def current_energy_rating
171
- xpath(%w[Energy-Rating-Current]).to_i
171
+ xpath(%w[Energy-Rating-Current])&.to_i
172
172
  end
173
173
 
174
174
  def primary_energy_use
@@ -195,10 +195,6 @@ module ViewModel
195
195
  xpath(%w[Construction-Year])
196
196
  end
197
197
 
198
- def tenure
199
- nil
200
- end
201
-
202
198
  def transaction_type
203
199
  xpath(%w[Transaction-Type])
204
200
  end
@@ -213,19 +209,19 @@ module ViewModel
213
209
 
214
210
  def impact_of_cavity_insulation
215
211
  if xpath(%w[Impact-Of-Cavity-Insulation])
216
- xpath(%w[Impact-Of-Cavity-Insulation]).to_i
212
+ xpath(%w[Impact-Of-Cavity-Insulation])&.to_i
217
213
  end
218
214
  end
219
215
 
220
216
  def impact_of_loft_insulation
221
217
  if xpath(%w[Impact-Of-Loft-Insulation])
222
- xpath(%w[Impact-Of-Loft-Insulation]).to_i
218
+ xpath(%w[Impact-Of-Loft-Insulation])&.to_i
223
219
  end
224
220
  end
225
221
 
226
222
  def impact_of_solid_wall_insulation
227
223
  if xpath(%w[Impact-Of-Solid-Wall-Insulation])
228
- xpath(%w[Impact-Of-Solid-Wall-Insulation]).to_i
224
+ xpath(%w[Impact-Of-Solid-Wall-Insulation])&.to_i
229
225
  end
230
226
  end
231
227
 
@@ -242,7 +238,7 @@ module ViewModel
242
238
  end
243
239
 
244
240
  def type_of_assessment
245
- case xpath(%w[Report-Type]).to_i
241
+ case xpath(%w[Report-Type])&.to_i
246
242
  when 1
247
243
  "HCR"
248
244
  when 2
@@ -253,21 +249,17 @@ module ViewModel
253
249
  end
254
250
 
255
251
  def environmental_impact_current
256
- xpath(%w[Environmental-Impact-Current])
252
+ xpath(%w[Environmental-Impact-Current])&.to_i
257
253
  end
258
254
 
259
255
  def environmental_impact_potential
260
- xpath(%w[Environmental-Impact-Potential])
256
+ xpath(%w[Environmental-Impact-Potential])&.to_i
261
257
  end
262
258
 
263
259
  def co2_emissions_current_per_floor_area
264
260
  xpath(%w[CO2-Emissions-Current-Per-Floor-Area])
265
261
  end
266
262
 
267
- def mains_gas
268
- nil
269
- end
270
-
271
263
  def level
272
264
  xpath(%w[Level])
273
265
  end
@@ -277,10 +269,6 @@ module ViewModel
277
269
  flat_level_code == "3" ? "Y" : "N"
278
270
  end
279
271
 
280
- def storey_count
281
- nil
282
- end
283
-
284
272
  def main_heating_controls
285
273
  xpath(%w[Main-Heating-Controls Description])
286
274
  end
@@ -289,32 +277,20 @@ module ViewModel
289
277
  xpath(%w[Multiple-Glazed-Proportion])
290
278
  end
291
279
 
292
- def glazed_area
293
- nil
294
- end
295
-
296
- def habitable_room_count
297
- nil
298
- end
299
-
300
- def heated_room_count
301
- nil
302
- end
303
-
304
280
  def low_energy_lighting
305
281
  xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Percentage])
306
282
  end
307
283
 
308
284
  def fixed_lighting_outlets_count
309
- xpath(%w[Fixed-Lighting-Outlets-Count])
285
+ xpath(%w[Fixed-Lighting-Outlets-Count])&.to_i
310
286
  end
311
287
 
312
288
  def low_energy_fixed_lighting_outlets_count
313
- xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])
289
+ xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])&.to_i
314
290
  end
315
291
 
316
292
  def open_fireplaces_count
317
- xpath(%w[Open-Fireplaces-Count])
293
+ xpath(%w[Open-Fireplaces-Count])&.to_i
318
294
  end
319
295
 
320
296
  def hot_water_description
@@ -365,10 +341,6 @@ module ViewModel
365
341
  xpath(%w[Lighting Environmental-Efficiency-Rating])
366
342
  end
367
343
 
368
- def photovoltaic_roof_area_percent
369
- nil
370
- end
371
-
372
344
  def built_form
373
345
  xpath(%w[Built-Form])
374
346
  end
@@ -378,7 +350,7 @@ module ViewModel
378
350
  end
379
351
 
380
352
  def wind_turbine_count
381
- xpath(%w[Wind-Turbines-Count])
353
+ xpath(%w[Wind-Turbines-Count])&.to_i
382
354
  end
383
355
 
384
356
  def unheated_corridor_length
@@ -390,7 +362,7 @@ module ViewModel
390
362
  end
391
363
 
392
364
  def extensions_count
393
- xpath(%w[Extensions-Count])
365
+ xpath(%w[Extensions-Count])&.to_i
394
366
  end
395
367
 
396
368
  def all_main_heating_controls_descriptions
@@ -437,14 +409,6 @@ module ViewModel
437
409
  @xml_doc.search("Main-Heating/Energy-Efficiency-Rating").map(&:content)
438
410
  end
439
411
 
440
- def solar_water_heating_flag
441
- nil
442
- end
443
-
444
- def mechanical_ventilation
445
- nil
446
- end
447
-
448
412
  def main_dwelling_construction_age_band_or_year
449
413
  sap_building_parts =
450
414
  @xml_doc.xpath("//SAP-Building-Parts/SAP-Building-Part")
@@ -500,14 +464,6 @@ module ViewModel
500
464
  .search("Main-Heating/Environmental-Efficiency-Rating")
501
465
  .map(&:content)
502
466
  end
503
-
504
- def gas_smart_meter_present
505
- nil
506
- end
507
-
508
- def electricity_smart_meter_present
509
- nil
510
- end
511
467
  end
512
468
  end
513
469
  end
@@ -38,11 +38,11 @@ module ViewModel
38
38
  end
39
39
 
40
40
  def habitable_room_count
41
- xpath(%w[Habitable-Room-Count])
41
+ xpath(%w[Habitable-Room-Count])&.to_i
42
42
  end
43
43
 
44
44
  def heated_room_count
45
- xpath(%w[Heated-Room-Count])
45
+ xpath(%w[Heated-Room-Count])&.to_i
46
46
  end
47
47
 
48
48
  def photovoltaic_roof_area_percent
@@ -58,7 +58,7 @@ module ViewModel
58
58
  end
59
59
 
60
60
  def storey_count
61
- xpath(%w[Storey-Count])
61
+ xpath(%w[Storey-Count])&.to_i
62
62
  end
63
63
 
64
64
  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