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
@@ -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