epb_view_models 1.2.3 → 2.0.1
Sign up to get free protection for your applications and to get access to all the features.
- 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/helper/energy_band_calculator.rb +8 -0
- 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
|
@@ -164,11 +164,11 @@ module ViewModel
|
|
164
164
|
end
|
165
165
|
|
166
166
|
def potential_energy_rating
|
167
|
-
xpath(%w[Energy-Rating-Potential])
|
167
|
+
xpath(%w[Energy-Rating-Potential])&.to_i
|
168
168
|
end
|
169
169
|
|
170
170
|
def current_energy_rating
|
171
|
-
xpath(%w[Energy-Rating-Current])
|
171
|
+
xpath(%w[Energy-Rating-Current])&.to_i
|
172
172
|
end
|
173
173
|
|
174
174
|
def primary_energy_use
|
@@ -195,10 +195,6 @@ module ViewModel
|
|
195
195
|
xpath(%w[Construction-Year])
|
196
196
|
end
|
197
197
|
|
198
|
-
def tenure
|
199
|
-
nil
|
200
|
-
end
|
201
|
-
|
202
198
|
def transaction_type
|
203
199
|
xpath(%w[Transaction-Type])
|
204
200
|
end
|
@@ -213,19 +209,19 @@ module ViewModel
|
|
213
209
|
|
214
210
|
def impact_of_cavity_insulation
|
215
211
|
if xpath(%w[Impact-Of-Cavity-Insulation])
|
216
|
-
xpath(%w[Impact-Of-Cavity-Insulation])
|
212
|
+
xpath(%w[Impact-Of-Cavity-Insulation])&.to_i
|
217
213
|
end
|
218
214
|
end
|
219
215
|
|
220
216
|
def impact_of_loft_insulation
|
221
217
|
if xpath(%w[Impact-Of-Loft-Insulation])
|
222
|
-
xpath(%w[Impact-Of-Loft-Insulation])
|
218
|
+
xpath(%w[Impact-Of-Loft-Insulation])&.to_i
|
223
219
|
end
|
224
220
|
end
|
225
221
|
|
226
222
|
def impact_of_solid_wall_insulation
|
227
223
|
if xpath(%w[Impact-Of-Solid-Wall-Insulation])
|
228
|
-
xpath(%w[Impact-Of-Solid-Wall-Insulation])
|
224
|
+
xpath(%w[Impact-Of-Solid-Wall-Insulation])&.to_i
|
229
225
|
end
|
230
226
|
end
|
231
227
|
|
@@ -242,7 +238,7 @@ module ViewModel
|
|
242
238
|
end
|
243
239
|
|
244
240
|
def type_of_assessment
|
245
|
-
case xpath(%w[Report-Type])
|
241
|
+
case xpath(%w[Report-Type])&.to_i
|
246
242
|
when 1
|
247
243
|
"HCR"
|
248
244
|
when 2
|
@@ -253,21 +249,17 @@ module ViewModel
|
|
253
249
|
end
|
254
250
|
|
255
251
|
def environmental_impact_current
|
256
|
-
xpath(%w[Environmental-Impact-Current])
|
252
|
+
xpath(%w[Environmental-Impact-Current])&.to_i
|
257
253
|
end
|
258
254
|
|
259
255
|
def environmental_impact_potential
|
260
|
-
xpath(%w[Environmental-Impact-Potential])
|
256
|
+
xpath(%w[Environmental-Impact-Potential])&.to_i
|
261
257
|
end
|
262
258
|
|
263
259
|
def co2_emissions_current_per_floor_area
|
264
260
|
xpath(%w[CO2-Emissions-Current-Per-Floor-Area])
|
265
261
|
end
|
266
262
|
|
267
|
-
def mains_gas
|
268
|
-
nil
|
269
|
-
end
|
270
|
-
|
271
263
|
def level
|
272
264
|
xpath(%w[Level])
|
273
265
|
end
|
@@ -277,10 +269,6 @@ module ViewModel
|
|
277
269
|
flat_level_code == "3" ? "Y" : "N"
|
278
270
|
end
|
279
271
|
|
280
|
-
def storey_count
|
281
|
-
nil
|
282
|
-
end
|
283
|
-
|
284
272
|
def main_heating_controls
|
285
273
|
xpath(%w[Main-Heating-Controls Description])
|
286
274
|
end
|
@@ -289,32 +277,20 @@ module ViewModel
|
|
289
277
|
xpath(%w[Multiple-Glazed-Proportion])
|
290
278
|
end
|
291
279
|
|
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
280
|
def low_energy_lighting
|
305
281
|
xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Percentage])
|
306
282
|
end
|
307
283
|
|
308
284
|
def fixed_lighting_outlets_count
|
309
|
-
xpath(%w[Fixed-Lighting-Outlets-Count])
|
285
|
+
xpath(%w[Fixed-Lighting-Outlets-Count])&.to_i
|
310
286
|
end
|
311
287
|
|
312
288
|
def low_energy_fixed_lighting_outlets_count
|
313
|
-
xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])
|
289
|
+
xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])&.to_i
|
314
290
|
end
|
315
291
|
|
316
292
|
def open_fireplaces_count
|
317
|
-
xpath(%w[Open-Fireplaces-Count])
|
293
|
+
xpath(%w[Open-Fireplaces-Count])&.to_i
|
318
294
|
end
|
319
295
|
|
320
296
|
def hot_water_description
|
@@ -365,10 +341,6 @@ module ViewModel
|
|
365
341
|
xpath(%w[Lighting Environmental-Efficiency-Rating])
|
366
342
|
end
|
367
343
|
|
368
|
-
def photovoltaic_roof_area_percent
|
369
|
-
nil
|
370
|
-
end
|
371
|
-
|
372
344
|
def built_form
|
373
345
|
xpath(%w[Built-Form])
|
374
346
|
end
|
@@ -378,7 +350,7 @@ module ViewModel
|
|
378
350
|
end
|
379
351
|
|
380
352
|
def wind_turbine_count
|
381
|
-
xpath(%w[Wind-Turbines-Count])
|
353
|
+
xpath(%w[Wind-Turbines-Count])&.to_i
|
382
354
|
end
|
383
355
|
|
384
356
|
def unheated_corridor_length
|
@@ -390,7 +362,7 @@ module ViewModel
|
|
390
362
|
end
|
391
363
|
|
392
364
|
def extensions_count
|
393
|
-
xpath(%w[Extensions-Count])
|
365
|
+
xpath(%w[Extensions-Count])&.to_i
|
394
366
|
end
|
395
367
|
|
396
368
|
def all_main_heating_controls_descriptions
|
@@ -437,14 +409,6 @@ module ViewModel
|
|
437
409
|
@xml_doc.search("Main-Heating/Energy-Efficiency-Rating").map(&:content)
|
438
410
|
end
|
439
411
|
|
440
|
-
def solar_water_heating_flag
|
441
|
-
nil
|
442
|
-
end
|
443
|
-
|
444
|
-
def mechanical_ventilation
|
445
|
-
nil
|
446
|
-
end
|
447
|
-
|
448
412
|
def main_dwelling_construction_age_band_or_year
|
449
413
|
sap_building_parts =
|
450
414
|
@xml_doc.xpath("//SAP-Building-Parts/SAP-Building-Part")
|
@@ -500,14 +464,6 @@ module ViewModel
|
|
500
464
|
.search("Main-Heating/Environmental-Efficiency-Rating")
|
501
465
|
.map(&:content)
|
502
466
|
end
|
503
|
-
|
504
|
-
def gas_smart_meter_present
|
505
|
-
nil
|
506
|
-
end
|
507
|
-
|
508
|
-
def electricity_smart_meter_present
|
509
|
-
nil
|
510
|
-
end
|
511
467
|
end
|
512
468
|
end
|
513
469
|
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
|
@@ -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
|
@@ -164,11 +164,11 @@ module ViewModel
|
|
164
164
|
end
|
165
165
|
|
166
166
|
def potential_energy_rating
|
167
|
-
xpath(%w[Energy-Rating-Potential])
|
167
|
+
xpath(%w[Energy-Rating-Potential])&.to_i
|
168
168
|
end
|
169
169
|
|
170
170
|
def current_energy_rating
|
171
|
-
xpath(%w[Energy-Rating-Current])
|
171
|
+
xpath(%w[Energy-Rating-Current])&.to_i
|
172
172
|
end
|
173
173
|
|
174
174
|
def primary_energy_use
|
@@ -195,10 +195,6 @@ module ViewModel
|
|
195
195
|
xpath(%w[Construction-Year])
|
196
196
|
end
|
197
197
|
|
198
|
-
def tenure
|
199
|
-
nil
|
200
|
-
end
|
201
|
-
|
202
198
|
def transaction_type
|
203
199
|
xpath(%w[Transaction-Type])
|
204
200
|
end
|
@@ -213,19 +209,19 @@ module ViewModel
|
|
213
209
|
|
214
210
|
def impact_of_cavity_insulation
|
215
211
|
if xpath(%w[Impact-Of-Cavity-Insulation])
|
216
|
-
xpath(%w[Impact-Of-Cavity-Insulation])
|
212
|
+
xpath(%w[Impact-Of-Cavity-Insulation])&.to_i
|
217
213
|
end
|
218
214
|
end
|
219
215
|
|
220
216
|
def impact_of_loft_insulation
|
221
217
|
if xpath(%w[Impact-Of-Loft-Insulation])
|
222
|
-
xpath(%w[Impact-Of-Loft-Insulation])
|
218
|
+
xpath(%w[Impact-Of-Loft-Insulation])&.to_i
|
223
219
|
end
|
224
220
|
end
|
225
221
|
|
226
222
|
def impact_of_solid_wall_insulation
|
227
223
|
if xpath(%w[Impact-Of-Solid-Wall-Insulation])
|
228
|
-
xpath(%w[Impact-Of-Solid-Wall-Insulation])
|
224
|
+
xpath(%w[Impact-Of-Solid-Wall-Insulation])&.to_i
|
229
225
|
end
|
230
226
|
end
|
231
227
|
|
@@ -242,7 +238,7 @@ module ViewModel
|
|
242
238
|
end
|
243
239
|
|
244
240
|
def type_of_assessment
|
245
|
-
case xpath(%w[Report-Type])
|
241
|
+
case xpath(%w[Report-Type])&.to_i
|
246
242
|
when 1
|
247
243
|
"HCR"
|
248
244
|
when 2
|
@@ -253,21 +249,17 @@ module ViewModel
|
|
253
249
|
end
|
254
250
|
|
255
251
|
def environmental_impact_current
|
256
|
-
xpath(%w[Environmental-Impact-Current])
|
252
|
+
xpath(%w[Environmental-Impact-Current])&.to_i
|
257
253
|
end
|
258
254
|
|
259
255
|
def environmental_impact_potential
|
260
|
-
xpath(%w[Environmental-Impact-Potential])
|
256
|
+
xpath(%w[Environmental-Impact-Potential])&.to_i
|
261
257
|
end
|
262
258
|
|
263
259
|
def co2_emissions_current_per_floor_area
|
264
260
|
xpath(%w[CO2-Emissions-Current-Per-Floor-Area])
|
265
261
|
end
|
266
262
|
|
267
|
-
def mains_gas
|
268
|
-
nil
|
269
|
-
end
|
270
|
-
|
271
263
|
def level
|
272
264
|
xpath(%w[Level])
|
273
265
|
end
|
@@ -277,10 +269,6 @@ module ViewModel
|
|
277
269
|
flat_level_code == "3" ? "Y" : "N"
|
278
270
|
end
|
279
271
|
|
280
|
-
def storey_count
|
281
|
-
nil
|
282
|
-
end
|
283
|
-
|
284
272
|
def main_heating_controls
|
285
273
|
xpath(%w[Main-Heating-Controls Description])
|
286
274
|
end
|
@@ -289,32 +277,20 @@ module ViewModel
|
|
289
277
|
xpath(%w[Multiple-Glazed-Proportion])
|
290
278
|
end
|
291
279
|
|
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
280
|
def low_energy_lighting
|
305
281
|
xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Percentage])
|
306
282
|
end
|
307
283
|
|
308
284
|
def fixed_lighting_outlets_count
|
309
|
-
xpath(%w[Fixed-Lighting-Outlets-Count])
|
285
|
+
xpath(%w[Fixed-Lighting-Outlets-Count])&.to_i
|
310
286
|
end
|
311
287
|
|
312
288
|
def low_energy_fixed_lighting_outlets_count
|
313
|
-
xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])
|
289
|
+
xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])&.to_i
|
314
290
|
end
|
315
291
|
|
316
292
|
def open_fireplaces_count
|
317
|
-
xpath(%w[Open-Fireplaces-Count])
|
293
|
+
xpath(%w[Open-Fireplaces-Count])&.to_i
|
318
294
|
end
|
319
295
|
|
320
296
|
def hot_water_description
|
@@ -365,10 +341,6 @@ module ViewModel
|
|
365
341
|
xpath(%w[Lighting Environmental-Efficiency-Rating])
|
366
342
|
end
|
367
343
|
|
368
|
-
def photovoltaic_roof_area_percent
|
369
|
-
nil
|
370
|
-
end
|
371
|
-
|
372
344
|
def built_form
|
373
345
|
xpath(%w[Built-Form])
|
374
346
|
end
|
@@ -378,7 +350,7 @@ module ViewModel
|
|
378
350
|
end
|
379
351
|
|
380
352
|
def wind_turbine_count
|
381
|
-
xpath(%w[Wind-Turbines-Count])
|
353
|
+
xpath(%w[Wind-Turbines-Count])&.to_i
|
382
354
|
end
|
383
355
|
|
384
356
|
def unheated_corridor_length
|
@@ -390,7 +362,7 @@ module ViewModel
|
|
390
362
|
end
|
391
363
|
|
392
364
|
def extensions_count
|
393
|
-
xpath(%w[Extensions-Count])
|
365
|
+
xpath(%w[Extensions-Count])&.to_i
|
394
366
|
end
|
395
367
|
|
396
368
|
def all_main_heating_controls_descriptions
|
@@ -437,14 +409,6 @@ module ViewModel
|
|
437
409
|
@xml_doc.search("Main-Heating/Energy-Efficiency-Rating").map(&:content)
|
438
410
|
end
|
439
411
|
|
440
|
-
def solar_water_heating_flag
|
441
|
-
nil
|
442
|
-
end
|
443
|
-
|
444
|
-
def mechanical_ventilation
|
445
|
-
nil
|
446
|
-
end
|
447
|
-
|
448
412
|
def main_dwelling_construction_age_band_or_year
|
449
413
|
sap_building_parts =
|
450
414
|
@xml_doc.xpath("//SAP-Building-Parts/SAP-Building-Part")
|
@@ -500,14 +464,6 @@ module ViewModel
|
|
500
464
|
.search("Main-Heating/Environmental-Efficiency-Rating")
|
501
465
|
.map(&:content)
|
502
466
|
end
|
503
|
-
|
504
|
-
def gas_smart_meter_present
|
505
|
-
nil
|
506
|
-
end
|
507
|
-
|
508
|
-
def electricity_smart_meter_present
|
509
|
-
nil
|
510
|
-
end
|
511
467
|
end
|
512
468
|
end
|
513
469
|
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
|
@@ -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
|
@@ -164,11 +164,11 @@ module ViewModel
|
|
164
164
|
end
|
165
165
|
|
166
166
|
def potential_energy_rating
|
167
|
-
xpath(%w[Energy-Rating-Potential])
|
167
|
+
xpath(%w[Energy-Rating-Potential])&.to_i
|
168
168
|
end
|
169
169
|
|
170
170
|
def current_energy_rating
|
171
|
-
xpath(%w[Energy-Rating-Current])
|
171
|
+
xpath(%w[Energy-Rating-Current])&.to_i
|
172
172
|
end
|
173
173
|
|
174
174
|
def primary_energy_use
|
@@ -195,10 +195,6 @@ module ViewModel
|
|
195
195
|
xpath(%w[Construction-Year])
|
196
196
|
end
|
197
197
|
|
198
|
-
def tenure
|
199
|
-
nil
|
200
|
-
end
|
201
|
-
|
202
198
|
def transaction_type
|
203
199
|
xpath(%w[Transaction-Type])
|
204
200
|
end
|
@@ -213,19 +209,19 @@ module ViewModel
|
|
213
209
|
|
214
210
|
def impact_of_cavity_insulation
|
215
211
|
if xpath(%w[Impact-Of-Cavity-Insulation])
|
216
|
-
xpath(%w[Impact-Of-Cavity-Insulation])
|
212
|
+
xpath(%w[Impact-Of-Cavity-Insulation])&.to_i
|
217
213
|
end
|
218
214
|
end
|
219
215
|
|
220
216
|
def impact_of_loft_insulation
|
221
217
|
if xpath(%w[Impact-Of-Loft-Insulation])
|
222
|
-
xpath(%w[Impact-Of-Loft-Insulation])
|
218
|
+
xpath(%w[Impact-Of-Loft-Insulation])&.to_i
|
223
219
|
end
|
224
220
|
end
|
225
221
|
|
226
222
|
def impact_of_solid_wall_insulation
|
227
223
|
if xpath(%w[Impact-Of-Solid-Wall-Insulation])
|
228
|
-
xpath(%w[Impact-Of-Solid-Wall-Insulation])
|
224
|
+
xpath(%w[Impact-Of-Solid-Wall-Insulation])&.to_i
|
229
225
|
end
|
230
226
|
end
|
231
227
|
|
@@ -242,7 +238,7 @@ module ViewModel
|
|
242
238
|
end
|
243
239
|
|
244
240
|
def type_of_assessment
|
245
|
-
case xpath(%w[Report-Type])
|
241
|
+
case xpath(%w[Report-Type])&.to_i
|
246
242
|
when 1
|
247
243
|
"HCR"
|
248
244
|
when 2
|
@@ -253,21 +249,17 @@ module ViewModel
|
|
253
249
|
end
|
254
250
|
|
255
251
|
def environmental_impact_current
|
256
|
-
xpath(%w[Environmental-Impact-Current])
|
252
|
+
xpath(%w[Environmental-Impact-Current])&.to_i
|
257
253
|
end
|
258
254
|
|
259
255
|
def environmental_impact_potential
|
260
|
-
xpath(%w[Environmental-Impact-Potential])
|
256
|
+
xpath(%w[Environmental-Impact-Potential])&.to_i
|
261
257
|
end
|
262
258
|
|
263
259
|
def co2_emissions_current_per_floor_area
|
264
260
|
xpath(%w[CO2-Emissions-Current-Per-Floor-Area])
|
265
261
|
end
|
266
262
|
|
267
|
-
def mains_gas
|
268
|
-
nil
|
269
|
-
end
|
270
|
-
|
271
263
|
def level
|
272
264
|
xpath(%w[Level])
|
273
265
|
end
|
@@ -277,10 +269,6 @@ module ViewModel
|
|
277
269
|
flat_level_code == "3" ? "Y" : "N"
|
278
270
|
end
|
279
271
|
|
280
|
-
def storey_count
|
281
|
-
nil
|
282
|
-
end
|
283
|
-
|
284
272
|
def main_heating_controls
|
285
273
|
xpath(%w[Main-Heating-Controls Description])
|
286
274
|
end
|
@@ -289,32 +277,20 @@ module ViewModel
|
|
289
277
|
xpath(%w[Multiple-Glazed-Proportion])
|
290
278
|
end
|
291
279
|
|
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
280
|
def low_energy_lighting
|
305
281
|
xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Percentage])
|
306
282
|
end
|
307
283
|
|
308
284
|
def fixed_lighting_outlets_count
|
309
|
-
xpath(%w[Fixed-Lighting-Outlets-Count])
|
285
|
+
xpath(%w[Fixed-Lighting-Outlets-Count])&.to_i
|
310
286
|
end
|
311
287
|
|
312
288
|
def low_energy_fixed_lighting_outlets_count
|
313
|
-
xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])
|
289
|
+
xpath(%w[Low-Energy-Fixed-Lighting-Outlets-Count])&.to_i
|
314
290
|
end
|
315
291
|
|
316
292
|
def open_fireplaces_count
|
317
|
-
xpath(%w[Open-Fireplaces-Count])
|
293
|
+
xpath(%w[Open-Fireplaces-Count])&.to_i
|
318
294
|
end
|
319
295
|
|
320
296
|
def hot_water_description
|
@@ -365,10 +341,6 @@ module ViewModel
|
|
365
341
|
xpath(%w[Lighting Environmental-Efficiency-Rating])
|
366
342
|
end
|
367
343
|
|
368
|
-
def photovoltaic_roof_area_percent
|
369
|
-
nil
|
370
|
-
end
|
371
|
-
|
372
344
|
def built_form
|
373
345
|
xpath(%w[Built-Form])
|
374
346
|
end
|
@@ -378,7 +350,7 @@ module ViewModel
|
|
378
350
|
end
|
379
351
|
|
380
352
|
def wind_turbine_count
|
381
|
-
xpath(%w[Wind-Turbines-Count])
|
353
|
+
xpath(%w[Wind-Turbines-Count])&.to_i
|
382
354
|
end
|
383
355
|
|
384
356
|
def unheated_corridor_length
|
@@ -390,7 +362,7 @@ module ViewModel
|
|
390
362
|
end
|
391
363
|
|
392
364
|
def extensions_count
|
393
|
-
xpath(%w[Extensions-Count])
|
365
|
+
xpath(%w[Extensions-Count])&.to_i
|
394
366
|
end
|
395
367
|
|
396
368
|
def all_main_heating_controls_descriptions
|
@@ -437,14 +409,6 @@ module ViewModel
|
|
437
409
|
@xml_doc.search("Main-Heating/Energy-Efficiency-Rating").map(&:content)
|
438
410
|
end
|
439
411
|
|
440
|
-
def solar_water_heating_flag
|
441
|
-
nil
|
442
|
-
end
|
443
|
-
|
444
|
-
def mechanical_ventilation
|
445
|
-
nil
|
446
|
-
end
|
447
|
-
|
448
412
|
def main_dwelling_construction_age_band_or_year
|
449
413
|
sap_building_parts =
|
450
414
|
@xml_doc.xpath("//SAP-Building-Parts/SAP-Building-Part")
|
@@ -500,14 +464,6 @@ module ViewModel
|
|
500
464
|
.search("Property-Summary/Floor/Environmental-Efficiency-Rating")
|
501
465
|
.map(&:content)
|
502
466
|
end
|
503
|
-
|
504
|
-
def gas_smart_meter_present
|
505
|
-
nil
|
506
|
-
end
|
507
|
-
|
508
|
-
def electricity_smart_meter_present
|
509
|
-
nil
|
510
|
-
end
|
511
467
|
end
|
512
468
|
end
|
513
469
|
end
|