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
@@ -89,10 +89,6 @@ module ViewModel
89
89
  xpath(%w[Related-Party-Disclosure])
90
90
  end
91
91
 
92
- def related_party_disclosure_number
93
- nil
94
- end
95
-
96
92
  def improvements
97
93
  @xml_doc
98
94
  .search("Suggested-Improvements/Improvement")
@@ -164,11 +160,11 @@ module ViewModel
164
160
  end
165
161
 
166
162
  def potential_energy_rating
167
- xpath(%w[Energy-Rating-Potential]).to_i
163
+ xpath(%w[Energy-Rating-Potential])&.to_i
168
164
  end
169
165
 
170
166
  def current_energy_rating
171
- xpath(%w[Energy-Rating-Current]).to_i
167
+ xpath(%w[Energy-Rating-Current])&.to_i
172
168
  end
173
169
 
174
170
  def primary_energy_use
@@ -196,14 +192,6 @@ module ViewModel
196
192
  xpath(%w[Construction-Year])
197
193
  end
198
194
 
199
- def tenure
200
- nil
201
- end
202
-
203
- def transaction_type
204
- nil
205
- end
206
-
207
195
  def current_space_heating_demand
208
196
  xpath(%w[Space-Heating-Existing-Dwelling])
209
197
  end
@@ -214,19 +202,19 @@ module ViewModel
214
202
 
215
203
  def impact_of_cavity_insulation
216
204
  if xpath(%w[Impact-Of-Cavity-Insulation])
217
- xpath(%w[Impact-Of-Cavity-Insulation]).to_i
205
+ xpath(%w[Impact-Of-Cavity-Insulation])&.to_i
218
206
  end
219
207
  end
220
208
 
221
209
  def impact_of_loft_insulation
222
210
  if xpath(%w[Impact-Of-Loft-Insulation])
223
- xpath(%w[Impact-Of-Loft-Insulation]).to_i
211
+ xpath(%w[Impact-Of-Loft-Insulation])&.to_i
224
212
  end
225
213
  end
226
214
 
227
215
  def impact_of_solid_wall_insulation
228
216
  if xpath(%w[Impact-Of-Solid-Wall-Insulation])
229
- xpath(%w[Impact-Of-Solid-Wall-Insulation]).to_i
217
+ xpath(%w[Impact-Of-Solid-Wall-Insulation])&.to_i
230
218
  end
231
219
  end
232
220
 
@@ -243,7 +231,7 @@ module ViewModel
243
231
  end
244
232
 
245
233
  def type_of_assessment
246
- case xpath(%w[Report-Type]).to_i
234
+ case xpath(%w[Report-Type])&.to_i
247
235
  when 1
248
236
  "HCR"
249
237
  when 2
@@ -254,21 +242,17 @@ module ViewModel
254
242
  end
255
243
 
256
244
  def environmental_impact_current
257
- xpath(%w[Environmental-Impact-Current])
245
+ xpath(%w[Environmental-Impact-Current])&.to_i
258
246
  end
259
247
 
260
248
  def environmental_impact_potential
261
- xpath(%w[Environmental-Impact-Potential])
249
+ xpath(%w[Environmental-Impact-Potential])&.to_i
262
250
  end
263
251
 
264
252
  def co2_emissions_current_per_floor_area
265
253
  xpath(%w[CO2-Emissions-Current-Per-Floor-Area])
266
254
  end
267
255
 
268
- def mains_gas
269
- nil
270
- end
271
-
272
256
  def level
273
257
  xpath(%w[Level])
274
258
  end
@@ -278,10 +262,6 @@ module ViewModel
278
262
  flat_level_code == "3" ? "Y" : "N"
279
263
  end
280
264
 
281
- def storey_count
282
- nil
283
- end
284
-
285
265
  def main_heating_controls
286
266
  xpath(%w[Main-Heating-Controls Description])
287
267
  end
@@ -290,32 +270,20 @@ module ViewModel
290
270
  xpath(%w[Multiple-Glazed-Proportion])
291
271
  end
292
272
 
293
- def glazed_area
294
- nil
295
- end
296
-
297
- def habitable_room_count
298
- nil
299
- end
300
-
301
- def heated_room_count
302
- nil
303
- end
304
-
305
273
  def low_energy_lighting
