From c609d2637964863481dc205a8b06d44a68ea0aa1 Mon Sep 17 00:00:00 2001 From: MichaelPesce Date: Thu, 13 Jul 2023 09:16:29 -0500 Subject: [PATCH] fixed value/indexes for infrastructure buildout overrides; the value becomes one of the indexes and the underlying value is 1 --- .../components/OverrideTable/OverrideTable.js | 10 +++++-- .../OverrideTable/OverrideTableRows.js | 28 ++++++++++++------- 2 files changed, 26 insertions(+), 12 deletions(-) diff --git a/electron/ui/src/components/OverrideTable/OverrideTable.js b/electron/ui/src/components/OverrideTable/OverrideTable.js index 53eee2d6..f2a2c70a 100644 --- a/electron/ui/src/components/OverrideTable/OverrideTable.js +++ b/electron/ui/src/components/OverrideTable/OverrideTable.js @@ -60,7 +60,8 @@ export default function OverrideTable(props) { if (!value[i].includes("-")) indexes.push(value[i]) } override_object.indexes=indexes - override_object.value="" + if(category ==="vb_y_overview_dict") override_object.value=1 + else override_object.value="" // console.log(override_object) let tempOverrideValues = {...scenario.override_values} if(Object.keys(tempOverrideValues[category]).includes(""+index)) { @@ -86,7 +87,12 @@ export default function OverrideTable(props) { *** */ if(inputType === "select") { - tempOverrideValues[category][idx].value = val + if(category ==="vb_y_overview_dict") { + if (tempOverrideValues[category][idx].indexes.length >=3) tempOverrideValues[category][idx].indexes[2] = (val) + else tempOverrideValues[category][idx].indexes.push(val) + } else { + tempOverrideValues[category][idx].value = val + } const tempScenario = {...scenario} tempScenario.override_values = tempOverrideValues updateScenario(tempScenario) diff --git a/electron/ui/src/components/OverrideTable/OverrideTableRows.js b/electron/ui/src/components/OverrideTable/OverrideTableRows.js index 37611c47..f299c31f 100644 --- a/electron/ui/src/components/OverrideTable/OverrideTableRows.js +++ b/electron/ui/src/components/OverrideTable/OverrideTableRows.js @@ -22,7 +22,6 @@ const OVERRIDE_PRESET_VALUES = { }, } - export default function OverrideTableRows(props) { const { category, @@ -153,7 +152,7 @@ function BinaryVariableRow(props) { } const [ displayValue, setDisplayValue ] = useState() const [ showData, setShowData ] = useState(false) - const [ overrideChecked, setOverrideChecked ] = useState(null) + const [ overrideChecked, setOverrideChecked ] = useState(false) const [ rowName, setRowName ] = useState("") const [ presetValues, setPresetValues ] = useState({}) const [ technology, setTechnology ] = useState(null) @@ -169,7 +168,14 @@ function BinaryVariableRow(props) { let preset_value_table = scenario.data_input.df_parameters[OVERRIDE_PRESET_VALUES[tempDisplayValue[0]].input_table] let preset_values = {} if(tempDisplayValue[0] === "Treatment Facility") { - let tempTechnology = tempDisplayValue[5] + // check for technology in override values. if found, use that. else, use the value from scenario + let tempTechnology + if (scenario.override_values[category][index] !== undefined) { + tempTechnology = scenario.override_values[category][index].indexes[1] + } else { + tempTechnology = tempDisplayValue[5] + } + let technologyNamesKey = "TreatmentCapacities" let technologies = scenario.data_input.df_parameters[OVERRIDE_PRESET_VALUES[tempDisplayValue[0]].input_table][technologyNamesKey] let len = technologies.length @@ -196,12 +202,6 @@ function BinaryVariableRow(props) { } } - - // let tempDisplayValue = [...value] - // setDisplayValue(tempDisplayValue) - // console.log('value is ') - // console.log(value) - setRowName(value[0]) setPresetValues(preset_values) setShowData(true) @@ -212,6 +212,12 @@ function BinaryVariableRow(props) { else if (!Object.keys(scenario.override_values[category]).includes(""+index) && overrideChecked) setOverrideChecked(false) }, [scenario]) + const getValueSelectValue = () => { + if (scenario.override_values[category][index] !== undefined) { + if(scenario.override_values[category][index].indexes.length>=3) return scenario.override_values[category][index].indexes[2] + else return "" + } else return "" + } const generateInfrastructureBuildoutValueOptions = (value, index) => { if (Object.keys(OVERRIDE_PRESET_VALUES).includes(value[0])) { @@ -229,7 +235,9 @@ function BinaryVariableRow(props) { labelId="" id="" name={`${index}::select`} - value={scenario.override_values[category][index] !== undefined ? scenario.override_values[category][index].value : ""} + // value={scenario.override_values[category][index] !== undefined ? scenario.override_values[category][index].value : ""} + // value={scenario.override_values[category][index].indexes.length>=3 ? scenario.override_values[category][index][2] : ""} + value={getValueSelectValue()} label="Value" onChange={handleInputOverrideValue} >