Skip to content

Commit

Permalink
let users continue to delete sole energy source in custom opps
Browse files Browse the repository at this point in the history
  • Loading branch information
nbintertech committed May 17, 2024
1 parent 94644d4 commit 5c4b8a2
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 31 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,16 @@ export class AssessmentOpportunityService {
let totalCostSavings: number = 0;
let baselineElectricityResult: { energyUse: number, energyCost: number, numItems: number };
let modificationElectricityResult: { energyUse: number, energyCost: number, numItems: number };
let electricityResults: AssessmentOpportunityResult;
let electricityResults: AssessmentOpportunityResult = {
baselineEnergyUse: 0,
baselineEnergyCost: 0,
baselineItems: 0,
modificationEnergyUse: 0,
modificationEnergyCost: 0,
modificationItems: 0,
energySavings: 0,
energyCostSavings: 0
};

let baselineGasResult: { energyUse: number, energyCost: number, numItems: number };
let modificationGasResult: { energyUse: number, energyCost: number, numItems: number };
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -358,7 +358,6 @@ export class OpportunitySummaryService {
getAssessmentOpportunitySummary(oppSheet: AssessmentOpportunity, settings: Settings): OpportunitySummary {
let mixedIndividualSummaries: Array<OpportunitySummary> = new Array<OpportunitySummary>();
let oppSheetResults: OpportunitySheetResults = this.assessmentOpportunityService.getResults(oppSheet, settings);
let numEnergyTypes: number = 0;
let totalEnergySavings: number = 0;
let energyTypeLabel: string;
let opportunityMetaData: OpportunityMetaData = {
Expand All @@ -368,17 +367,9 @@ export class OpportunitySummaryService {
owner: oppSheet.businessUnits,
opportunityCost: oppSheet.opportunityCost
}

let treasureHuntOpportunityResults: TreasureHuntOpportunityResults;
for (let energyResultProperty in oppSheetResults) {
let isEnergyResultType: boolean = !['totalEnergySavings', 'totalCostSavings', 'totalImplementationCost'].includes(energyResultProperty);
if (oppSheetResults[energyResultProperty] && isEnergyResultType) {
if (oppSheetResults[energyResultProperty].baselineItems != 0 || oppSheetResults[energyResultProperty].modificationItems != 0 && oppSheetResults[energyResultProperty].baselineItems != undefined) {
numEnergyTypes += 1;
}
}
}

let numEnergyTypes: number = this.getNumberOfEnergyTypes(oppSheetResults);

if (oppSheetResults.electricityResults && (oppSheetResults.electricityResults.baselineItems != 0 || oppSheetResults.electricityResults.modificationItems != 0)) {
energyTypeLabel = 'Electricity';
totalEnergySavings = totalEnergySavings + oppSheetResults.electricityResults.energySavings;
Expand Down Expand Up @@ -439,12 +430,9 @@ export class OpportunitySummaryService {
treasureHuntOpportunityResults.modificationCost = 0;
oppSummary = this.getNewOpportunitySummary(opportunityMetaData, treasureHuntOpportunityResults, mixedIndividualSummaries);
} else {
//no energy savings
treasureHuntOpportunityResults.utilityType = '';
treasureHuntOpportunityResults.costSavings = 0;
treasureHuntOpportunityResults.energySavings = 0;
treasureHuntOpportunityResults.baselineCost = 0;
treasureHuntOpportunityResults.modificationCost = 0;
if (!treasureHuntOpportunityResults) {
treasureHuntOpportunityResults = this.setResultsFromOppSheet(oppSheetResults.electricityResults, energyTypeLabel);
}
opportunityMetaData.opportunityCost = undefined;
oppSummary = this.getNewOpportunitySummary(opportunityMetaData, treasureHuntOpportunityResults);
}
Expand All @@ -456,7 +444,6 @@ export class OpportunitySummaryService {
let mixedIndividualSummaries: Array<OpportunitySummary> = new Array<OpportunitySummary>();
let oppSheetResults: OpportunitySheetResults = this.opportunitySheetService.getResults(oppSheet, settings);

let numEnergyTypes: number = 0;
let totalEnergySavings: number = 0;
let energyTypeLabel: string;
let opportunityMetaData: OpportunityMetaData = {
Expand All @@ -467,12 +454,8 @@ export class OpportunitySummaryService {
opportunityCost: oppSheet.opportunityCost
}
let treasureHuntOpportunityResults: TreasureHuntOpportunityResults;
let numEnergyTypes = this.getNumberOfEnergyTypes(oppSheetResults);

for (let key in oppSheetResults) {
if (oppSheetResults[key].baselineItems != 0 || oppSheetResults[key].modificationItems != 0 && oppSheetResults[key].baselineItems != undefined) {
numEnergyTypes = numEnergyTypes + 1;
}
}
//electricity
if (oppSheetResults.electricityResults.baselineItems != 0 || oppSheetResults.electricityResults.modificationItems != 0) {
energyTypeLabel = 'Electricity';
Expand Down Expand Up @@ -542,11 +525,9 @@ export class OpportunitySummaryService {
oppSummary = this.getNewOpportunitySummary(opportunityMetaData, treasureHuntOpportunityResults, mixedIndividualSummaries);
} else {
//no energy savings
treasureHuntOpportunityResults.utilityType = 'None';
treasureHuntOpportunityResults.costSavings = 0;
treasureHuntOpportunityResults.energySavings = 0;
treasureHuntOpportunityResults.baselineCost = 0;
treasureHuntOpportunityResults.modificationCost = 0;
if (!treasureHuntOpportunityResults) {
treasureHuntOpportunityResults = this.setResultsFromOppSheet(oppSheetResults.electricityResults, energyTypeLabel);
}
opportunityMetaData.opportunityCost = undefined;
oppSummary = this.getNewOpportunitySummary(opportunityMetaData, treasureHuntOpportunityResults);
}
Expand All @@ -559,7 +540,7 @@ export class OpportunitySummaryService {
energySavings: 0,
baselineCost: 0,
modificationCost: 0,
utilityType: '',
utilityType: 'None',
}

treasureHuntOpportunityResults.baselineCost = sheetResults.baselineEnergyCost;
Expand All @@ -581,8 +562,21 @@ export class OpportunitySummaryService {
return
}

getNumberOfEnergyTypes(oppSheetResults: OpportunitySheetResults) {
let numEnergyTypes = 0;
for (let energyResultProperty in oppSheetResults) {
let isEnergyResultType: boolean = !['totalEnergySavings', 'totalCostSavings', 'totalImplementationCost'].includes(energyResultProperty);
if (oppSheetResults[energyResultProperty] && isEnergyResultType) {
if (oppSheetResults[energyResultProperty].baselineItems != 0 || oppSheetResults[energyResultProperty].modificationItems != 0 && oppSheetResults[energyResultProperty].baselineItems != undefined) {
numEnergyTypes += 1;
}
}
}
return numEnergyTypes;
}
}


export interface OpportunityMetaData {
name: string,
team: string,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -218,7 +218,7 @@ export class EffortSavingsChartComponent implements OnInit {

buildTrace() {
this.treasureHuntResults.opportunitySummaries.forEach((summary, index) => {
if (summary.opportunityCost.implementationEffort) {
if (summary.opportunityCost && summary.opportunityCost.implementationEffort) {
let currentColor = graphColors[index % graphColors.length];
let trace: TraceData = {
x: [summary.payback],
Expand Down

0 comments on commit 5c4b8a2

Please sign in to comment.