epb_view_models 1.2.3 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
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
@@ -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
@@ -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
@@ -198,19 +198,19 @@ module ViewModel
198
198
 
199
199
  def impact_of_cavity_insulation
200
200
  if xpath(%w[Impact-Of-Cavity-Insulation])
201
- xpath(%w[Impact-Of-Cavity-Insulation]).to_i
201
+ xpath(%w[Impact-Of-Cavity-Insulation])&.to_i
202
202
  end
203
203
  end
204
204
 
205
205
  def impact_of_loft_insulation
206
206
  if xpath(%w[Impact-Of-Loft-Insulation])
207
- xpath(%w[Impact-Of-Loft-Insulation]).to_i
207
+ xpath(%w[Impact-Of-Loft-Insulation])&.to_i
208
208
  end
209
209
  end
210
210
 
211
211
  def impact_of_solid_wall_insulation
212
212
  if xpath(%w[Impact-Of-Solid-Wall-Insulation])
213
- xpath(%w[Impact-Of-Solid-Wall-Insulation]).to_i
213
+ xpath(%w[Impact-Of-Solid-Wall-Insulation])&.to_i
214
214
  end
215
215
  end
216
216
 
@@ -227,7 +227,7 @@ module ViewModel
227
227
  end
228
228
 
229
229
  def type_of_assessment
230
- case xpath(%w[Report-Type]).to_i
230
+ case xpath(%w[Report-Type])&.to_i
231
231
  when 1
232
232
  "HCR"
233
233
  when 2
@@ -238,21 +238,17 @@ module ViewModel
238
238
  end
239
239
 
240
240
  def environmental_impact_current
241
- xpath(%w[Environmental-Impact-Current])
241
+ xpath(%w[Environmental-Impact-Current])&.to_i
242
242
  end
243
243
 
244
244
  def environmental_impact_potential
245
- xpath(%w[Environmental-Impact-Potential])
245
+ xpath(%w[Environmental-Impact-Potential])&.to_i
246
246
  end
247
247
 
248
248
  def co2_emissions_current_per_floor_area
249
249
  xpath(%w[CO2-Emissions-Current-Per-Floor-Area])
250
250
  end
251
251
 
252
- def mains_gas
253
- nil
254
- end
255
-
256
252
  def level
257
253
  xpath(%w[Level])
258
254
  end
@@ -262,10 +258,6 @@ module ViewModel
262
258
  flat_level_code == "3" ? "Y" : "N"
263
259
  end
264
260
 
265
- def storey_count
266
- nil
267
- end
268
-
269
261
  def main_heating_controls
270
262
  xpath(%w[Main-Heating-Controls Description])
271
263
  end
@@ -274,32 +266,20 @@ module ViewModel
274
266
  xpath(%w[Multiple-Glazed-Proportion])
275
267
  end
276
268
 
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
269
  def low_energy_lighting
290
270
  xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Percentage])
291
271
  end
292
272
 
293
273
  def fixed_lighting_outlets_count
294
- xpath(%w[Fixed-Lighting-Outlets-Count])
274
+ xpath(%w[Fixed-Lighting-Outlets-Count])&.to_i
295
275
  end
296
276
 
297
277
  def low_energy_fixed_lighting_outlets_count
298
- xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])
278
+ xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])&.to_i
299
279
  end
300
280
 
301
281
  def open_fireplaces_count
302
- xpath(%w[Open-Fireplaces-Count])
282
+ xpath(%w[Open-Fireplaces-Count])&.to_i
303
283
  end
304
284
 
305
285
  def hot_water_description
@@ -350,16 +330,12 @@ module ViewModel
350
330
  xpath(%w[Lighting Environmental-Efficiency-Rating])
351
331
  end
352
332
 
353
- def photovoltaic_roof_area_percent
354
- nil
355
- end
356
-
357
333
  def built_form
358
334
  xpath(%w[Built-Form])
359
335
  end
360
336
 
361
337
  def wind_turbine_count
362
- xpath(%w[Wind-Turbines-Count])
338
+ xpath(%w[Wind-Turbines-Count])&.to_i
363
339
  end
364
340
 
365
341
  def heat_loss_corridor
@@ -375,7 +351,7 @@ module ViewModel
375
351
  end
376
352
 
377
353
  def extensions_count
378
- xpath(%w[Extensions-Count])
354
+ xpath(%w[Extensions-Count])&.to_i
379
355
  end
380
356
 
381
357
  def all_main_heating_controls_descriptions
