From 7ed1beb3278bbc5e9b667f5ae050f6ba97077d51 Mon Sep 17 00:00:00 2001 From: zzhhaa Date: Tue, 28 Jan 2025 14:32:27 +0000 Subject: [PATCH] feat: render housing quality savings NHS and society --- app/components/Dashboard/Cards/WhatDifference.tsx | 14 ++++++++------ app/models/SocialValue.ts | 8 +++++--- app/models/constants.ts | 5 +++-- 3 files changed, 16 insertions(+), 11 deletions(-) diff --git a/app/components/Dashboard/Cards/WhatDifference.tsx b/app/components/Dashboard/Cards/WhatDifference.tsx index c0c2d35..468ad11 100644 --- a/app/components/Dashboard/Cards/WhatDifference.tsx +++ b/app/components/Dashboard/Cards/WhatDifference.tsx @@ -36,19 +36,18 @@ const Highlight: React.FC = ({ children }) => ( {children} ) - - const Cards: React.FC = ({ household }) => { const moneySaved = Math.round(household.socialValue.moneySaved).toLocaleString(); const communityWealthDecade = Math.round(household.socialValue.communityWealthDecade).toLocaleString(); const embodiedCarbonSavings = household.socialValue.embodiedCarbonSavings.toFixed(1); const savingsEnergyPoundsYearly = Math.round(household.socialValue.savingsEnergyPoundsYearly).toLocaleString() - const savingsToNHSPerHeadYearly = Math.round(household.socialValue.savingsToNHSPerHeadYearly).toLocaleString(); + const savingsToNHSPerHouseYearly = Math.round(household.socialValue.savingsToNHSPerHouseYearly).toLocaleString(); + const savingsToSocietyPerHouseYearly = Math.round(household.socialValue.savingsToSocietyPerHouseYearly).toLocaleString(); const newBuildPrice = Math.round(household.property.newBuildPrice).toLocaleString(); const operationalCarbonSavingsYearly = household.socialValue.operationalCarbonSavingsYearly.toFixed(1); const maintenanceCost = Math.round(household.lifetime.lifetimeData[0].maintenanceCost[household.property.maintenanceLevel]).toLocaleString(); const localJobs = household.socialValue.localJobs.toFixed(1); - + return

If Fairhold Land Purchase, on housing costs over 10 years compared to conventional ownership

@@ -65,8 +64,11 @@ const Cards: React.FC = ({ household }) => {

Every year, if new build or retrofitted

- -

per person, per year of a healthy, well-maintained home

+ +

+ If moving from substandard accommodation, Fairhold would save the NHS {" "} + £{savingsToNHSPerHouseYearly} and society at large {" "}£{savingsToSocietyPerHouseYearly} yearly +

If new build, the home would add £{newBuildPrice} to the local economy, and £{maintenanceCost} every year, supporting {localJobs} full-time-equivalent jobs in total

diff --git a/app/models/SocialValue.ts b/app/models/SocialValue.ts index 98668e6..ace3f05 100644 --- a/app/models/SocialValue.ts +++ b/app/models/SocialValue.ts @@ -1,5 +1,5 @@ import { Household } from "./Household" -import { KG_CO2_PER_KWH, NHS_SAVINGS_PER_HEAD_PER_YEAR, FTE_SPEND, SOCIAL_VALUE_YEARS } from "./constants"; +import { KG_CO2_PER_KWH, NHS_SAVINGS_PER_HOUSE_PER_YEAR, SOCIAL_SAVINGS_PER_HOUSE_PER_YEAR, FTE_SPEND, SOCIAL_VALUE_YEARS } from "./constants"; type ConstructorParams = { household: Household @@ -11,7 +11,8 @@ export class SocialValue { public communityWealthDecade: number; public embodiedCarbonSavings: number; public savingsEnergyPoundsYearly: number; - public savingsToNHSPerHeadYearly: number; + public savingsToNHSPerHouseYearly: number; + public savingsToSocietyPerHouseYearly: number; public localJobs: number; public operationalCarbonSavingsYearly: number; @@ -20,7 +21,8 @@ export class SocialValue { this.communityWealthDecade = this.calculateCommunityWealth(params); this.embodiedCarbonSavings = 31.89; // TODO: update figures, not placing in constants.ts because it's placeholder; static number comparing average brick & block emissions vs. timber on slab this.savingsEnergyPoundsYearly = this.calculateSavingsEnergyPoundsYearly(params); - this.savingsToNHSPerHeadYearly = NHS_SAVINGS_PER_HEAD_PER_YEAR + this.savingsToNHSPerHouseYearly = NHS_SAVINGS_PER_HOUSE_PER_YEAR; + this.savingsToSocietyPerHouseYearly = SOCIAL_SAVINGS_PER_HOUSE_PER_YEAR; this.localJobs = this.calculateLocalJobsSupported(params); this.operationalCarbonSavingsYearly = this.calculateCarbonSavingsYearly(params); } diff --git a/app/models/constants.ts b/app/models/constants.ts index 4ff2002..bf4e0d4 100644 --- a/app/models/constants.ts +++ b/app/models/constants.ts @@ -182,8 +182,9 @@ export const KWH_M2_YR_NEWBUILDS_RETROFIT = { /** from Carbon Independent https://www.carbonindependent.org/15.html#:~:text=Natural%20gas&text=Older%20gas%20meters%20measure%20gas,kg%20%2F%20kWh%20%5B9%5D%20 */ export const KG_CO2_PER_KWH = 0.185 -/** from BRE report in 2021, NHS first-year care costs due to poor housing in England individualised */ -export const NHS_SAVINGS_PER_HEAD_PER_YEAR = 24.78 // TODO: math +/** from BRE report in 2021, NHS first-year care costs due to poor housing in England individualised according to English Housing Survey 2021–2022 3.5m households in substandard accom figure */ +export const NHS_SAVINGS_PER_HOUSE_PER_YEAR = 400 +export const SOCIAL_SAVINGS_PER_HOUSE_PER_YEAR = 5286 export const FTE_SPEND = 60000