Fixed hot water tank insulation recommendation

This commit is contained in:
Khalim Conn-Kowlessar 2024-02-21 22:21:59 +00:00
parent f3a95e462e
commit db1c203739
5 changed files with 26 additions and 4 deletions

View file

@ -33,11 +33,14 @@ const TitleMap = {
windows_glazing: "Window Glazing",
// Solar pv
solar_pv: "Solar Photovoltaic Panels System",
// Heating
heating: "Heating Systems",
// Hot water tank
hot_water_tank_insulation: "Hot Water Tank Insulation",
// Default options when no recommendation is selected
wall_insulation: "Wall Insulation",
floor_insulation: "Floor Insulation",
roof_insulation: "Roof Insulation",
heating: "Heating Systems",
};
type RecommendationCardProps = {

View file

@ -107,6 +107,11 @@ export default function RecommendationContainer({
(rec: Recommendation) => rec.default
) || emptyImpactState;
const defaultHotWaterTankRecommendations =
categorizedRecommendations.hot_water_tank_insulation?.find(
(rec: Recommendation) => rec.default
) || emptyImpactState;
const [costMap, setCostMap] = useState<RecommendationMetricMap>({
wall_insulation: defaultWallsRecommendations.estimatedCost || 0,
floor_insulation: defaultFloorRecommendations.estimatedCost || 0,
@ -118,6 +123,8 @@ export default function RecommendationContainer({
windows_glazing: defaultWindowsRecommendations.estimatedCost || 0,
solar_pv: defaultSolarRecommendations.estimatedCost || 0,
heating: defaultHeatingRecommendations.estimatedCost || 0,
hot_water_tank_insulation:
defaultHotWaterTankRecommendations.estimatedCost || 0,
});
const [sapMap, setSapMap] = useState<RecommendationMetricMap>({
@ -130,6 +137,8 @@ export default function RecommendationContainer({
windows_glazing: defaultWindowsRecommendations.sapPoints || 0,
solar_pv: defaultSolarRecommendations.sapPoints || 0,
heating: defaultHeatingRecommendations.sapPoints || 0,
hot_water_tank_insulation:
defaultHotWaterTankRecommendations.sapPoints || 0,
});
const [labourDaysMap, setLabourDaysMap] = useState<RecommendationMetricMap>({
@ -142,6 +151,8 @@ export default function RecommendationContainer({
windows_glazing: defaultWindowsRecommendations.labourDays || 0,
solar_pv: defaultSolarRecommendations.labourDays || 0,
heating: defaultHeatingRecommendations.labourDays || 0,
hot_water_tank_insulation:
defaultHotWaterTankRecommendations.labourDays || 0,
});
const [co2SavingsMap, setCo2SavingsMap] = useState<RecommendationMetricMap>({
@ -157,6 +168,8 @@ export default function RecommendationContainer({
windows_glazing: defaultWindowsRecommendations.co2EquivalentSavings || 0,
solar_pv: defaultSolarRecommendations.co2EquivalentSavings || 0,
heating: defaultHeatingRecommendations.co2EquivalentSavings || 0,
hot_water_tank_insulation:
defaultHotWaterTankRecommendations.co2EquivalentSavings || 0,
});
const [energyCostSavingsMap, setEnergyCostSavingsMap] =
@ -173,6 +186,8 @@ export default function RecommendationContainer({
windows_glazing: defaultWindowsRecommendations.energyCostSavings || 0,
solar_pv: defaultSolarRecommendations.energyCostSavings || 0,
heating: defaultHeatingRecommendations.energyCostSavings || 0,
hot_water_tank_insulation:
defaultHotWaterTankRecommendations.energyCostSavings || 0,
});
const [heatDemandMap, setHeatDemandMap] = useState<RecommendationMetricMap>({
@ -187,6 +202,8 @@ export default function RecommendationContainer({
windows_glazing: defaultWindowsRecommendations.adjustedHeatDemand || 0,
solar_pv: defaultSolarRecommendations.adjustedHeatDemand || 0,
heating: defaultHeatingRecommendations.adjustedHeatDemand || 0,
hot_water_tank_insulation:
defaultHotWaterTankRecommendations.adjustedHeatDemand || 0,
});
const [totalEstimatedCost, setTotalEstimatedCost] = useState(

View file

@ -120,7 +120,8 @@ export type RecommendationType =
| "wall_insulation"
| "floor_insulation"
| "solar_pv"
| "heating";
| "heating"
| "hot_water_tank_insulation";
export type UnnestedRecommendation = {
quantity: number;

View file

@ -8,4 +8,5 @@ export interface RecommendationMetricMap {
windows_glazing: number;
solar_pv: number;
heating: number;
hot_water_tank_insulation: number;
}

View file

@ -1,8 +1,8 @@
{
"compilerOptions": {
"allowSyntheticDefaultImports": true,
// "target": "es5",
"target": "ESNext",
"target": "es5",
// "target": "ESNext",
"lib": ["dom", "dom.iterable", "esnext"],
"allowJs": true,
"skipLibCheck": true,