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
@@ -42,11 +42,11 @@ module ViewModel
42
42
  end
43
43
 
44
44
  def habitable_room_count
45
- xpath(%w[Habitable-Room-Count])
45
+ xpath(%w[Habitable-Room-Count])&.to_i
46
46
  end
47
47
 
48
48
  def heated_room_count
49
- xpath(%w[Heated-Room-Count])
49
+ xpath(%w[Heated-Room-Count])&.to_i
50
50
  end
51
51
 
52
52
  def photovoltaic_roof_area_percent
@@ -62,7 +62,7 @@ module ViewModel
62
62
  end
63
63
 
64
64
  def storey_count
65
- xpath(%w[Storey-Count])
65
+ xpath(%w[Storey-Count])&.to_i
66
66
  end
67
67
 
68
68
  def energy_tariff
@@ -85,22 +85,6 @@ module ViewModel
85
85
  xpath(%w[Cylinder-Thermostat])
86
86
  end
87
87
 
88
- def mech_vent_sys_index_number
89
- nil
90
- end
91
-
92
- def mechanical_vent_data_source
93
- nil
94
- end
95
-
96
- def thermal_store
97
- nil
98
- end
99
-
100
- def ventilation_type
101
- nil
102
- end
103
-
104
88
  def water_heating_fuel
105
89
  xpath(%w[Water-Heating-Fuel])
106
90
  end
@@ -35,7 +35,7 @@ module ViewModel
35
35
  end
36
36
 
37
37
  def mech_vent_sys_index_number
38
- xpath(%w[Mechanical-Vent-System-Index-Number])
38
+ xpath(%w[Mechanical-Vent-System-Index-Number])&.to_i
39
39
  end
40
40
 
41
41
  def mechanical_vent_data_source
@@ -81,7 +81,7 @@ module ViewModel
81
81
  end
82
82
 
83
83
  def related_party_disclosure_number
84
- xpath(%w[Related-Party-Disclosure-Number]).to_i
84
+ xpath(%w[Related-Party-Disclosure-Number])&.to_i
85
85
  end
86
86
 
87
87
  def improvements
@@ -155,11 +155,11 @@ module ViewModel
155
155
  end
156
156
 
157
157
  def potential_energy_rating
158
- xpath(%w[Energy-Rating-Potential]).to_i
158
+ xpath(%w[Energy-Rating-Potential])&.to_i
159
159
  end
160
160
 
161
161
  def current_energy_rating
162
- xpath(%w[Energy-Rating-Current]).to_i
162
+ xpath(%w[Energy-Rating-Current])&.to_i
163
163
  end
164
164
 
165
165
  def primary_energy_use
@@ -186,10 +186,6 @@ module ViewModel
186
186
  xpath(%w[Construction-Year])
187
187
  end
188
188
 
189
- def tenure
190
- nil
191
- end
192
-
193
189
  def transaction_type
194
190
  xpath(%w[Transaction-Type])
195
191
  end
@@ -204,19 +200,19 @@ module ViewModel
204
200
 
205
201
  def impact_of_cavity_insulation
206
202
  if xpath(%w[Impact-Of-Cavity-Insulation])
207
- xpath(%w[Impact-Of-Cavity-Insulation]).to_i
203
+ xpath(%w[Impact-Of-Cavity-Insulation])&.to_i
208
204
  end
209
205
  end
210
206
 
211
207
  def impact_of_loft_insulation
212
208
  if xpath(%w[Impact-Of-Loft-Insulation])
213
- xpath(%w[Impact-Of-Loft-Insulation]).to_i
209
+ xpath(%w[Impact-Of-Loft-Insulation])&.to_i
214
210
  end
215
211
  end
216
212
 
217
213
  def impact_of_solid_wall_insulation
218
214
  if xpath(%w[Impact-Of-Solid-Wall-Insulation])
219
- xpath(%w[Impact-Of-Solid-Wall-Insulation]).to_i
215
+ xpath(%w[Impact-Of-Solid-Wall-Insulation])&.to_i
220
216
  end
221
217
  end
222
218
 
@@ -233,7 +229,7 @@ module ViewModel
233
229
  end
234
230
 
235
231
  def type_of_assessment
236
- case xpath(%w[Report-Type]).to_i
232
+ case xpath(%w[Report-Type])&.to_i
237
233
  when 1
238
234
  "HCR"
239
235
  when 2
@@ -244,21 +240,17 @@ module ViewModel
244
240
  end
245
241
 
246
242
  def environmental_impact_current
247
- xpath(%w[Environmental-Impact-Current])
243
+ xpath(%w[Environmental-Impact-Current])&.to_i
248
244
  end
249
245
 
250
246
  def environmental_impact_potential