@@ -422,14 +398,6 @@ module ViewModel
422
398
  @xml_doc.search("Main-Heating/Energy-Efficiency-Rating").map(&:content)
423
399
  end
424
400
 
425
- def solar_water_heating_flag
426
- nil
427
- end
428
-
429
- def mechanical_ventilation
430
- nil
431
- end
432
-
433
401
  def main_dwelling_construction_age_band_or_year
434
402
  sap_building_parts =
435
403
  @xml_doc.xpath("//SAP-Building-Parts/SAP-Building-Part")
@@ -485,14 +453,6 @@ module ViewModel
485
453
  .search("Main-Heating-Controls/Environmental-Efficiency-Rating")
486
454
  .map(&:content)
487
455
  end
488
-
489
- def gas_smart_meter_present
490
- nil
491
- end
492
-
493
- def electricity_smart_meter_present
494
- nil
495
- end
496
456
  end
497
457
  end
498
458
  end
@@ -34,11 +34,11 @@ module ViewModel
34
34
  end
35
35
 
36
36
  def habitable_room_count
37
- xpath(%w[Habitable-Room-Count])
37
+ xpath(%w[Habitable-Room-Count])&.to_i
38
38
  end
39
39
 
40
40
  def heated_room_count
41
- xpath(%w[Heated-Room-Count])
41
+ xpath(%w[Heated-Room-Count])&.to_i
42
42
  end
43
43
 
44
44
  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
@@ -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
@@ -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
@@ -198,19 +198,19 @@ module ViewModel
198
198
 
199
199
  def impact_of_cavity_insulation
200
200
  if xpath(%w[Impact-Of-Cavity-Insulation])
201
- xpath(%w[Impact-Of-Cavity-Insulation]).to_i
201
+ xpath(%w[Impact-Of-Cavity-Insulation])&.to_i
202
202
  end
203
203
  end
204
204
 
205
205
  def impact_of_loft_insulation
206
206
  if xpath(%w[Impact-Of-Loft-Insulation])
207
- xpath(%w[Impact-Of-Loft-Insulation]).to_i
207
+ xpath(%w[Impact-Of-Loft-Insulation])&.to_i
208
208
  end
209
209
  end
210
210
 
211
211
  def impact_of_solid_wall_insulation
212
212
  if xpath(%w[Impact-Of-Solid-Wall-Insulation])
213
- xpath(%w[Impact-Of-Solid-Wall-Insulation]).to_i
213
+ xpath(%w[Impact-Of-Solid-Wall-Insulation])&.to_i
214
214
  end
215
215
  end
216
216
 
@@ -227,7 +227,7 @@ module ViewModel
227
227
  end
228
228
 
229
229
  def type_of_assessment
230
- case xpath(%w[Report-Type]).to_i
230
+ case xpath(%w[Report-Type])&.to_i
231
231
  when 1
232
232
  "HCR"
233
233
  when 2
@@ -238,21 +238,17 @@ module ViewModel
238
238
  end
239
239
 
240
240
  def environmental_impact_current
241
- xpath(%w[Environmental-Impact-Current])
241
+ xpath(%w[Environmental-Impact-Current])&.to_i
242
242
  end
243
243
 
244
244
  def environmental_impact_potential
245
- xpath(%w[Environmental-Impact-Potential])
245
+ xpath(%w[Environmental-Impact-Potential])&.to_i
246
246
  end
247
247
 
248
248
  def co2_emissions_current_per_floor_area
249
249
  xpath(%w[CO2-Emissions-Current-Per-Floor-Area])
250
250
  end
251
251
 
252
- def mains_gas
253
- nil
254
- end
255
-
256
252
  def level
257
253
  xpath(%w[Level])
258
254
  end
@@ -262,10 +258,6 @@ module ViewModel
262
258
  flat_level_code == "3" ? "Y" : "N"
263
259
  end
264
260
 
265
- def storey_count
266
- nil
267
- end
268
-
269
261
  def main_heating_controls
270
262
  xpath(%w[Main-Heating-Controls Description])
271
263
  end
@@ -274,32 +266,20 @@ module ViewModel
274
266
  xpath(%w[Multiple-Glazed-Proportion])
275
267
  end
276
268
 
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
269
  def low_energy_lighting
290
270
  xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Percentage])
291
271
  end
292
272
 
293
273
  def fixed_lighting_outlets_count
294
- xpath(%w[Fixed-Lighting-Outlets-Count])
274
+ xpath(%w[Fixed-Lighting-Outlets-Count])&.to_i
295
275
  end
296
276
 