306
274
  xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Percentage])
307
275
  end
308
276
 
309
277
  def fixed_lighting_outlets_count
310
- xpath(%w[Fixed-Lighting-Outlets-Count])
278
+ xpath(%w[Fixed-Lighting-Outlets-Count])&.to_i
311
279
  end
312
280
 
313
281
  def low_energy_fixed_lighting_outlets_count
314
- xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])
282
+ xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])&.to_i
315
283
  end
316
284
 
317
285
  def open_fireplaces_count
318
- xpath(%w[Open-Fireplaces-Count])
286
+ xpath(%w[Open-Fireplaces-Count])&.to_i
319
287
  end
320
288
 
321
289
  def hot_water_description
@@ -366,10 +334,6 @@ module ViewModel
366
334
  xpath(%w[Lighting Environmental-Efficiency-Rating])
367
335
  end
368
336
 
369
- def photovoltaic_roof_area_percent
370
- nil
371
- end
372
-
373
337
  def built_form
374
338
  xpath(%w[Built-Form])
375
339
  end
@@ -379,7 +343,7 @@ module ViewModel
379
343
  end
380
344
 
381
345
  def wind_turbine_count
382
- xpath(%w[Wind-Turbines-Count])
346
+ xpath(%w[Wind-Turbines-Count])&.to_i
383
347
  end
384
348
 
385
349
  def unheated_corridor_length
@@ -427,15 +391,7 @@ module ViewModel
427
391
  end
428
392
 
429
393
  def extensions_count
430
- xpath(%w[Extensions-Count])
431
- end
432
-
433
- def solar_water_heating_flag
434
- nil
435
- end
436
-
437
- def mechanical_ventilation
438
- nil
394
+ xpath(%w[Extensions-Count])&.to_i
439
395
  end
440
396
 
441
397
  def floor_level
@@ -501,14 +457,6 @@ module ViewModel
501
457
  end
502
458
  nil
503
459
  end
504
-
505
- def gas_smart_meter_present
506
- nil
507
- end
508
-
509
- def electricity_smart_meter_present
510
- nil
511
- end
512
460
  end
513
461
  end
514
462
  end
@@ -55,11 +55,11 @@ module ViewModel
55
55
  end
56
56
 
57
57
  def habitable_room_count
58
- xpath(%w[Habitable-Room-Count])
58
+ xpath(%w[Habitable-Room-Count])&.to_i
59
59
  end
60
60
 
61
61
  def heated_room_count
62
- xpath(%w[Heated-Room-Count])
62
+ xpath(%w[Heated-Room-Count])&.to_i
63
63
  end
64
64
 
65
65
  def photovoltaic_roof_area_percent
@@ -75,7 +75,7 @@ module ViewModel
75
75
  end
76
76
 
77
77
  def storey_count
78
- xpath(%w[Storey-Count])
78
+ xpath(%w[Storey-Count])&.to_i
79
79
  end
80
80
 
81
81
  def energy_tariff
@@ -98,22 +98,6 @@ module ViewModel
98
98
  xpath(%w[Cylinder-Thermostat])
99
99
  end
100
100
 
101
- def mech_vent_sys_index_number
102
- nil
103
- end
104
-
105
- def mechanical_vent_data_source
106
- nil
107
- end
108
-
109
- def thermal_store
110
- nil
111
- end
112
-
113
- def ventilation_type
114
- nil
115
- end
116
-
117
101
  def water_heating_fuel
118
102
  xpath(%w[Water-Heating-Fuel])
119
103
  end
@@ -44,7 +44,7 @@ module ViewModel
44
44
  end
45
45
 
46
46
  def mech_vent_sys_index_number
47
- xpath(%w[Mechanical-Vent-System-Index-Number])
47
+ xpath(%w[Mechanical-Vent-System-Index-Number])&.to_i
48
48
  end
49
49
 
50
50
  def mechanical_vent_data_source
@@ -89,10 +89,6 @@ module ViewModel
89
89
  xpath(%w[Related-Party-Disclosure])
90
90
  end
91
91
 
92
- def related_party_disclosure_number
93
- nil
94
- end
95
-
96
92
  def improvements
97
93
  @xml_doc
