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.
- checksums.yaml +4 -4
- data/Gemfile +1 -1
- data/Gemfile.lock +38 -28
- data/epb_view_models.gemspec +1 -1
- data/lib/epb_view_models.rb +1 -1
- data/lib/presenter/cepc/report.rb +11 -15
- data/lib/presenter/cepc/summary.rb +5 -14
- data/lib/presenter/dec/report.rb +5 -9
- data/lib/presenter/dec/summary.rb +3 -11
- data/lib/presenter/dec/xml_summary.rb +2 -2
- data/lib/presenter/export/base.rb +4 -4
- data/lib/presenter/export/commercial.rb +16 -27
- data/lib/presenter/export/domestic.rb +30 -39
- data/lib/presenter/rd_sap/domestic_digest.rb +2 -4
- data/lib/presenter/rd_sap/report.rb +47 -57
- data/lib/presenter/rd_sap/summary.rb +13 -21
- data/lib/presenter/sap/domestic_digest.rb +2 -4
- data/lib/presenter/sap/report.rb +49 -59
- data/lib/presenter/sap/summary.rb +27 -41
- data/lib/view_model/cepc31/cepc.rb +4 -44
- data/lib/view_model/cepc31/common_schema.rb +1 -1
- data/lib/view_model/cepc31/dec.rb +14 -34
- data/lib/view_model/cepc40/ac_report.rb +1 -1
- data/lib/view_model/cepc40/cepc.rb +6 -30
- data/lib/view_model/cepc40/common_schema.rb +1 -1
- data/lib/view_model/cepc40/dec.rb +16 -16
- data/lib/view_model/cepc50/ac_report.rb +1 -1
- data/lib/view_model/cepc50/cepc.rb +6 -10
- data/lib/view_model/cepc50/common_schema.rb +1 -1
- data/lib/view_model/cepc50/dec.rb +16 -16
- data/lib/view_model/cepc51/ac_report.rb +1 -1
- data/lib/view_model/cepc51/cepc.rb +6 -6
- data/lib/view_model/cepc51/common_schema.rb +1 -1
- data/lib/view_model/cepc51/dec.rb +16 -16
- data/lib/view_model/cepc60/ac_report.rb +1 -1
- data/lib/view_model/cepc60/cepc.rb +6 -10
- data/lib/view_model/cepc60/common_schema.rb +1 -1
- data/lib/view_model/cepc60/dec.rb +17 -17
- data/lib/view_model/cepc70/ac_cert.rb +3 -3
- data/lib/view_model/cepc70/ac_report.rb +1 -1
- data/lib/view_model/cepc70/cepc.rb +6 -10
- data/lib/view_model/cepc70/common_schema.rb +1 -1
- data/lib/view_model/cepc70/dec.rb +17 -17
- data/lib/view_model/cepc71/ac_cert.rb +3 -3
- data/lib/view_model/cepc71/ac_report.rb +1 -1
- data/lib/view_model/cepc71/cepc.rb +6 -6
- data/lib/view_model/cepc71/common_schema.rb +1 -1
- data/lib/view_model/cepc71/dec.rb +17 -17
- data/lib/view_model/cepc800/ac_cert.rb +3 -3
- data/lib/view_model/cepc800/ac_report.rb +1 -1
- data/lib/view_model/cepc800/cepc.rb +6 -11
- data/lib/view_model/cepc800/common_schema.rb +1 -1
- data/lib/view_model/cepc800/dec.rb +17 -17
- data/lib/view_model/cepc_ni800/ac_cert.rb +3 -3
- data/lib/view_model/cepc_ni800/ac_report.rb +1 -1
- data/lib/view_model/cepc_ni800/cepc.rb +6 -10
- data/lib/view_model/cepc_ni800/common_schema.rb +1 -1
- data/lib/view_model/cepc_ni800/dec.rb +17 -17
- data/lib/view_model/rd_sap_schema_170/common_schema.rb +17 -25
- data/lib/view_model/rd_sap_schema_171/common_schema.rb +17 -25
- data/lib/view_model/rd_sap_schema_180/common_schema.rb +17 -25
- data/lib/view_model/rd_sap_schema_190/common_schema.rb +17 -25
- data/lib/view_model/rd_sap_schema_200/common_schema.rb +17 -25
- data/lib/view_model/rd_sap_schema_210/common_schema.rb +14 -34
- data/lib/view_model/rd_sap_schema_ni_173/common_schema.rb +17 -25
- data/lib/view_model/rd_sap_schema_ni_174/common_schema.rb +17 -25
- data/lib/view_model/rd_sap_schema_ni_180/common_schema.rb +17 -25
- data/lib/view_model/rd_sap_schema_ni_190/common_schema.rb +17 -25
- data/lib/view_model/rd_sap_schema_ni_200/common_schema.rb +17 -25
- data/lib/view_model/sap_schema_102/common_schema.rb +13 -85
- data/lib/view_model/sap_schema_102/rdsap.rb +3 -3
- data/lib/view_model/sap_schema_110/common_schema.rb +13 -65
- data/lib/view_model/sap_schema_110/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_110/sap.rb +1 -1
- data/lib/view_model/sap_schema_112/common_schema.rb +13 -65
- data/lib/view_model/sap_schema_112/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_112/sap.rb +1 -1
- data/lib/view_model/sap_schema_120/common_schema.rb +13 -61
- data/lib/view_model/sap_schema_120/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_120/sap.rb +1 -1
- data/lib/view_model/sap_schema_130/common_schema.rb +13 -61
- data/lib/view_model/sap_schema_130/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_130/sap.rb +1 -1
- data/lib/view_model/sap_schema_140/common_schema.rb +14 -58
- data/lib/view_model/sap_schema_140/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_140/sap.rb +1 -1
- data/lib/view_model/sap_schema_141/common_schema.rb +14 -58
- data/lib/view_model/sap_schema_141/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_141/sap.rb +1 -1
- data/lib/view_model/sap_schema_142/common_schema.rb +14 -58
- data/lib/view_model/sap_schema_142/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_142/sap.rb +1 -1
- data/lib/view_model/sap_schema_150/common_schema.rb +14 -58
- data/lib/view_model/sap_schema_150/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_150/sap.rb +1 -1
- data/lib/view_model/sap_schema_160/common_schema.rb +14 -58
- data/lib/view_model/sap_schema_160/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_160/sap.rb +1 -1
- data/lib/view_model/sap_schema_161/common_schema.rb +14 -58
- data/lib/view_model/sap_schema_161/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_161/sap.rb +1 -1
- data/lib/view_model/sap_schema_162/common_schema.rb +14 -58
- data/lib/view_model/sap_schema_162/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_162/sap.rb +1 -1
- data/lib/view_model/sap_schema_163/common_schema.rb +13 -53
- data/lib/view_model/sap_schema_163/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_163/sap.rb +1 -1
- data/lib/view_model/sap_schema_170/common_schema.rb +13 -65
- data/lib/view_model/sap_schema_171/common_schema.rb +13 -65
- data/lib/view_model/sap_schema_1800/common_schema.rb +12 -64
- data/lib/view_model/sap_schema_1900/common_schema.rb +10 -50
- data/lib/view_model/sap_schema_1910/common_schema.rb +10 -50
- data/lib/view_model/sap_schema_ni_112/common_schema.rb +13 -61
- data/lib/view_model/sap_schema_ni_112/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_ni_112/sap.rb +1 -1
- data/lib/view_model/sap_schema_ni_120/common_schema.rb +13 -61
- data/lib/view_model/sap_schema_ni_120/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_ni_120/sap.rb +1 -1
- data/lib/view_model/sap_schema_ni_130/common_schema.rb +13 -61
- data/lib/view_model/sap_schema_ni_130/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_ni_130/sap.rb +1 -1
- data/lib/view_model/sap_schema_ni_140/common_schema.rb +14 -58
- data/lib/view_model/sap_schema_ni_140/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_ni_140/sap.rb +1 -1
- data/lib/view_model/sap_schema_ni_141/common_schema.rb +14 -58
- data/lib/view_model/sap_schema_ni_141/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_ni_141/sap.rb +1 -1
- data/lib/view_model/sap_schema_ni_142/common_schema.rb +14 -58
- data/lib/view_model/sap_schema_ni_142/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_ni_142/sap.rb +1 -1
- data/lib/view_model/sap_schema_ni_150/common_schema.rb +14 -58
- data/lib/view_model/sap_schema_ni_150/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_ni_150/sap.rb +1 -1
- data/lib/view_model/sap_schema_ni_160/common_schema.rb +14 -54
- data/lib/view_model/sap_schema_ni_160/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_ni_160/sap.rb +1 -1
- data/lib/view_model/sap_schema_ni_161/common_schema.rb +14 -50
- data/lib/view_model/sap_schema_ni_161/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_ni_161/sap.rb +1 -1
- data/lib/view_model/sap_schema_ni_170/common_schema.rb +14 -54
- data/lib/view_model/sap_schema_ni_170/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_ni_170/sap.rb +1 -1
- data/lib/view_model/sap_schema_ni_171/common_schema.rb +14 -54
- data/lib/view_model/sap_schema_ni_171/rdsap.rb +3 -19
- data/lib/view_model/sap_schema_ni_171/sap.rb +1 -1
- data/lib/view_model/sap_schema_ni_172/common_schema.rb +14 -54
- data/lib/view_model/sap_schema_ni_172/rdsap.rb +3 -23
- data/lib/view_model/sap_schema_ni_172/sap.rb +1 -1
- data/lib/view_model/sap_schema_ni_173/common_schema.rb +10 -78
- data/lib/view_model/sap_schema_ni_174/common_schema.rb +10 -78
- data/lib/view_model/sap_schema_ni_1800/common_schema.rb +10 -78
- metadata +4 -4
|
@@ -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])
|
|
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])
|
|
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])
|
|
156
|
+
xpath(%w[Energy-Rating-Current])&.to_i
|
|
157
157
|
end
|
|
158
158
|
|
|
159
159
|
def primary_energy_use
|
|
@@ -180,10 +180,6 @@ module ViewModel
|
|
|
180
180
|
xpath(%w[Construction-Year])
|
|
181
181
|
end
|
|
182
182
|
|
|
183
|
-
def tenure
|
|
184
|
-
nil
|
|
185
|
-
end
|
|
186
|
-
|
|
187
183
|
def transaction_type
|
|
188
184
|
xpath(%w[Transaction-Type])
|
|
189
185
|
end
|
|
@@ -198,19 +194,19 @@ module ViewModel
|
|
|
198
194
|
|
|
199
195
|
def impact_of_cavity_insulation
|
|
200
196
|
if xpath(%w[Impact-Of-Cavity-Insulation])
|
|
201
|
-
xpath(%w[Impact-Of-Cavity-Insulation])
|
|
197
|
+
xpath(%w[Impact-Of-Cavity-Insulation])&.to_i
|
|
202
198
|
end
|
|
203
199
|
end
|
|
204
200
|
|
|
205
201
|
def impact_of_loft_insulation
|
|
206
202
|
if xpath(%w[Impact-Of-Loft-Insulation])
|
|
207
|
-
xpath(%w[Impact-Of-Loft-Insulation])
|
|
203
|
+
xpath(%w[Impact-Of-Loft-Insulation])&.to_i
|
|
208
204
|
end
|
|
209
205
|
end
|
|
210
206
|
|
|
211
207
|
def impact_of_solid_wall_insulation
|
|
212
208
|
if xpath(%w[Impact-Of-Solid-Wall-Insulation])
|
|
213
|
-
xpath(%w[Impact-Of-Solid-Wall-Insulation])
|
|
209
|
+
xpath(%w[Impact-Of-Solid-Wall-Insulation])&.to_i
|
|
214
210
|
end
|
|
215
211
|
end
|
|
216
212
|
|
|
@@ -227,7 +223,7 @@ module ViewModel
|
|
|
227
223
|
end
|
|
228
224
|
|
|
229
225
|
def type_of_assessment
|
|
230
|
-
case xpath(%w[Report-Type])
|
|
226
|
+
case xpath(%w[Report-Type])&.to_i
|
|
231
227
|
when 1
|
|
232
228
|
"HCR"
|
|
233
229
|
when 2
|
|
@@ -238,21 +234,17 @@ module ViewModel
|
|
|
238
234
|
end
|
|
239
235
|
|
|
240
236
|
def environmental_impact_current
|
|
241
|
-
xpath(%w[Environmental-Impact-Current])
|
|
237
|
+
xpath(%w[Environmental-Impact-Current])&.to_i
|
|
242
238
|
end
|
|
243
239
|
|
|
244
240
|
def environmental_impact_potential
|
|
245
|
-
xpath(%w[Environmental-Impact-Potential])
|
|
241
|
+
xpath(%w[Environmental-Impact-Potential])&.to_i
|
|
246
242
|
end
|
|
247
243
|
|
|
248
244
|
def co2_emissions_current_per_floor_area
|
|
249
245
|
xpath(%w[CO2-Emissions-Current-Per-Floor-Area])
|
|
250
246
|
end
|
|
251
247
|
|
|
252
|
-
def mains_gas
|
|
253
|
-
nil
|
|
254
|
-
end
|
|
255
|
-
|
|
256
248
|
def level
|
|
257
249
|
xpath(%w[Level])
|
|
258
250
|
end
|
|
@@ -262,10 +254,6 @@ module ViewModel
|
|
|
262
254
|
flat_level_code == "3" ? "Y" : "N"
|
|
263
255
|
end
|
|
264
256
|
|
|
265
|
-
def storey_count
|
|
266
|
-
nil
|
|
267
|
-
end
|
|
268
|
-
|
|
269
257
|
def main_heating_controls
|
|
270
258
|
xpath(%w[Main-Heating-Controls Description])
|
|
271
259
|
end
|
|
@@ -274,32 +262,20 @@ module ViewModel
|
|
|
274
262
|
xpath(%w[Multiple-Glazed-Proportion])
|
|
275
263
|
end
|
|
276
264
|
|
|
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
265
|
def low_energy_lighting
|
|
290
266
|
xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Percentage])
|
|
291
267
|
end
|
|
292
268
|
|
|
293
269
|
def fixed_lighting_outlets_count
|
|
294
|
-
xpath(%w[Fixed-Lighting-Outlets-Count])
|
|
270
|
+
xpath(%w[Fixed-Lighting-Outlets-Count])&.to_i
|
|
295
271
|
end
|
|
296
272
|
|
|
297
273
|
def low_energy_fixed_lighting_outlets_count
|
|
298
|
-
xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])
|
|
274
|
+
xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])&.to_i
|
|
299
275
|
end
|
|
300
276
|
|
|
301
277
|
def open_fireplaces_count
|
|
302
|
-
xpath(%w[Open-Fireplaces-Count])
|
|
278
|
+
xpath(%w[Open-Fireplaces-Count])&.to_i
|
|
303
279
|
end
|
|
304
280
|
|
|
305
281
|
def hot_water_description
|
|
@@ -350,16 +326,12 @@ module ViewModel
|
|
|
350
326
|
xpath(%w[Lighting Environmental-Efficiency-Rating])
|
|
351
327
|
end
|
|
352
328
|
|
|
353
|
-
def photovoltaic_roof_area_percent
|
|
354
|
-
nil
|
|
355
|
-
end
|
|
356
|
-
|
|
357
329
|
def built_form
|
|
358
330
|
xpath(%w[Built-Form])
|
|
359
331
|
end
|
|
360
332
|
|
|
361
333
|
def wind_turbine_count
|
|
362
|
-
xpath(%w[Wind-Turbines-Count])
|
|
334
|
+
xpath(%w[Wind-Turbines-Count])&.to_i
|
|
363
335
|
end
|
|
364
336
|
|
|
365
337
|
def heat_loss_corridor
|
|
@@ -375,7 +347,7 @@ module ViewModel
|
|
|
375
347
|
end
|
|
376
348
|
|
|
377
349
|
def extensions_count
|
|
378
|
-
xpath(%w[Extensions-Count])
|
|
350
|
+
xpath(%w[Extensions-Count])&.to_i
|
|
379
351
|
end
|
|
380
352
|
|
|
381
353
|
def all_main_heating_controls_descriptions
|
|
@@ -422,14 +394,6 @@ module ViewModel
|
|
|
422
394
|
@xml_doc.search("Main-Heating/Energy-Efficiency-Rating").map(&:content)
|
|
423
395
|
end
|
|
424
396
|
|
|
425
|
-
def solar_water_heating_flag
|
|
426
|
-
nil
|
|
427
|
-
end
|
|
428
|
-
|
|
429
|
-
def mechanical_ventilation
|
|
430
|
-
nil
|
|
431
|
-
end
|
|
432
|
-
|
|
433
397
|
def main_dwelling_construction_age_band_or_year
|
|
434
398
|
sap_building_parts =
|
|
435
399
|
@xml_doc.xpath("//SAP-Building-Parts/SAP-Building-Part")
|
|
@@ -485,14 +449,6 @@ module ViewModel
|
|
|
485
449
|
.search("Main-Heating-Controls/Environmental-Efficiency-Rating")
|
|
486
450
|
.map(&:content)
|
|
487
451
|
end
|
|
488
|
-
|
|
489
|
-
def gas_smart_meter_present
|
|
490
|
-
nil
|
|
491
|
-
end
|
|
492
|
-
|
|
493
|
-
def electricity_smart_meter_present
|
|
494
|
-
nil
|
|
495
|
-
end
|
|
496
452
|
end
|
|
497
453
|
end
|
|
498
454
|
end
|
|
@@ -30,11 +30,11 @@ module ViewModel
|
|
|
30
30
|
end
|
|
31
31
|
|
|
32
32
|
def habitable_room_count
|
|
33
|
-
xpath(%w[Habitable-Room-Count])
|
|
33
|
+
xpath(%w[Habitable-Room-Count])&.to_i
|
|
34
34
|
end
|
|
35
35
|
|
|
36
36
|
def heated_room_count
|
|
37
|
-
xpath(%w[Heated-Room-Count])
|
|
37
|
+
xpath(%w[Heated-Room-Count])&.to_i
|
|
38
38
|
end
|
|
39
39
|
|
|
40
40
|
def photovoltaic_roof_area_percent
|
|
@@ -54,7 +54,7 @@ module ViewModel
|
|
|
54
54
|
end
|
|
55
55
|
|
|
56
56
|
def storey_count
|
|
57
|
-
xpath(%w[Storey-Count])
|
|
57
|
+
xpath(%w[Storey-Count])&.to_i
|
|
58
58
|
end
|
|
59
59
|
|
|
60
60
|
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
|
|
@@ -85,7 +85,7 @@ module ViewModel
|
|
|
85
85
|
end
|
|
86
86
|
|
|
87
87
|
def related_party_disclosure_number
|
|
88
|
-
xpath(%w[Related-Party-Disclosure-Number])
|
|
88
|
+
xpath(%w[Related-Party-Disclosure-Number])&.to_i
|
|
89
89
|
end
|
|
90
90
|
|
|
91
91
|
def improvements
|
|
@@ -144,11 +144,11 @@ module ViewModel
|
|
|
144
144
|
end
|
|
145
145
|
|
|
146
146
|
def potential_energy_rating
|
|
147
|
-
xpath(%w[Energy-Rating-Potential])
|
|
147
|
+
xpath(%w[Energy-Rating-Potential])&.to_i
|
|
148
148
|
end
|
|
149
149
|
|
|
150
150
|
def current_energy_rating
|
|
151
|
-
xpath(%w[Energy-Rating-Current])
|
|
151
|
+
xpath(%w[Energy-Rating-Current])&.to_i
|
|
152
152
|
end
|
|
153
153
|
|
|
154
154
|
def primary_energy_use
|
|
@@ -175,10 +175,6 @@ module ViewModel
|
|
|
175
175
|
xpath(%w[Construction-Age-Band])
|
|
176
176
|
end
|
|
177
177
|
|
|
178
|
-
def tenure
|
|
179
|
-
nil
|
|
180
|
-
end
|
|
181
|
-
|
|
182
178
|
def transaction_type
|
|
183
179
|
xpath(%w[Transaction-Type])
|
|
184
180
|
end
|
|
@@ -193,19 +189,19 @@ module ViewModel
|
|
|
193
189
|
|
|
194
190
|
def impact_of_cavity_insulation
|
|
195
191
|
if xpath(%w[Impact-Of-Cavity-Insulation])
|
|
196
|
-
xpath(%w[Impact-Of-Cavity-Insulation])
|
|
192
|
+
xpath(%w[Impact-Of-Cavity-Insulation])&.to_i
|
|
197
193
|
end
|
|
198
194
|
end
|
|
199
195
|
|
|
200
196
|
def impact_of_loft_insulation
|
|
201
197
|
if xpath(%w[Impact-Of-Loft-Insulation])
|
|
202
|
-
xpath(%w[Impact-Of-Loft-Insulation])
|
|
198
|
+
xpath(%w[Impact-Of-Loft-Insulation])&.to_i
|
|
203
199
|
end
|
|
204
200
|
end
|
|
205
201
|
|
|
206
202
|
def impact_of_solid_wall_insulation
|
|
207
203
|
if xpath(%w[Impact-Of-Solid-Wall-Insulation])
|
|
208
|
-
xpath(%w[Impact-Of-Solid-Wall-Insulation])
|
|
204
|
+
xpath(%w[Impact-Of-Solid-Wall-Insulation])&.to_i
|
|
209
205
|
end
|
|
210
206
|
end
|
|
211
207
|
|
|
@@ -222,7 +218,7 @@ module ViewModel
|
|
|
222
218
|
end
|
|
223
219
|
|
|
224
220
|
def type_of_assessment
|
|
225
|
-
case xpath(%w[Report-Type])
|
|
221
|
+
case xpath(%w[Report-Type])&.to_i
|
|
226
222
|
when 1
|
|
227
223
|
"HCR"
|
|
228
224
|
when 2
|
|
@@ -233,21 +229,17 @@ module ViewModel
|
|
|
233
229
|
end
|
|
234
230
|
|
|
235
231
|
def environmental_impact_current
|
|
236
|
-
xpath(%w[Environmental-Impact-Current])
|
|
232
|
+
xpath(%w[Environmental-Impact-Current])&.to_i
|
|
237
233
|
end
|
|
238
234
|
|
|
239
235
|
def environmental_impact_potential
|
|
240
|
-
xpath(%w[Environmental-Impact-Potential])
|
|
236
|
+
xpath(%w[Environmental-Impact-Potential])&.to_i
|
|
241
237
|
end
|
|
242
238
|
|
|
243
239
|
def co2_emissions_current_per_floor_area
|
|
244
240
|
xpath(%w[CO2-Emissions-Current-Per-Floor-Area])
|
|
245
241
|
end
|
|
246
242
|
|
|
247
|
-
def mains_gas
|
|
248
|
-
nil
|
|
249
|
-
end
|
|
250
|
-
|
|
251
243
|
def level
|
|
252
244
|
xpath(%w[Level])
|
|
253
245
|
end
|
|
@@ -257,10 +249,6 @@ module ViewModel
|
|
|
257
249
|
flat_level_code == "3" ? "Y" : "N"
|
|
258
250
|
end
|
|
259
251
|
|
|
260
|
-
def storey_count
|
|
261
|
-
nil
|
|
262
|
-
end
|
|
263
|
-
|
|
264
252
|
def main_heating_controls
|
|
265
253
|
xpath(%w[Main-Heating-Controls Description])
|
|
266
254
|
end
|
|
@@ -273,28 +261,20 @@ module ViewModel
|
|
|
273
261
|
xpath(%w[Glazed-Area])
|
|
274
262
|
end
|
|
275
263
|
|
|
276
|
-
def habitable_room_count
|
|
277
|
-
nil
|
|
278
|
-
end
|
|
279
|
-
|
|
280
|
-
def heated_room_count
|
|
281
|
-
nil
|
|
282
|
-
end
|
|
283
|
-
|
|
284
264
|
def low_energy_lighting
|
|
285
265
|
xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Percentage])
|
|
286
266
|
end
|
|
287
267
|
|
|
288
268
|
def fixed_lighting_outlets_count
|
|
289
|
-
xpath(%w[Fixed-Lighting-Outlets-Count])
|
|
269
|
+
xpath(%w[Fixed-Lighting-Outlets-Count])&.to_i
|
|
290
270
|
end
|
|
291
271
|
|
|
292
272
|
def low_energy_fixed_lighting_outlets_count
|
|
293
|
-
xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])
|
|
273
|
+
xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])&.to_i
|
|
294
274
|
end
|
|
295
275
|
|
|
296
276
|
def open_fireplaces_count
|
|
297
|
-
xpath(%w[Open-Fireplaces-Count])
|
|
277
|
+
xpath(%w[Open-Fireplaces-Count])&.to_i
|
|
298
278
|
end
|
|
299
279
|
|
|
300
280
|
def hot_water_description
|
|
@@ -345,16 +325,12 @@ module ViewModel
|
|
|
345
325
|
xpath(%w[Lighting Environmental-Efficiency-Rating])
|
|
346
326
|
end
|
|
347
327
|
|
|
348
|
-
def photovoltaic_roof_area_percent
|
|
349
|
-
nil
|
|
350
|
-
end
|
|
351
|
-
|
|
352
328
|
def built_form
|
|
353
329
|
xpath(%w[Built-Form])
|
|
354
330
|
end
|
|
355
331
|
|
|
356
332
|
def wind_turbine_count
|
|
357
|
-
xpath(%w[Wind-Turbines-Count])
|
|
333
|
+
xpath(%w[Wind-Turbines-Count])&.to_i
|
|
358
334
|
end
|
|
359
335
|
|
|
360
336
|
def heat_loss_corridor
|
|
@@ -374,7 +350,7 @@ module ViewModel
|
|
|
374
350
|
end
|
|
375
351
|
|
|
376
352
|
def extensions_count
|
|
377
|
-
xpath(%w[Extensions-Count])
|
|
353
|
+
xpath(%w[Extensions-Count])&.to_i
|
|
378
354
|
end
|
|
379
355
|
|
|
380
356
|
def report_type
|
|
@@ -417,14 +393,6 @@ module ViewModel
|
|
|
417
393
|
@xml_doc.search("Main-Heating/Energy-Efficiency-Rating").map(&:content)
|
|
418
394
|
end
|
|
419
395
|
|
|
420
|
-
def solar_water_heating_flag
|
|
421
|
-
nil
|
|
422
|
-
end
|
|
423
|
-
|
|
424
|
-
def mechanical_ventilation
|
|
425
|
-
nil
|
|
426
|
-
end
|
|
427
|
-
|
|
428
396
|
def main_dwelling_construction_age_band_or_year
|
|
429
397
|
sap_building_parts =
|
|
430
398
|
@xml_doc.xpath("//SAP-Building-Parts/SAP-Building-Part")
|
|
@@ -480,14 +448,6 @@ module ViewModel
|
|
|
480
448
|
.search("Main-Heating-Controls/Environmental-Efficiency-Rating")
|
|
481
449
|
.map(&:content)
|
|
482
450
|
end
|
|
483
|
-
|
|
484
|
-
def gas_smart_meter_present
|
|
485
|
-
nil
|
|
486
|
-
end
|
|
487
|
-
|
|
488
|
-
def electricity_smart_meter_present
|
|
489
|
-
nil
|
|
490
|
-
end
|
|
491
451
|
end
|
|
492
452
|
end
|
|
493
453
|
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
|
|
@@ -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])
|
|
84
|
+
xpath(%w[Related-Party-Disclosure-Number])&.to_i
|
|
85
85
|
end
|
|
86
86
|
|
|
87
87
|
def improvements
|
|
@@ -140,11 +140,11 @@ module ViewModel
|
|
|
140
140
|
end
|
|
141
141
|
|
|
142
142
|
def potential_energy_rating
|
|
143
|
-
xpath(%w[Energy-Rating-Potential])
|
|
143
|
+
xpath(%w[Energy-Rating-Potential])&.to_i
|
|
144
144
|
end
|
|
145
145
|
|
|
146
146
|
def current_energy_rating
|
|
147
|
-
xpath(%w[Energy-Rating-Current])
|
|
147
|
+
xpath(%w[Energy-Rating-Current])&.to_i
|
|
148
148
|
end
|
|
149
149
|
|
|
150
150
|
def primary_energy_use
|
|
@@ -189,19 +189,19 @@ module ViewModel
|
|
|
189
189
|
|
|
190
190
|
def impact_of_cavity_insulation
|
|
191
191
|
if xpath(%w[Impact-Of-Cavity-Insulation])
|
|
192
|
-
xpath(%w[Impact-Of-Cavity-Insulation])
|
|
192
|
+
xpath(%w[Impact-Of-Cavity-Insulation])&.to_i
|
|
193
193
|
end
|
|
194
194
|
end
|
|
195
195
|
|
|
196
196
|
def impact_of_loft_insulation
|
|
197
197
|
if xpath(%w[Impact-Of-Loft-Insulation])
|
|
198
|
-
xpath(%w[Impact-Of-Loft-Insulation])
|
|
198
|
+
xpath(%w[Impact-Of-Loft-Insulation])&.to_i
|
|
199
199
|
end
|
|
200
200
|
end
|
|
201
201
|
|
|
202
202
|
def impact_of_solid_wall_insulation
|
|
203
203
|
if xpath(%w[Impact-Of-Solid-Wall-Insulation])
|
|
204
|
-
xpath(%w[Impact-Of-Solid-Wall-Insulation])
|
|
204
|
+
xpath(%w[Impact-Of-Solid-Wall-Insulation])&.to_i
|
|
205
205
|
end
|
|
206
206
|
end
|
|
207
207
|
|
|
@@ -218,7 +218,7 @@ module ViewModel
|
|
|
218
218
|
end
|
|
219
219
|
|
|
220
220
|
def type_of_assessment
|
|
221
|
-
case xpath(%w[Report-Type])
|
|
221
|
+
case xpath(%w[Report-Type])&.to_i
|
|
222
222
|
when 1
|
|
223
223
|
"HCR"
|
|
224
224
|
when 2
|
|
@@ -229,21 +229,17 @@ module ViewModel
|
|
|
229
229
|
end
|
|
230
230
|
|
|
231
231
|
def environmental_impact_current
|
|
232
|
-
xpath(%w[Environmental-Impact-Current])
|
|
232
|
+
xpath(%w[Environmental-Impact-Current])&.to_i
|
|
233
233
|
end
|
|
234
234
|
|
|
235
235
|
def environmental_impact_potential
|
|
236
|
-
xpath(%w[Environmental-Impact-Potential])
|
|
236
|
+
xpath(%w[Environmental-Impact-Potential])&.to_i
|
|
237
237
|
end
|
|
238
238
|
|
|
239
239
|
def co2_emissions_current_per_floor_area
|
|
240
240
|
xpath(%w[CO2-Emissions-Current-Per-Floor-Area])
|
|
241
241
|
end
|
|
242
242
|
|
|
243
|
-
def mains_gas
|
|
244
|
-
nil
|
|
245
|
-
end
|
|
246
|
-
|
|
247
243
|
def level
|
|
248
244
|
xpath(%w[Level])
|
|
249
245
|
end
|
|
@@ -253,10 +249,6 @@ module ViewModel
|
|
|
253
249
|
flat_level_code == "3" ? "Y" : "N"
|
|
254
250
|
end
|
|
255
251
|
|
|
256
|
-
def storey_count
|
|
257
|
-
nil
|
|
258
|
-
end
|
|
259
|
-
|
|
260
252
|
def main_heating_controls
|
|
261
253
|
xpath(%w[Main-Heating-Controls Description])
|
|
262
254
|
end
|
|
@@ -269,28 +261,20 @@ module ViewModel
|
|
|
269
261
|
xpath(%w[Glazed-Area])
|
|
270
262
|
end
|
|
271
263
|
|
|
272
|
-
def habitable_room_count
|
|
273
|
-
nil
|
|
274
|
-
end
|
|
275
|
-
|
|
276
|
-
def heated_room_count
|
|
277
|
-
nil
|
|
278
|
-
end
|
|
279
|
-
|
|
280
264
|
def low_energy_lighting
|
|
281
265
|
xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Percentage])
|
|
282
266
|
end
|
|
283
267
|
|
|
284
268
|
def fixed_lighting_outlets_count
|
|
285
|
-
xpath(%w[Fixed-Lighting-Outlets-Count])
|
|
269
|
+
xpath(%w[Fixed-Lighting-Outlets-Count])&.to_i
|
|
286
270
|
end
|
|
287
271
|
|
|
288
272
|
def low_energy_fixed_lighting_outlets_count
|
|
289
|
-
xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])
|
|
273
|
+
xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])&.to_i
|
|
290
274
|
end
|
|
291
275
|
|
|
292
276
|
def open_fireplaces_count
|
|
293
|
-
xpath(%w[Open-Fireplaces-Count])
|
|
277
|
+
xpath(%w[Open-Fireplaces-Count])&.to_i
|
|
294
278
|
end
|
|
295
279
|
|
|
296
280
|
def hot_water_description
|
|
@@ -341,16 +325,12 @@ module ViewModel
|
|
|
341
325
|
xpath(%w[Lighting Environmental-Efficiency-Rating])
|
|
342
326
|
end
|
|
343
327
|
|
|
344
|
-
def photovoltaic_roof_area_percent
|
|
345
|
-
nil
|
|
346
|
-
end
|
|
347
|
-
|
|
348
328
|
def built_form
|
|
349
329
|
xpath(%w[Built-Form])
|
|
350
330
|
end
|
|
351
331
|
|
|
352
332
|
def wind_turbine_count
|
|
353
|
-
xpath(%w[Wind-Turbines-Count])
|
|
333
|
+
xpath(%w[Wind-Turbines-Count])&.to_i
|
|
354
334
|
end
|
|
355
335
|
|
|
356
336
|
def heat_loss_corridor
|
|
@@ -366,7 +346,7 @@ module ViewModel
|
|
|
366
346
|
end
|
|
367
347
|
|
|
368
348
|
def extensions_count
|
|
369
|
-
xpath(%w[Extensions-Count])
|
|
349
|
+
xpath(%w[Extensions-Count])&.to_i
|
|
370
350
|
end
|
|
371
351
|
|
|
372
352
|
def all_main_heating_controls_descriptions
|
|
@@ -413,14 +393,6 @@ module ViewModel
|
|
|
413
393
|
@xml_doc.search("Main-Heating/Energy-Efficiency-Rating").map(&:content)
|
|
414
394
|
end
|
|
415
395
|
|
|
416
|
-
def solar_water_heating_flag
|
|
417
|
-
nil
|
|
418
|
-
end
|
|
419
|
-
|
|
420
|
-
def mechanical_ventilation
|
|
421
|
-
nil
|
|
422
|
-
end
|
|
423
|
-
|
|
424
396
|
def main_dwelling_construction_age_band_or_year
|
|
425
397
|
sap_building_parts =
|
|
426
398
|
@xml_doc.xpath("//SAP-Building-Parts/SAP-Building-Part")
|
|
@@ -476,14 +448,6 @@ module ViewModel
|
|
|
476
448
|
.search("Main-Heating-Controls/Environmental-Efficiency-Rating")
|
|
477
449
|
.map(&:content)
|
|
478
450
|
end
|
|
479
|
-
|
|
480
|
-
def gas_smart_meter_present
|
|
481
|
-
nil
|
|
482
|
-
end
|
|
483
|
-
|
|
484
|
-
def electricity_smart_meter_present
|
|
485
|
-
nil
|
|
486
|
-
end
|
|
487
451
|
end
|
|
488
452
|
end
|
|
489
453
|
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
|