251
- xpath(%w[Environmental-Impact-Potential])
247
+ xpath(%w[Environmental-Impact-Potential])&.to_i
252
248
  end
253
249
 
254
250
  def co2_emissions_current_per_floor_area
255
251
  xpath(%w[CO2-Emissions-Current-Per-Floor-Area])
256
252
  end
257
253
 
258
- def mains_gas
259
- nil
260
- end
261
-
262
254
  def level
263
255
  xpath(%w[Level])
264
256
  end
@@ -268,10 +260,6 @@ module ViewModel
268
260
  flat_level_code == "3" ? "Y" : "N"
269
261
  end
270
262
 
271
- def storey_count
272
- nil
273
- end
274
-
275
263
  def main_heating_controls
276
264
  xpath(%w[Main-Heating-Controls Description])
277
265
  end
@@ -280,32 +268,20 @@ module ViewModel
280
268
  xpath(%w[Multiple-Glazed-Proportion])
281
269
  end
282
270
 
283
- def glazed_area
284
- nil
285
- end
286
-
287
- def habitable_room_count
288
- nil
289
- end
290
-
291
- def heated_room_count
292
- nil
293
- end
294
-
295
271
  def low_energy_lighting
296
272
  xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Percentage])
297
273
  end
298
274
 
299
275
  def fixed_lighting_outlets_count
300
- xpath(%w[Fixed-Lighting-Outlets-Count])
276
+ xpath(%w[Fixed-Lighting-Outlets-Count])&.to_i
301
277
  end
302
278
 
303
279
  def low_energy_fixed_lighting_outlets_count
304
- xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])
280
+ xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])&.to_i
305
281
  end
306
282
 
307
283
  def open_fireplaces_count
308
- xpath(%w[Open-Fireplaces-Count])
284
+ xpath(%w[Open-Fireplaces-Count])&.to_i
309
285
  end
310
286
 
311
287
  def hot_water_description
@@ -356,10 +332,6 @@ module ViewModel
356
332
  xpath(%w[Lighting Environmental-Efficiency-Rating])
357
333
  end
358
334
 
359
- def photovoltaic_roof_area_percent
360
- nil
361
- end
362
-
363
335
  def built_form
364
336
  xpath(%w[Built-Form])
365
337
  end
@@ -369,7 +341,7 @@ module ViewModel
369
341
  end
370
342
 
371
343
  def wind_turbine_count
372
- xpath(%w[Wind-Turbines-Count])
344
+ xpath(%w[Wind-Turbines-Count])&.to_i
373
345
  end
374
346
 
375
347
  def unheated_corridor_length
@@ -381,7 +353,7 @@ module ViewModel
381
353
  end
382
354
 
383
355
  def extensions_count
384
- xpath(%w[Extensions-Count])
356
+ xpath(%w[Extensions-Count])&.to_i
385
357
  end
386
358
 
387
359
  def all_main_heating_controls_descriptions
@@ -428,14 +400,6 @@ module ViewModel
428
400
  @xml_doc.search("Main-Heating/Energy-Efficiency-Rating").map(&:content)
429
401
  end
430
402
 
431
- def solar_water_heating_flag
432
- nil
433
- end
434
-
435
- def mechanical_ventilation
436
- nil
437
- end
438
-
439
403
  def main_dwelling_construction_age_band_or_year
440
404
  sap_building_parts =
441
405
  @xml_doc.xpath("//SAP-Building-Parts/SAP-Building-Part")
@@ -491,14 +455,6 @@ module ViewModel
491
455
  def floor_height
492
456
  @xml_doc.search("Storey-Height").map(&:content)
493
457
  end
494
-
495
- def gas_smart_meter_present
496
- nil
497
- end
498
-
499
- def electricity_smart_meter_present
500
- nil
501
- end
502
458
  end
503
459
  end
504
460
  end
@@ -46,11 +46,11 @@ module ViewModel
46
46
  end
47
47
 
48
48
  def habitable_room_count
49
- xpath(%w[Habitable-Room-Count])
49
+ xpath(%w[Habitable-Room-Count])&.to_i
50
50
  end
51
51
 
52
52
  def heated_room_count
53
- xpath(%w[Heated-Room-Count])
53
+ xpath(%w[Heated-Room-Count])&.to_i
54
54
  end
55
55
 
56
56
  def photovoltaic_roof_area_percent
@@ -66,7 +66,7 @@ module ViewModel
66
66
  end
67
67
 
68
68
  def storey_count
69
- xpath(%w[Storey-Count])
69
+ xpath(%w[Storey-Count])&.to_i
70
70
  end
71
71
 
72
72
  def energy_tariff
