- private setStartConnectorStatus(connectorId: number): void {
- this.connectorsStatus.get(connectorId)!.skippedConsecutiveTransactions = 0;
- const previousRunDuration =
- this.connectorsStatus.get(connectorId)?.startDate &&
- this.connectorsStatus.get(connectorId)?.lastRunDate
- ? this.connectorsStatus.get(connectorId)!.lastRunDate!.getTime() -
- this.connectorsStatus.get(connectorId)!.startDate!.getTime()
- : 0;
- this.connectorsStatus.get(connectorId)!.startDate = new Date();
- this.connectorsStatus.get(connectorId)!.stopDate = new Date(
- this.connectorsStatus.get(connectorId)!.startDate!.getTime() +
- hoursToMilliseconds(
- this.chargingStation.getAutomaticTransactionGeneratorConfiguration().stopAfterHours,
- ) -
- previousRunDuration,
- );
- this.connectorsStatus.get(connectorId)!.start = true;
+ private setStartConnectorStatus (
+ connectorId: number,
+ stopAbsoluteDuration = this.chargingStation.getAutomaticTransactionGeneratorConfiguration()
+ ?.stopAbsoluteDuration
+ ): void {
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
+ this.connectorsStatus.get(connectorId)!.startDate = new Date()
+ if (
+ stopAbsoluteDuration === false ||
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
+ !isValidDate(this.connectorsStatus.get(connectorId)!.stopDate)
+ ) {
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
+ this.connectorsStatus.get(connectorId)!.stopDate = new Date(
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
+ this.connectorsStatus.get(connectorId)!.startDate!.getTime() +
+ hoursToMilliseconds(
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
+ this.chargingStation.getAutomaticTransactionGeneratorConfiguration()!.stopAfterHours
+ )
+ )
+ }
+ delete this.connectorsStatus.get(connectorId)?.stoppedDate
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
+ this.connectorsStatus.get(connectorId)!.skippedConsecutiveTransactions = 0
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
+ this.connectorsStatus.get(connectorId)!.start = true