repositories
/
e-mobility-charging-stations-simulator.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
feat: ensure measurand min value are taken into account
[e-mobility-charging-stations-simulator.git]
/
src
/
charging-station
/
ocpp
/
OCPPServiceUtils.ts
diff --git
a/src/charging-station/ocpp/OCPPServiceUtils.ts
b/src/charging-station/ocpp/OCPPServiceUtils.ts
index 8036079a4b2031c67613bf69ec5744e59cd9ae65..46603f0bffeb6c34bd70b8b9c3c73a6cc52f4489 100644
(file)
--- a/
src/charging-station/ocpp/OCPPServiceUtils.ts
+++ b/
src/charging-station/ocpp/OCPPServiceUtils.ts
@@
-41,6
+41,7
@@
import {
isNotEmptyString,
logPrefix,
logger,
isNotEmptyString,
logPrefix,
logger,
+ max,
min,
} from '../../utils';
min,
} from '../../utils';
@@
-418,22
+419,26
@@
export class OCPPServiceUtils {
protected static getLimitFromSampledValueTemplateCustomValue(
value: string,
protected static getLimitFromSampledValueTemplateCustomValue(
value: string,
- limit: number,
- options?: { limitationEnabled?: boolean; unitMultiplier?: number; defaultValue?: number },
+ maxLimit: number,
+ minLimit: number,
+ options?: { limitationEnabled?: boolean; fallbackValue?: number; unitMultiplier?: number },
): number {
options = {
...{
limitationEnabled: true,
unitMultiplier: 1,
): number {
options = {
...{
limitationEnabled: true,
unitMultiplier: 1,
-
default
Value: 0,
+
fallback
Value: 0,
},
...options,
};
const parsedValue = parseInt(value);
if (options?.limitationEnabled) {
},
...options,
};
const parsedValue = parseInt(value);
if (options?.limitationEnabled) {
- return min((!isNaN(parsedValue) ? parsedValue : Infinity) * options.unitMultiplier!, limit);
+ return max(
+ min((!isNaN(parsedValue) ? parsedValue : Infinity) * options.unitMultiplier!, maxLimit),
+ minLimit,
+ );
}
}
- return (!isNaN(parsedValue) ? parsedValue : options.
default
Value!) * options.unitMultiplier!;
+ return (!isNaN(parsedValue) ? parsedValue : options.
fallback
Value!) * options.unitMultiplier!;
}
private static isIdTagLocalAuthorized(chargingStation: ChargingStation, idTag: string): boolean {
}
private static isIdTagLocalAuthorized(chargingStation: ChargingStation, idTag: string): boolean {