297
277
  def low_energy_fixed_lighting_outlets_count
298
- xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])
278
+ xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])&.to_i
299
279
  end
300
280
 
301
281
  def open_fireplaces_count
302
- xpath(%w[Open-Fireplaces-Count])
282
+ xpath(%w[Open-Fireplaces-Count])&.to_i
303
283
  end
304
284
 
305
285
  def hot_water_description
@@ -350,16 +330,12 @@ module ViewModel
350
330
  xpath(%w[Lighting Environmental-Efficiency-Rating])
351
331
  end
352
332
 
353
- def photovoltaic_roof_area_percent
354
- nil
355
- end
356
-
357
333
  def built_form
358
334
  xpath(%w[Built-Form])
359
335
  end
360
336
 
361
337
  def wind_turbine_count
362
- xpath(%w[Wind-Turbines-Count])
338
+ xpath(%w[Wind-Turbines-Count])&.to_i
363
339
  end
364
340
 
365
341
  def heat_loss_corridor
@@ -375,7 +351,7 @@ module ViewModel
375
351
  end
376
352
 
377
353
  def extensions_count
378
- xpath(%w[Extensions-Count])
354
+ xpath(%w[Extensions-Count])&.to_i
379
355
  end
380
356
 
381
357
  def all_main_heating_controls_descriptions
@@ -422,14 +398,6 @@ module ViewModel
422
398
  @xml_doc.search("Main-Heating/Energy-Efficiency-Rating").map(&:content)
423
399
  end
424
400
 
425
- def solar_water_heating_flag
426
- nil
427
- end
428
-
429
- def mechanical_ventilation
430
- nil
431
- end
432
-
433
401
  def floor_height
434
402
  @xml_doc.search("Storey-Height").map(&:content)
435
403
  end
@@ -485,14 +453,6 @@ module ViewModel
485
453
  .search("Main-Heating-Controls/Environmental-Efficiency-Rating")
486
454
  .map(&:content)
487
455
  end
488
-
489
- def gas_smart_meter_present
490
- nil
491
- end
492
-
493
- def electricity_smart_meter_present
494
- nil
495
- end
496
456
  end
497
457
  end
498
458
  end
@@ -34,11 +34,11 @@ module ViewModel
34
34
  end
35
35
 
36
36
  def habitable_room_count
37
- xpath(%w[Habitable-Room-Count])
37
+ xpath(%w[Habitable-Room-Count])&.to_i
38
38
  end
39
39
 
40
40
  def heated_room_count
41
- xpath(%w[Heated-Room-Count])
41
+ xpath(%w[Heated-Room-Count])&.to_i
42
42
  end
43
43
 
44
44
  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
@@ -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
@@ -94,7 +94,7 @@ module ViewModel
94
94
  end
95
95
 
96
96
  def related_party_disclosure_number
97
- xpath(%w[Related-Party-Disclosure-Number]).to_i
97
+ xpath(%w[Related-Party-Disclosure-Number])&.to_i
98
98
  end
99
99
 
100
100
  def improvements
@@ -153,11 +153,11 @@ module ViewModel
153
153
  end
154
154
 
155
155
  def potential_energy_rating
156
- xpath(%w[Energy-Rating-Potential]).to_i
156
+ xpath(%w[Energy-Rating-Potential])&.to_i
157
157
  end
158
158
 
159
159
  def current_energy_rating
160
- xpath(%w[Energy-Rating-Current]).to_i
160
+ xpath(%w[Energy-Rating-Current])&.to_i
161
161
  end
162
162
 
163
163
  def primary_energy_use
@@ -202,19 +202,19 @@ module ViewModel
202
202
 
203
203
  def impact_of_cavity_insulation
204
204
  if xpath(%w[Impact-Of-Cavity-Insulation])
205
- xpath(%w[Impact-Of-Cavity-Insulation]).to_i
205
+ xpath(%w[Impact-Of-Cavity-Insulation])&.to_i
206
206
  end
207
207
  end
208
208
 
209
209
  def impact_of_loft_insulation
210
210
  if xpath(%w[Impact-Of-Loft-Insulation])
211
- xpath(%w[Impact-Of-Loft-Insulation]).to_i
211
+ xpath(%w[Impact-Of-Loft-Insulation])&.to_i
212
212
  end
213
213
  end
214
214
 
215
215
  def impact_of_solid_wall_insulation
216
216
  if xpath(%w[Impact-Of-Solid-Wall-Insulation])