98
94
  .search("Suggested-Improvements Improvement")
@@ -164,11 +160,11 @@ module ViewModel
164
160
  end
165
161
 
166
162
  def potential_energy_rating
167
- xpath(%w[Energy-Rating-Potential]).to_i
163
+ xpath(%w[Energy-Rating-Potential])&.to_i
168
164
  end
169
165
 
170
166
  def current_energy_rating
171
- xpath(%w[Energy-Rating-Current]).to_i
167
+ xpath(%w[Energy-Rating-Current])&.to_i
172
168
  end
173
169
 
174
170
  def primary_energy_use
@@ -196,10 +192,6 @@ module ViewModel
196
192
  xpath(%w[Construction-Year])
197
193
  end
198
194
 
199
- def tenure
200
- nil
201
- end
202
-
203
195
  def transaction_type
204
196
  xpath(%w[Transaction-Type])
205
197
  end
@@ -214,19 +206,19 @@ module ViewModel
214
206
 
215
207
  def impact_of_cavity_insulation
216
208
  if xpath(%w[Impact-Of-Cavity-Insulation])
217
- xpath(%w[Impact-Of-Cavity-Insulation]).to_i
209
+ xpath(%w[Impact-Of-Cavity-Insulation])&.to_i
218
210
  end
219
211
  end
220
212
 
221
213
  def impact_of_loft_insulation
222
214
  if xpath(%w[Impact-Of-Loft-Insulation])
223
- xpath(%w[Impact-Of-Loft-Insulation]).to_i
215
+ xpath(%w[Impact-Of-Loft-Insulation])&.to_i
224
216
  end
225
217
  end
226
218
 
227
219
  def impact_of_solid_wall_insulation
228
220
  if xpath(%w[Impact-Of-Solid-Wall-Insulation])
229
- xpath(%w[Impact-Of-Solid-Wall-Insulation]).to_i
221
+ xpath(%w[Impact-Of-Solid-Wall-Insulation])&.to_i
230
222
  end
231
223
  end
232
224
 
@@ -243,7 +235,7 @@ module ViewModel
243
235
  end
244
236
 
245
237
  def type_of_assessment
246
- case xpath(%w[Report-Type]).to_i
238
+ case xpath(%w[Report-Type])&.to_i
247
239
  when 1
248
240
  "HCR"
249
241
  when 2
@@ -254,21 +246,17 @@ module ViewModel
254
246
  end
255
247
 
256
248
  def environmental_impact_current
257
- xpath(%w[Environmental-Impact-Current])
249
+ xpath(%w[Environmental-Impact-Current])&.to_i
258
250
  end
259
251
 
260
252
  def environmental_impact_potential
261
- xpath(%w[Environmental-Impact-Potential])
253
+ xpath(%w[Environmental-Impact-Potential])&.to_i
262
254
  end
263
255
 
264
256
  def co2_emissions_current_per_floor_area
265
257
  xpath(%w[CO2-Emissions-Current-Per-Floor-Area])
266
258
  end
267
259
 
268
- def mains_gas
269
- nil
270
- end
271
-
272
260
  def level
273
261
  xpath(%w[Level])
274
262
  end
@@ -278,10 +266,6 @@ module ViewModel
278
266
  flat_level_code == "3" ? "Y" : "N"
279
267
  end
280
268
 
281
- def storey_count
282
- nil
283
- end
284
-
285
269
  def main_heating_controls
286
270
  xpath(%w[Main-Heating-Controls Description])
287
271
  end
@@ -290,32 +274,20 @@ module ViewModel
290
274
  xpath(%w[Multiple-Glazed-Proportion])
291
275
  end
292
276
 
293
- def glazed_area
294
- nil
295
- end
296
-
297
- def habitable_room_count
298
- nil
299
- end
300
-
301
- def heated_room_count
302
- nil
303
- end
304
-
305
277
  def low_energy_lighting
306
278
  xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Percentage])
307
279
  end
308
280
 
309
281
  def fixed_lighting_outlets_count
310
- xpath(%w[Fixed-Lighting-Outlets-Count])
282
+ xpath(%w[Fixed-Lighting-Outlets-Count])&.to_i
311
283
  end
312
284
 
313
285
  def low_energy_fixed_lighting_outlets_count