@@ -89,22 +89,6 @@ module ViewModel
89
89
  xpath(%w[Cylinder-Thermostat])
90
90
  end
91
91
 
92
- def mech_vent_sys_index_number
93
- nil
94
- end
95
-
96
- def mechanical_vent_data_source
97
- nil
98
- end
99
-
100
- def thermal_store
101
- nil
102
- end
103
-
104
- def ventilation_type
105
- nil
106
- end
107
-
108
92
  def water_heating_fuel
109
93
  xpath(%w[Water-Heating-Fuel])
110
94
  end
@@ -35,7 +35,7 @@ module ViewModel
35
35
  end
36
36
 
37
37
  def mech_vent_sys_index_number
38
- xpath(%w[Mechanical-Vent-System-Index-Number])
38
+ xpath(%w[Mechanical-Vent-System-Index-Number])&.to_i
39
39
  end
40
40
 
41
41
  def mechanical_vent_data_source
@@ -81,7 +81,7 @@ module ViewModel
81
81
  end
82
82
 
83
83
  def related_party_disclosure_number
84
- xpath(%w[Related-Party-Disclosure-Number]).to_i
84
+ xpath(%w[Related-Party-Disclosure-Number])&.to_i
85
85
  end
86
86
 
87
87
  def improvements
@@ -155,11 +155,11 @@ module ViewModel
155
155
  end
156
156
 
157
157
  def potential_energy_rating
158
- xpath(%w[Energy-Rating-Potential]).to_i
158
+ xpath(%w[Energy-Rating-Potential])&.to_i
159
159
  end
160
160
 
161
161
  def current_energy_rating
162
- xpath(%w[Energy-Rating-Current]).to_i
162
+ xpath(%w[Energy-Rating-Current])&.to_i
163
163
  end
164
164
 
165
165
  def primary_energy_use
@@ -182,10 +182,6 @@ module ViewModel
182
182
 
183
183
  def potential_energy_saving; end
184
184
 
185
- def tenure
186
- nil
187
- end
188
-
189
185
  def transaction_type
190
186
  xpath(%w[Transaction-Type])
191
187
  end
@@ -200,19 +196,19 @@ module ViewModel
200
196
 
201
197
  def impact_of_cavity_insulation
202
198
  if xpath(%w[Impact-Of-Cavity-Insulation])
203
- xpath(%w[Impact-Of-Cavity-Insulation]).to_i
199
+ xpath(%w[Impact-Of-Cavity-Insulation])&.to_i
204
200
  end
205
201
  end
206
202
 
207
203
  def impact_of_loft_insulation
208
204
  if xpath(%w[Impact-Of-Loft-Insulation])
209
- xpath(%w[Impact-Of-Loft-Insulation]).to_i
205
+ xpath(%w[Impact-Of-Loft-Insulation])&.to_i
210
206
  end
211
207
  end
212
208
 
213
209
  def impact_of_solid_wall_insulation
214
210
  if xpath(%w[Impact-Of-Solid-Wall-Insulation])
215
- xpath(%w[Impact-Of-Solid-Wall-Insulation]).to_i
211
+ xpath(%w[Impact-Of-Solid-Wall-Insulation])&.to_i
216
212
  end
217
213
  end
218
214
 
@@ -229,7 +225,7 @@ module ViewModel
229
225
  end
230
226
 
231
227
  def type_of_assessment
232
- case xpath(%w[Report-Type]).to_i
228
+ case xpath(%w[Report-Type])&.to_i
233
229
  when 1
234
230
  "HCR"
235
231
  when 2
@@ -240,21 +236,17 @@ module ViewModel
240
236
  end
241
237
 
242
238
  def environmental_impact_current
243
- xpath(%w[Environmental-Impact-Current])
239
+ xpath(%w[Environmental-Impact-Current])&.to_i
244
240
  end
245
241
 
246
242
  def environmental_impact_potential
247
- xpath(%w[Environmental-Impact-Potential])
243
+ xpath(%w[Environmental-Impact-Potential])&.to_i
248
244
  end
249
245
 
250
246
  def co2_emissions_current_per_floor_area
251
247
  xpath(%w[CO2-Emissions-Current-Per-Floor-Area])
252
248
  end
253
249
 
254
- def mains_gas
255
- nil
256
- end
257
-
258
250
  def level
259
251
  xpath(%w[Level])
260
252
  end
@@ -264,10 +256,6 @@ module ViewModel
264
256
  flat_level_code == "3" ? "Y" : "N"
265
257
  end
266
258
 
267
- def storey_count
268
- nil
269
- end
270
-
271
259
  def main_heating_controls
272
260
  xpath(%w[Main-Heating-Controls Description])
273
261
  end
