webapp: fix AC charger admin view
use InputElement where possible, which in particular fixes that the inputs of the second card were all in the same row.
This commit is contained in:
parent
a425be5a03
commit
c0cfdf04a8
@ -941,7 +941,8 @@
|
|||||||
"StopBatterySoCThreshold": "Laden bei SoC beenden",
|
"StopBatterySoCThreshold": "Laden bei SoC beenden",
|
||||||
"StopBatterySoCThresholdHint": "Zur Verlängerung der Akku-Lebensdauer kann der Ladevorgang bei einem bestimmten SoC gestoppt werden.\nHinweis: Manche LiFePO-Akkus müssen gelegentlich voll geladen werden, um die SoC-Anzeige akkurat zu halten.",
|
"StopBatterySoCThresholdHint": "Zur Verlängerung der Akku-Lebensdauer kann der Ladevorgang bei einem bestimmten SoC gestoppt werden.\nHinweis: Manche LiFePO-Akkus müssen gelegentlich voll geladen werden, um die SoC-Anzeige akkurat zu halten.",
|
||||||
"Seconds": "@:base.Seconds",
|
"Seconds": "@:base.Seconds",
|
||||||
"EnableEmergencyCharge": "Notfallladen: Batterie wird mit maximaler Leistung geladen wenn durch das Batterie BMS angefordert",
|
"EnableEmergencyCharge": "Notfallladen",
|
||||||
|
"EnableEmergencyChargeHint": "Batterie wird mit maximaler Leistung geladen wenn durch das Batterie BMS angefordert",
|
||||||
"targetPowerConsumption": "Angestrebter Netzbezug",
|
"targetPowerConsumption": "Angestrebter Netzbezug",
|
||||||
"targetPowerConsumptionHint": "Bei postiven Werten wird die eingestellte Leistung aus dem Stromnetz bezogen. Bei negativen Werten wird das Netzteil vorzeitig abgeschaltet."
|
"targetPowerConsumptionHint": "Bei postiven Werten wird die eingestellte Leistung aus dem Stromnetz bezogen. Bei negativen Werten wird das Netzteil vorzeitig abgeschaltet."
|
||||||
},
|
},
|
||||||
|
|||||||
@ -945,7 +945,8 @@
|
|||||||
"StopBatterySoCThreshold": "Stop charging at SoC",
|
"StopBatterySoCThreshold": "Stop charging at SoC",
|
||||||
"StopBatterySoCThresholdHint": "To prolong the battery's lifespan, charging can be stopped at a certain SoC level.\nHint: In order to keep the SoC reading accurate, some LiFePO cells must be charged to full capacity regularly.",
|
"StopBatterySoCThresholdHint": "To prolong the battery's lifespan, charging can be stopped at a certain SoC level.\nHint: In order to keep the SoC reading accurate, some LiFePO cells must be charged to full capacity regularly.",
|
||||||
"Seconds": "@:base.Seconds",
|
"Seconds": "@:base.Seconds",
|
||||||
"EnableEmergencyCharge": "Emergency charge. Battery charged with maximum power if requested by Battery BMS",
|
"EnableEmergencyCharge": "Emergency charge",
|
||||||
|
"EnableEmergencyChargeHint": "Battery charged with maximum power if requested by Battery BMS",
|
||||||
"targetPowerConsumption": "Target power consumption",
|
"targetPowerConsumption": "Target power consumption",
|
||||||
"targetPowerConsumptionHint": "Postitive values use grid power to charge the battery. Negative values result in early shutdown"
|
"targetPowerConsumptionHint": "Postitive values use grid power to charge the battery. Negative values result in early shutdown"
|
||||||
},
|
},
|
||||||
|
|||||||
@ -891,7 +891,8 @@
|
|||||||
"StopBatterySoCThreshold": "Stop charging at SoC",
|
"StopBatterySoCThreshold": "Stop charging at SoC",
|
||||||
"StopBatterySoCThresholdHint": "To prolong the battery's lifespan, charging can be stopped at a certain SoC level.\nHint: In order to keep the SoC reading accurate, some LiFePO cells must be charged to full capacity regularly.",
|
"StopBatterySoCThresholdHint": "To prolong the battery's lifespan, charging can be stopped at a certain SoC level.\nHint: In order to keep the SoC reading accurate, some LiFePO cells must be charged to full capacity regularly.",
|
||||||
"Seconds": "@:base.Seconds",
|
"Seconds": "@:base.Seconds",
|
||||||
"EnableEmergencyCharge": "Emergency charge. Battery charged with maximum power if requested by Battery BMS",
|
"EnableEmergencyCharge": "Emergency charge",
|
||||||
|
"EnableEmergencyChargeHint": "Battery charged with maximum power if requested by Battery BMS",
|
||||||
"targetPowerConsumption": "Target power consumption",
|
"targetPowerConsumption": "Target power consumption",
|
||||||
"targetPowerConsumptionHint": "Postitive values use grid power to charge the battery. Negative values result in early shutdown"
|
"targetPowerConsumptionHint": "Postitive values use grid power to charge the battery. Negative values result in early shutdown"
|
||||||
},
|
},
|
||||||
|
|||||||
@ -55,152 +55,98 @@
|
|||||||
|
|
||||||
<InputElement
|
<InputElement
|
||||||
:label="$t('acchargeradmin.EnableEmergencyCharge')"
|
:label="$t('acchargeradmin.EnableEmergencyCharge')"
|
||||||
|
:tooltip="$t('acchargeradmin.EnableEmergencyChargeHint')"
|
||||||
v-model="acChargerConfigList.emergency_charge_enabled"
|
v-model="acChargerConfigList.emergency_charge_enabled"
|
||||||
type="checkbox"
|
type="checkbox"
|
||||||
wide
|
wide
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
|
</CardElement>
|
||||||
|
|
||||||
<CardElement
|
<CardElement
|
||||||
:text="$t('acchargeradmin.Limits')"
|
:text="$t('acchargeradmin.Limits')"
|
||||||
textVariant="text-bg-primary"
|
textVariant="text-bg-primary"
|
||||||
add-space
|
add-space
|
||||||
v-if="acChargerConfigList.auto_power_enabled || acChargerConfigList.emergency_charge_enabled"
|
v-if="acChargerConfigList.auto_power_enabled || acChargerConfigList.emergency_charge_enabled"
|
||||||
>
|
>
|
||||||
<div class="row mb-3">
|
<InputElement
|
||||||
<label for="voltageLimit" class="col-sm-2 col-form-label"
|
:label="$t('acchargeradmin.VoltageLimit')"
|
||||||
>{{ $t('acchargeradmin.VoltageLimit') }}
|
:tooltip="$t('acchargeradmin.stopVoltageLimitHint')"
|
||||||
<BIconInfoCircle v-tooltip :title="$t('acchargeradmin.stopVoltageLimitHint')" />
|
v-model="acChargerConfigList.voltage_limit"
|
||||||
</label>
|
postfix="V"
|
||||||
<div class="col-sm-10">
|
type="number"
|
||||||
<div class="input-group">
|
wide
|
||||||
<input
|
required
|
||||||
type="number"
|
step="0.01"
|
||||||
step="0.01"
|
min="42"
|
||||||
class="form-control"
|
max="58.5"
|
||||||
id="voltageLimit"
|
/>
|
||||||
placeholder="42"
|
|
||||||
v-model="acChargerConfigList.voltage_limit"
|
<InputElement
|
||||||
aria-describedby="voltageLimitDescription"
|
:label="$t('acchargeradmin.enableVoltageLimit')"
|
||||||
min="42"
|
:tooltip="$t('acchargeradmin.enableVoltageLimitHint')"
|
||||||
max="58.5"
|
v-model="acChargerConfigList.enable_voltage_limit"
|
||||||
required
|
postfix="V"
|
||||||
/>
|
type="number"
|
||||||
<span class="input-group-text" id="voltageLimitDescription">V</span>
|
wide
|
||||||
</div>
|
required
|
||||||
</div>
|
step="0.01"
|
||||||
<label for="enableVoltageLimit" class="col-sm-2 col-form-label"
|
min="42"
|
||||||
>{{ $t('acchargeradmin.enableVoltageLimit') }}
|
max="58.5"
|
||||||
<BIconInfoCircle v-tooltip :title="$t('acchargeradmin.enableVoltageLimitHint')" />
|
/>
|
||||||
</label>
|
|
||||||
<div class="col-sm-10">
|
<InputElement
|
||||||
<div class="input-group">
|
:label="$t('acchargeradmin.lowerPowerLimit')"
|
||||||
<input
|
v-model="acChargerConfigList.lower_power_limit"
|
||||||
type="number"
|
postfix="W"
|
||||||
step="0.01"
|
type="number"
|
||||||
class="form-control"
|
wide
|
||||||
id="enableVoltageLimit"
|
required
|
||||||
placeholder="42"
|
min="50"
|
||||||
v-model="acChargerConfigList.enable_voltage_limit"
|
max="3000"
|
||||||
aria-describedby="enableVoltageLimitDescription"
|
/>
|
||||||
min="42"
|
|
||||||
max="58.5"
|
<InputElement
|
||||||
required
|
:label="$t('acchargeradmin.upperPowerLimit')"
|
||||||
/>
|
:tooltip="$t('acchargeradmin.upperPowerLimitHint')"
|
||||||
<span class="input-group-text" id="enableVoltageLimitDescription">V</span>
|
v-model="acChargerConfigList.upper_power_limit"
|
||||||
</div>
|
postfix="W"
|
||||||
</div>
|
type="number"
|
||||||
<label for="lowerPowerLimit" class="col-sm-2 col-form-label">{{
|
wide
|
||||||
$t('acchargeradmin.lowerPowerLimit')
|
required
|
||||||
}}</label>
|
min="100"
|
||||||
<div class="col-sm-10">
|
max="3000"
|
||||||
<div class="input-group">
|
/>
|
||||||
<input
|
|
||||||
type="number"
|
<InputElement
|
||||||
class="form-control"
|
:label="$t('acchargeradmin.targetPowerConsumption')"
|
||||||
id="lowerPowerLimit"
|
:tooltip="$t('acchargeradmin.targetPowerConsumptionHint')"
|
||||||
placeholder="150"
|
v-model="acChargerConfigList.target_power_consumption"
|
||||||
v-model="acChargerConfigList.lower_power_limit"
|
postfix="W"
|
||||||
aria-describedby="lowerPowerLimitDescription"
|
type="number"
|
||||||
min="50"
|
wide
|
||||||
max="3000"
|
required
|
||||||
required
|
/>
|
||||||
/>
|
</CardElement>
|
||||||
<span class="input-group-text" id="lowerPowerLimitDescription">W</span>
|
<CardElement
|
||||||
</div>
|
:text="$t('acchargeradmin.BatterySoCLimits')"
|
||||||
</div>
|
textVariant="text-bg-primary"
|
||||||
<label for="upperPowerLimit" class="col-sm-2 col-form-label"
|
add-space
|
||||||
>{{ $t('acchargeradmin.upperPowerLimit') }}
|
v-if="
|
||||||
<BIconInfoCircle v-tooltip :title="$t('acchargeradmin.upperPowerLimitHint')" />
|
acChargerConfigList.auto_power_enabled && acChargerConfigList.auto_power_batterysoc_limits_enabled
|
||||||
</label>
|
"
|
||||||
<div class="col-sm-10">
|
>
|
||||||
<div class="input-group">
|
<InputElement
|
||||||
<input
|
:label="$t('acchargeradmin.StopBatterySoCThreshold')"
|
||||||
type="number"
|
:tooltip="$t('acchargeradmin.StopBatterySoCThresholdHint')"
|
||||||
class="form-control"
|
v-model="acChargerConfigList.stop_batterysoc_threshold"
|
||||||
id="upperPowerLimit"
|
postfix="%"
|
||||||
placeholder="2000"
|
type="number"
|
||||||
v-model="acChargerConfigList.upper_power_limit"
|
wide
|
||||||
aria-describedby="upperPowerLimitDescription"
|
required
|
||||||
min="100"
|
min="2"
|
||||||
max="3000"
|
max="99"
|
||||||
required
|
/>
|
||||||
/>
|
|
||||||
<span class="input-group-text" id="upperPowerLimitDescription">W</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<label for="targetPowerConsumption" class="col-sm-2 col-form-label"
|
|
||||||
>{{ $t('acchargeradmin.targetPowerConsumption') }}
|
|
||||||
<BIconInfoCircle v-tooltip :title="$t('acchargeradmin.targetPowerConsumptionHint')" />
|
|
||||||
</label>
|
|
||||||
<div class="col-sm-10">
|
|
||||||
<div class="input-group">
|
|
||||||
<input
|
|
||||||
type="number"
|
|
||||||
class="form-control"
|
|
||||||
id="targetPowerConsumption"
|
|
||||||
placeholder="0"
|
|
||||||
v-model="acChargerConfigList.target_power_consumption"
|
|
||||||
aria-describedby="targetPowerConsumptionDescription"
|
|
||||||
required
|
|
||||||
/>
|
|
||||||
<span class="input-group-text" id="targetPowerConsumptionDescription">W</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</CardElement>
|
|
||||||
<CardElement
|
|
||||||
:text="$t('acchargeradmin.BatterySoCLimits')"
|
|
||||||
textVariant="text-bg-primary"
|
|
||||||
add-space
|
|
||||||
v-if="
|
|
||||||
acChargerConfigList.auto_power_enabled &&
|
|
||||||
acChargerConfigList.auto_power_batterysoc_limits_enabled
|
|
||||||
"
|
|
||||||
>
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="stopBatterySoCThreshold" class="col-sm-2 col-form-label"
|
|
||||||
>{{ $t('acchargeradmin.StopBatterySoCThreshold') }}
|
|
||||||
<BIconInfoCircle v-tooltip :title="$t('acchargeradmin.StopBatterySoCThresholdHint')" />
|
|
||||||
</label>
|
|
||||||
<div class="col-sm-10">
|
|
||||||
<div class="input-group">
|
|
||||||
<input
|
|
||||||
type="number"
|
|
||||||
class="form-control"
|
|
||||||
id="stopBatterySoCThreshold"
|
|
||||||
placeholder="95"
|
|
||||||
v-model="acChargerConfigList.stop_batterysoc_threshold"
|
|
||||||
aria-describedby="stopBatterySoCThresholdDescription"
|
|
||||||
min="2"
|
|
||||||
max="99"
|
|
||||||
required
|
|
||||||
/>
|
|
||||||
<span class="input-group-text" id="stopBatterySoCThresholdDescription">%</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</CardElement>
|
|
||||||
</CardElement>
|
</CardElement>
|
||||||
|
|
||||||
<FormFooter @reload="getChargerConfig" />
|
<FormFooter @reload="getChargerConfig" />
|
||||||
@ -214,7 +160,6 @@ import BootstrapAlert from '@/components/BootstrapAlert.vue';
|
|||||||
import CardElement from '@/components/CardElement.vue';
|
import CardElement from '@/components/CardElement.vue';
|
||||||
import FormFooter from '@/components/FormFooter.vue';
|
import FormFooter from '@/components/FormFooter.vue';
|
||||||
import InputElement from '@/components/InputElement.vue';
|
import InputElement from '@/components/InputElement.vue';
|
||||||
import { BIconInfoCircle } from 'bootstrap-icons-vue';
|
|
||||||
import type { AcChargerConfig } from '@/types/AcChargerConfig';
|
import type { AcChargerConfig } from '@/types/AcChargerConfig';
|
||||||
import { authHeader, handleResponse } from '@/utils/authentication';
|
import { authHeader, handleResponse } from '@/utils/authentication';
|
||||||
import { defineComponent } from 'vue';
|
import { defineComponent } from 'vue';
|
||||||
@ -226,7 +171,6 @@ export default defineComponent({
|
|||||||
CardElement,
|
CardElement,
|
||||||
FormFooter,
|
FormFooter,
|
||||||
InputElement,
|
InputElement,
|
||||||
BIconInfoCircle,
|
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user