314
- xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])
286
+ xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])&.to_i
315
287
  end
316
288
 
317
289
  def open_fireplaces_count
318
- xpath(%w[Open-Fireplaces-Count])
290
+ xpath(%w[Open-Fireplaces-Count])&.to_i
319
291
  end
320
292
 
321
293
  def hot_water_description
@@ -366,10 +338,6 @@ module ViewModel
366
338
  xpath(%w[Lighting Environmental-Efficiency-Rating])
367
339
  end
368
340
 
369
- def photovoltaic_roof_area_percent
370
- nil
371
- end
372
-
373
341
  def built_form
374
342
  xpath(%w[Built-Form])
375
343
  end
@@ -383,7 +351,7 @@ module ViewModel
383
351
  end
384
352
 
385
353
  def wind_turbine_count
386
- xpath(%w[Wind-Turbines-Count])
354
+ xpath(%w[Wind-Turbines-Count])&.to_i
387
355
  end
388
356
 
389
357
  def all_main_heating_descriptions
@@ -391,7 +359,7 @@ module ViewModel
391
359
  end
392
360
 
393
361
  def extensions_count
394
- xpath(%w[Extensions-Count])
362
+ xpath(%w[Extensions-Count])&.to_i
395
363
  end
396
364
 
397
365
  def all_main_heating_controls_descriptions
@@ -434,14 +402,6 @@ module ViewModel
434
402
  @xml_doc.search("Main-Heating/Energy-Efficiency-Rating").map(&:content)
435
403
  end
436
404
 
437
- def solar_water_heating_flag
438
- nil
439
- end
440
-
441
- def mechanical_ventilation
442
- nil
443
- end
444
-
445
405
  def main_dwelling_construction_age_band_or_year
446
406
  sap_building_parts =
447
407
  @xml_doc.xpath("//SAP-Building-Parts/SAP-Building-Part")
@@ -501,14 +461,6 @@ module ViewModel
501
461
  .search("Main-Heating/Environmental-Efficiency-Rating")
502
462
  .map(&:content)
503
463
  end
504
-
505
- def gas_smart_meter_present
506
- nil
507
- end
508
-
509
- def electricity_smart_meter_present
510
- nil
511
- end
512
464
  end
513
465
  end
514
466
  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
@@ -89,10 +89,6 @@ module ViewModel
89
89
  xpath(%w[Related-Party-Disclosure])
90
90
  end
91
91
 
92
- def related_party_disclosure_number
93
- nil
94
- end
95
-
96
92
  def improvements
97
93
  @xml_doc
98
94
  .search("Suggested-Improvements Improvement")
@@ -164,11 +160,11 @@ module ViewModel
164
160
  end
165
161
 
166
162
  def potential_energy_rating
167
- xpath(%w[Energy-Rating-Potential]).to_i
163
+ xpath(%w[Energy-Rating-Potential])&.to_i
168
164
  end
169
165
 
170
166
  def current_energy_rating
171
- xpath(%w[Energy-Rating-Current]).to_i
167
+ xpath(%w[Energy-Rating-Current])&.to_i
172
168
  end
173
169
 
174
170
  def primary_energy_use
@@ -195,10 +191,6 @@ module ViewModel
195
191
  xpath(%w[Construction-Year])
196
192
  end
197
193
 
198
- def tenure
199
- nil
200
- end
201
-
202
194
  def transaction_type
203
195
  xpath(%w[Transaction-Type])
204
196
  end
@@ -213,19 +205,19 @@ module ViewModel
213
205
 
214
206
  def impact_of_cavity_insulation
215
207
  if xpath(%w[Impact-Of-Cavity-Insulation])
216
- xpath(%w[Impact-Of-Cavity-Insulation]).to_i
208
+ xpath(%w[Impact-Of-Cavity-Insulation])&.to_i
217
209
  end
218
210
  end
219
211
 
220
212
  def impact_of_loft_insulation
221
213
  if xpath(%w[Impact-Of-Loft-Insulation])
222
- xpath(%w[Impact-Of-Loft-Insulation]).to_i
214
+ xpath(%w[Impact-Of-Loft-Insulation])&.to_i
223
215
  end
224
216
  end
225
217
 
226
218
  def impact_of_solid_wall_insulation
