X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Fcharging-station%2Focpp%2FOCPPServiceUtils.ts;h=16d83ee99c6be12b4bc56cadc6e65d83830cbd03;hb=a37fc6dc8267e22b2b2d35773525980b81f014e8;hp=f18db3e01b17b0c55b375d6203dd84908fba34dc;hpb=5edd8ba0f8978cfb3ca9d80f299d9748c6c5970e;p=e-mobility-charging-stations-simulator.git diff --git a/src/charging-station/ocpp/OCPPServiceUtils.ts b/src/charging-station/ocpp/OCPPServiceUtils.ts index f18db3e0..16d83ee9 100644 --- a/src/charging-station/ocpp/OCPPServiceUtils.ts +++ b/src/charging-station/ocpp/OCPPServiceUtils.ts @@ -15,7 +15,6 @@ import { ErrorType, FileType, IncomingRequestCommand, - type JsonObject, type JsonType, MessageTrigger, MessageType, @@ -145,10 +144,14 @@ export class OCPPServiceUtils { public static convertDateToISOString(obj: T): void { for (const key in obj) { - if (obj[key] instanceof Date) { - (obj as JsonObject)[key] = (obj[key] as Date).toISOString(); - } else if (obj[key] !== null && typeof obj[key] === 'object') { - OCPPServiceUtils.convertDateToISOString(obj[key] as T); + // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion + if (obj![key] instanceof Date) { + // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion + (obj![key] as string) = (obj![key] as Date).toISOString(); + // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion + } else if (obj![key] !== null && typeof obj![key] === 'object') { + // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion + OCPPServiceUtils.convertDateToISOString(obj![key] as T); } } } @@ -192,7 +195,7 @@ export class OCPPServiceUtils { connectorId: number, status: ConnectorStatusEnum, evseId?: number, - options: { send: boolean } = { send: true }, + options?: { send: boolean }, ) { options = { send: true, ...options }; if (options.send) { @@ -211,7 +214,7 @@ export class OCPPServiceUtils { ), ); } - chargingStation.getConnectorStatus(connectorId).status = status; + chargingStation.getConnectorStatus(connectorId)!.status = status; } protected static checkConnectorStatusTransition( @@ -219,7 +222,7 @@ export class OCPPServiceUtils { connectorId: number, status: ConnectorStatusEnum, ): boolean { - const fromStatus = chargingStation.getConnectorStatus(connectorId).status; + const fromStatus = chargingStation.getConnectorStatus(connectorId)!.status; let transitionAllowed = false; switch (chargingStation.stationInfo.ocppVersion) { case OCPPVersion.VERSION_16: @@ -262,7 +265,7 @@ export class OCPPServiceUtils { `${chargingStation.logPrefix()} OCPP ${ chargingStation.stationInfo.ocppVersion } connector id ${connectorId} status transition from '${ - chargingStation.getConnectorStatus(connectorId).status + chargingStation.getConnectorStatus(connectorId)!.status }' to '${status}' is not allowed`, ); } @@ -286,6 +289,7 @@ export class OCPPServiceUtils { OCPPServiceUtils.logPrefix(ocppVersion, moduleName, methodName), { throwError: false }, ); + return {} as JSONSchemaType; } } @@ -317,7 +321,7 @@ export class OCPPServiceUtils { return; } const sampledValueTemplates: SampledValueTemplate[] = - chargingStation.getConnectorStatus(connectorId)?.MeterValues; + chargingStation.getConnectorStatus(connectorId)!.MeterValues; for ( let index = 0; isNotEmptyArray(sampledValueTemplates) === true && index < sampledValueTemplates.length; @@ -388,8 +392,8 @@ export class OCPPServiceUtils { const parsedInt = parseInt(value); const numberValue = isNaN(parsedInt) ? Infinity : parsedInt; return options?.limitationEnabled - ? Math.min(numberValue * options.unitMultiplier, limit) - : numberValue * options.unitMultiplier; + ? Math.min(numberValue * options.unitMultiplier!, limit) + : numberValue * options.unitMultiplier!; } private static logPrefix = (