- // Add connector id 0
- let lastConnector = '0';
- for (lastConnector in stationInfo?.Connectors) {
- const connectorStatus = stationInfo?.Connectors[lastConnector];
- const lastConnectorId = Utils.convertToInt(lastConnector);
- if (
- lastConnectorId === 0 &&
- this.getUseConnectorId0(stationInfo) === true &&
- connectorStatus
- ) {
- this.checkStationInfoConnectorStatus(lastConnectorId, connectorStatus);
- this.connectors.set(
- lastConnectorId,
- Utils.cloneObject<ConnectorStatus>(connectorStatus)
- );
- this.getConnectorStatus(lastConnectorId).availability = AvailabilityType.Operative;
- if (Utils.isUndefined(this.getConnectorStatus(lastConnectorId)?.chargingProfiles)) {
- this.getConnectorStatus(lastConnectorId).chargingProfiles = [];
- }
- }
- }
- // Generate all connectors
- if ((stationInfo?.Connectors[0] ? templateMaxConnectors - 1 : templateMaxConnectors) > 0) {
- for (let index = 1; index <= configuredMaxConnectors; index++) {
- const randConnectorId = stationInfo?.randomConnectors
- ? Utils.getRandomInteger(Utils.convertToInt(lastConnector), 1)
- : index;
- const connectorStatus = stationInfo?.Connectors[randConnectorId.toString()];
- this.checkStationInfoConnectorStatus(randConnectorId, connectorStatus);
- this.connectors.set(index, Utils.cloneObject<ConnectorStatus>(connectorStatus));
- this.getConnectorStatus(index).availability = AvailabilityType.Operative;
- if (Utils.isUndefined(this.getConnectorStatus(index)?.chargingProfiles)) {
- this.getConnectorStatus(index).chargingProfiles = [];
+ if (templateMaxConnectors > 0) {
+ for (let connectorId = 0; connectorId <= configuredMaxConnectors; connectorId++) {
+ if (
+ connectorId === 0 &&
+ (!stationTemplate?.Connectors[connectorId] ||
+ this.getUseConnectorId0(stationTemplate) === false)
+ ) {
+ continue;