227
219
  if xpath(%w[Impact-Of-Solid-Wall-Insulation])
228
- xpath(%w[Impact-Of-Solid-Wall-Insulation]).to_i
220
+ xpath(%w[Impact-Of-Solid-Wall-Insulation])&.to_i
229
221
  end
230
222
  end
231
223
 
@@ -242,7 +234,7 @@ module ViewModel
242
234
  end
243
235
 
244
236
  def type_of_assessment
245
- case xpath(%w[Report-Type]).to_i
237
+ case xpath(%w[Report-Type])&.to_i
246
238
  when 1
247
239
  "HCR"
248
240
  when 2
@@ -253,21 +245,17 @@ module ViewModel
253
245
  end
254
246
 
255
247
  def environmental_impact_current
256
- xpath(%w[Environmental-Impact-Current])
248
+ xpath(%w[Environmental-Impact-Current])&.to_i
257
249
  end
258
250
 
259
251
  def environmental_impact_potential
260
- xpath(%w[Environmental-Impact-Potential])
252
+ xpath(%w[Environmental-Impact-Potential])&.to_i
261
253
  end
262
254
 
263
255
  def co2_emissions_current_per_floor_area
264
256
  xpath(%w[CO2-Emissions-Current-Per-Floor-Area])
265
257
  end
266
258
 
267
- def mains_gas
268
- nil
269
- end
270
-
271
259
  def level
272
260
  xpath(%w[Level])
273
261
  end
@@ -277,10 +265,6 @@ module ViewModel
277
265
  flat_level_code == "3" ? "Y" : "N"
278
266
  end
279
267
 
280
- def storey_count
281
- nil
282
- end
283
-
284
268
  def main_heating_controls
285
269
  xpath(%w[Main-Heating-Controls Description])
286
270
  end
@@ -289,32 +273,20 @@ module ViewModel
289
273
  xpath(%w[Multiple-Glazed-Proportion])
290
274
  end
291
275
 
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
276
  def low_energy_lighting
305
277
  xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Percentage])
306
278
  end
307
279
 
308
280
  def fixed_lighting_outlets_count
309
- xpath(%w[Fixed-Lighting-Outlets-Count])
281
+ xpath(%w[Fixed-Lighting-Outlets-Count])&.to_i
310
282
  end
311
283
 
312
284
  def low_energy_fixed_lighting_outlets_count
313
- xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])
285
+ xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])&.to_i
314
286
  end
315
287
 
316
288
  def open_fireplaces_count
317
- xpath(%w[Open-Fireplaces-Count])
289
+ xpath(%w[Open-Fireplaces-Count])&.to_i
318
290
  end
319
291
 
320
292
  def hot_water_description
@@ -365,10 +337,6 @@ module ViewModel
365
337
  xpath(%w[Lighting Environmental-Efficiency-Rating])
366
338
  end
367
339
 
368
- def photovoltaic_roof_area_percent
369
- nil
370
- end
371
-
372
340
  def built_form
373
341
  xpath(%w[Built-Form])
374
342
  end
@@ -378,7 +346,7 @@ module ViewModel
378
346
  end
379
347
 
380
348
  def wind_turbine_count
381
- xpath(%w[Wind-Turbines-Count])
349
+ xpath(%w[Wind-Turbines-Count])&.to_i
382
350
  end
383
351
 
384
352
  def unheated_corridor_length
@@ -426,15 +394,7 @@ module ViewModel
426
394
  end
427
395
 
428
396
  def extensions_count
429
- xpath(%w[Extensions-Count])
430
- end
431
-
432
- def solar_water_heating_flag
433
- nil
434
- end
435
-
436
- def mechanical_ventilation
437
- nil
397
+ xpath(%w[Extensions-Count])&.to_i
438
398
  end
439
399
 
440
400
  def main_dwelling_construction_age_band_or_year
@@ -500,14 +460,6 @@ module ViewModel
500
460
  .search("Main-Heating-Controls/Environmental-Efficiency-Rating")
501
461
  .map(&:content)
502
462
  end
503
-
504
- def gas_smart_meter_present
505
- nil
506
- end
507
-
508
- def electricity_smart_meter_present
509
- nil
510
- end
511
463
  end
512
464
  end
513
465
  end