@@ -276,32 +264,20 @@ module ViewModel
276
264
  xpath(%w[Multiple-Glazed-Proportion])
277
265
  end
278
266
 
279
- def glazed_area
280
- nil
281
- end
282
-
283
- def habitable_room_count
284
- nil
285
- end
286
-
287
- def heated_room_count
288
- nil
289
- end
290
-
291
267
  def low_energy_lighting
292
268
  xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Percentage])
293
269
  end
294
270
 
295
271
  def fixed_lighting_outlets_count
296
- xpath(%w[Fixed-Lighting-Outlets-Count])
272
+ xpath(%w[Fixed-Lighting-Outlets-Count])&.to_i
297
273
  end
298
274
 
299
275
  def low_energy_fixed_lighting_outlets_count
300
- xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])
276
+ xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])&.to_i
301
277
  end
302
278
 
303
279
  def open_fireplaces_count
304
- xpath(%w[Open-Fireplaces-Count])
280
+ xpath(%w[Open-Fireplaces-Count])&.to_i
305
281
  end
306
282
 
307
283
  def hot_water_description
@@ -352,10 +328,6 @@ module ViewModel
352
328
  xpath(%w[Lighting Environmental-Efficiency-Rating])
353
329
  end
354
330
 
355
- def photovoltaic_roof_area_percent
356
- nil
357
- end
358
-
359
331
  def built_form
360
332
  xpath(%w[Built-Form])
361
333
  end
@@ -365,7 +337,7 @@ module ViewModel
365
337
  end
366
338
 
367
339
  def wind_turbine_count
368
- xpath(%w[Wind-Turbines-Count])
340
+ xpath(%w[Wind-Turbines-Count])&.to_i
369
341
  end
370
342
 
371
343
  def unheated_corridor_length
@@ -377,7 +349,7 @@ module ViewModel
377
349
  end
378
350
 
379
351
  def extensions_count
380
- xpath(%w[Extensions-Count])
352
+ xpath(%w[Extensions-Count])&.to_i
381
353
  end
382
354
 
383
355
  def all_main_heating_controls_descriptions
@@ -424,14 +396,6 @@ module ViewModel
424
396
  @xml_doc.search("Main-Heating/Energy-Efficiency-Rating").map(&:content)
425
397
  end
426
398
 
427
- def solar_water_heating_flag
428
- nil
429
- end
430
-
431
- def mechanical_ventilation
432
- nil
433
- end
434
-
435
399
  def main_dwelling_construction_age_band_or_year
436
400
  sap_building_parts =
437
401
  @xml_doc.xpath("//SAP-Building-Parts/SAP-Building-Part")
@@ -487,14 +451,6 @@ module ViewModel
487
451
  def floor_height
488
452
  @xml_doc.search("Storey-Height").map(&:content)
489
453
  end
490
-
491
- def gas_smart_meter_present
492
- nil
493
- end
494
-
495
- def electricity_smart_meter_present
496
- nil
497
- end
498
454
  end
499
455
  end
500
456
  end
@@ -46,11 +46,11 @@ module ViewModel
46
46
  end
47
47
 
48
48
  def habitable_room_count
49
- xpath(%w[Habitable-Room-Count])
49
+ xpath(%w[Habitable-Room-Count])&.to_i
50
50
  end
51
51
 
52
52
  def heated_room_count
53
- xpath(%w[Heated-Room-Count])
53
+ xpath(%w[Heated-Room-Count])&.to_i
54
54
  end
55
55
 
56
56
  def photovoltaic_roof_area_percent
@@ -66,7 +66,7 @@ module ViewModel
66
66
  end
67
67
 
68
68
  def storey_count
69
- xpath(%w[Storey-Count])
69
+ xpath(%w[Storey-Count])&.to_i
70
70
  end
71
71
 
72
72
  def energy_tariff
@@ -89,22 +89,6 @@ module ViewModel
89
89
  xpath(%w[Cylinder-Thermostat])
90
90
  end
91
91
 
92
- def mech_vent_sys_index_number
93
- nil
94
- end
95
-
96
- def mechanical_vent_data_source
97
- nil
98
- end
99
-
100
- def thermal_store
101
- nil
102
- end
103
-
104
- def ventilation_type
105
- nil
106
- end
107
-
108
92
  def water_heating_fuel
109
93
  xpath(%w[Water-Heating-Fuel])
110
94
  end
@@ -35,7 +35,7 @@ module ViewModel
35
35
  end
36
36
 
37
37
  def mech_vent_sys_index_number
38
- xpath(%w[Mechanical-Vent-System-Index-Number])
38
+ xpath(%w[Mechanical-Vent-System-Index-Number])&.to_i
39
39
  end
40
40
 
41
41
  def mechanical_vent_data_source