217
- xpath(%w[Impact-Of-Solid-Wall-Insulation]).to_i
217
+ xpath(%w[Impact-Of-Solid-Wall-Insulation])&.to_i
218
218
  end
219
219
  end
220
220
 
@@ -231,7 +231,7 @@ module ViewModel
231
231
  end
232
232
 
233
233
  def type_of_assessment
234
- case xpath(%w[Report-Type]).to_i
234
+ case xpath(%w[Report-Type])&.to_i
235
235
  when 1
236
236
  "HCR"
237
237
  when 2
@@ -242,21 +242,17 @@ module ViewModel
242
242
  end
243
243
 
244
244
  def environmental_impact_current
245
- xpath(%w[Environmental-Impact-Current])
245
+ xpath(%w[Environmental-Impact-Current])&.to_i
246
246
  end
247
247
 
248
248
  def environmental_impact_potential
249
- xpath(%w[Environmental-Impact-Potential])
249
+ xpath(%w[Environmental-Impact-Potential])&.to_i
250
250
  end
251
251
 
252
252
  def co2_emissions_current_per_floor_area
253
253
  xpath(%w[CO2-Emissions-Current-Per-Floor-Area])
254
254
  end
255
255
 
256
- def mains_gas
257
- nil
258
- end
259
-
260
256
  def level
261
257
  xpath(%w[Level])
262
258
  end
@@ -266,10 +262,6 @@ module ViewModel
266
262
  flat_level_code == "3" ? "Y" : "N"
267
263
  end
268
264
 
269
- def storey_count
270
- nil
271
- end
272
-
273
265
  def main_heating_controls
274
266
  xpath(%w[Main-Heating-Controls Description])
275
267
  end
@@ -278,32 +270,20 @@ module ViewModel
278
270
  xpath(%w[Multiple-Glazed-Proportion])
279
271
  end
280
272
 
281
- def glazed_area
282
- nil
283
- end
284
-
285
- def habitable_room_count
286
- nil
287
- end
288
-
289
- def heated_room_count
290
- nil
291
- end
292
-
293
273
  def low_energy_lighting
294
274
  xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Percentage])
295
275
  end
296
276
 
297
277
  def fixed_lighting_outlets_count
298
- xpath(%w[Fixed-Lighting-Outlets-Count])
278
+ xpath(%w[Fixed-Lighting-Outlets-Count])&.to_i
299
279
  end
300
280
 
301
281
  def low_energy_fixed_lighting_outlets_count
302
- xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])
282
+ xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])&.to_i
303
283
  end
304
284
 
305
285
  def open_fireplaces_count
306
- xpath(%w[Open-Fireplaces-Count])
286
+ xpath(%w[Open-Fireplaces-Count])&.to_i
307
287
  end
308
288
 
309
289
  def hot_water_description
@@ -354,16 +334,12 @@ module ViewModel
354
334
  xpath(%w[Lighting Environmental-Efficiency-Rating])
355
335
  end
356
336
 
357
- def photovoltaic_roof_area_percent
358
- nil
359
- end
360
-
361
337
  def built_form
362
338
  xpath(%w[Built-Form])
363
339
  end
364
340
 
365
341
  def wind_turbine_count
366
- xpath(%w[Wind-Turbines-Count])
342
+ xpath(%w[Wind-Turbines-Count])&.to_i
367
343
  end
368
344
 
369
345
  def heat_loss_corridor
@@ -375,7 +351,7 @@ module ViewModel
375
351
  end
376
352
 
377
353
  def extensions_count
378
- xpath(%w[Extensions-Count])
354
+ xpath(%w[Extensions-Count])&.to_i
379
355
  end
380
356
 
381
357
  def all_main_heating_controls_descriptions
@@ -422,14 +398,6 @@ module ViewModel
422
398
  @xml_doc.search("Main-Heating/Energy-Efficiency-Rating").map(&:content)
423
399
  end
424
400
 
425
- def solar_water_heating_flag
426
- nil
427
- end
428
-
429
- def mechanical_ventilation
430
- nil
431
- end
432
-
433
401
  def floor_height
434
402
  @xml_doc.search("Storey-Height").map(&:content)
435
403
  end
@@ -485,14 +453,6 @@ module ViewModel
485
453
  .search("Main-Heating-Controls/Environmental-Efficiency-Rating")
486
454
  .map(&:content)
487
455
  end
488
-
489
- def gas_smart_meter_present
490
- nil
491
- end
492
-
493
- def electricity_smart_meter_present
494
- nil
495
- end
496
456
  end
497
457
  end
498
458
  end