diff --git a/sge-frontend/src/views/DataCenterManagement.js b/sge-frontend/src/views/DataCenterManagement.js index 5db4a64..4cbe2c1 100644 --- a/sge-frontend/src/views/DataCenterManagement.js +++ b/sge-frontend/src/views/DataCenterManagement.js @@ -428,6 +428,23 @@ const DataCenterManagement = () => { setSelectedSector(row.sector?.id); setSelectedSubSector(row.subSector?.id); + // If there are existing emission sources, fetch consumption units for each + if ( + row.dataCenterEmissionSources && + row.dataCenterEmissionSources.length > 0 + ) { + row.dataCenterEmissionSources.forEach((dces) => { + if (dces.emissionSource && dces.emissionSource.id) { + dispatch( + getConsuptionUnits({ + id: dces.emissionSource.id, + sector: row.sector?.id, + }) + ); + } + }); + } + // Only set map position if we have both address and valid coordinates setMapPosition( row.address && row.latitude && row.longitude @@ -1029,189 +1046,232 @@ const DataCenterManagement = () => { -
- - Configure emission sources for this data center. At least - one emission source with consumption unit is required. - +
+
+ + Configure emission sources for this data center. At + least one emission source with consumption unit is + required. + + +
{selectedDataCenter.dataCenterEmissionSources.map( (source, index) => ( - - - - - option.value === source.consuptionUnitId - )} - onChange={(option) => { - const updatedSources = [ - ...selectedDataCenter.dataCenterEmissionSources, - ]; - updatedSources[index] = { - ...updatedSources[index], - consuptionUnitId: option?.value, - }; - setSelectedDataCenter({ - ...selectedDataCenter, - dataCenterEmissionSources: updatedSources, - }); - }} - isClearable - filterOption={customFilterForSelect} - isDisabled={!source.emissionSourceId} - styles={{ - placeholder: (provided) => ({ - ...provided, - color: "#6e6b7b", - }), - }} - menuPlacement="top" - /> - - - -
- -
- -
+ isClearable + filterOption={customFilterForSelect} + isDisabled={!source.emissionSourceId} + styles={{ + placeholder: (provided) => ({ + ...provided, + color: "#6e6b7b", + }), + }} + menuPlacement="auto" + /> + + + + +
+
+ + {source.isDefault && ( + + Default Source + + )} +
+ +
+ +
+
) )} - +
+ +