Skip to content

Commit

Permalink
Merge pull request #2313 from sap-labs-france/master-qa
Browse files Browse the repository at this point in the history
Merge master-qa
  • Loading branch information
LucasBrazi06 authored Mar 22, 2021
2 parents 3dec179 + 301c233 commit 7c37655
Show file tree
Hide file tree
Showing 36 changed files with 1,439 additions and 270 deletions.
38 changes: 19 additions & 19 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 5 additions & 5 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "ev-dashboard",
"description": "Dashboard for Electric Vehicle charging station",
"homepage": "https://github.com/LucasBrazi06/ev-dashboard",
"version": "2.3.7",
"version": "2.4.53",
"engines": {
"npm": "6.x.x."
},
Expand Down Expand Up @@ -104,8 +104,8 @@
"ngx-moment": "^5.0.0",
"popper.js": "^1.16.1",
"rxjs": "~6.6.3",
"socket.io-client": "^3.1.1",
"sweetalert2": "^10.14.1",
"socket.io-client": "^3.1.2",
"sweetalert2": "^10.15.5",
"tslib": "^2.1.0",
"zone.js": "~0.10.3"
},
Expand All @@ -118,14 +118,14 @@
"@angular/cli": "~11.2.0",
"@angular/compiler-cli": "~11.2.0",
"@types/bootstrap": "^5.0.5",
"@types/chart.js": "^2.9.30",
"@types/chart.js": "^2.9.31",
"@types/chartist": "^0.11.0",
"@types/file-saver": "^2.0.1",
"@types/jasmine": "~3.6.3",
"@types/jquery": "^3.5.5",
"@types/mocha": "^8.2.0",
"@types/moment-duration-format": "^2.2.2",
"@types/node": "^14.14.28",
"@types/node": "^14.14.35",
"codeceptjs": "^3.0.5",
"codelyzer": "^6.0.1",
"cross-env": "^7.0.3",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ import { DialogService } from '../../../services/dialog.service';
import { LocaleService } from '../../../services/locale.service';
import { MessageService } from '../../../services/message.service';
import { SpinnerService } from '../../../services/spinner.service';
import { ChargingStation } from '../../../types/ChargingStation';
import { ChargePoint, ChargingStation } from '../../../types/ChargingStation';
import { KeyValue, RestResponse } from '../../../types/GlobalType';
import { HTTPAuthError, HTTPError } from '../../../types/HTTPError';
import { Utils } from '../../../utils/Utils';
Expand Down Expand Up @@ -97,8 +97,12 @@ export class ChargingStationComponent implements OnInit {
public saveChargingStation(chargingStation: ChargingStation) {
// Clone
const chargingStationToSave = Utils.cloneObject(chargingStation) as ChargingStation;
// Do not save charge point
delete chargingStationToSave.chargePoints;
if (!chargingStationToSave.manualConfiguration) {
// Do not save charge point
delete chargingStationToSave.chargePoints;
} else {
this.adjustChargePoints(chargingStationToSave);
}
// Save
this.spinnerService.show();
this.centralServerService.updateChargingStationParams(chargingStationToSave).subscribe((response) => {
Expand All @@ -119,6 +123,9 @@ export class ChargingStationComponent implements OnInit {
case HTTPError.THREE_PHASE_CHARGER_ON_SINGLE_PHASE_SITE_AREA:
this.messageService.showErrorMessage('chargers.change_config_phase_error');
break;
case HTTPError.CHARGE_POINT_NOT_VALID:
this.messageService.showErrorMessage('chargers.charge_point_connectors_error');
break;
default:
Utils.handleHttpError(error, this.router, this.messageService,
this.centralServerService, 'chargers.change_config_error');
Expand All @@ -140,4 +147,24 @@ export class ChargingStationComponent implements OnInit {
Utils.checkAndSaveAndCloseDialog(this.formGroup, this.dialogService, this.translateService,
this.saveChargingStation.bind(this), this.closeDialog.bind(this));
}

private adjustChargePoints(chargingStation: ChargingStation) {
for (const chargePoint of chargingStation.chargePoints) {
chargePoint.amperage = 0;
chargePoint.power = 0;
for (const connectorID of chargePoint.connectorIDs) {
const connector = Utils.getConnectorFromID(chargingStation, connectorID);
if (!chargePoint.sharePowerToAllConnectors) {
chargePoint.amperage += connector.amperage;
chargePoint.power += connector.power;
} else {
chargePoint.amperage = connector.amperage;
chargePoint.power = connector.power;
}
chargePoint.numberOfConnectedPhase = connector.numberOfConnectedPhase;
chargePoint.currentType = connector.currentType;
chargePoint.voltage = connector.voltage;
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -10,25 +10,25 @@ <h4 class="card-title text-left">
</h4>
</div>
<div class="card-body">
<div class="row text-left">
<div class="col-md-3" *ngIf="efficiency?.value">
<div class="d-flex flex-row text-left">
<div class="col-md-3" *ngIf="efficiency?.value || manualConfiguration">
<mat-form-field>
<input matInput placeholder="{{'chargers.efficiency' | translate}}" [formControl]="efficiency"
[readOnly]="!isAdmin" />
<mat-error *ngIf="efficiency?.invalid">{{'chargers.invalid_efficiency' | translate}}</mat-error>
</mat-form-field>
</div>
<div class="col-md-3" *ngIf="cannotChargeInParallel?.value">
<div class="flex-fill" *ngIf="cannotChargeInParallel?.value || manualConfiguration">
<mat-checkbox [formControl]="cannotChargeInParallel">
{{'chargers.cant_charge_in_parallel' | translate}}
</mat-checkbox>
</div>
<div class="col-md-3" *ngIf="sharePowerToAllConnectors?.value">
<div class="flex-fill" *ngIf="sharePowerToAllConnectors?.value || manualConfiguration">
<mat-checkbox [formControl]="sharePowerToAllConnectors">
{{'chargers.share_power_to_all_connectors' | translate}}
</mat-checkbox>
</div>
<div class="col-md-3" *ngIf="excludeFromPowerLimitation?.value">
<div class="flex-fill"*ngIf="excludeFromPowerLimitation?.value || manualConfiguration">
<mat-checkbox [formControl]="excludeFromPowerLimitation">
{{'chargers.exclude_from_power_limitation' | translate}}
</mat-checkbox>
Expand All @@ -38,7 +38,7 @@ <h4 class="card-title text-left">
<div class="col-md-6" *ngFor="let connectorID of chargePoint?.connectorIDs">
<app-charging-station-connector [chargingStation]="chargingStation" [chargePoint]="chargePoint"
[connector]="chargingStation?.connectors[connectorID - 1]" [formConnectorsArray]="formConnectorsArray"
[isAdmin]="isAdmin" (connectorChanged)="connectorChanged()"></app-charging-station-connector>
[isAdmin]="isAdmin" (connectorChanged)="connectorChanged()" [manualConfiguration]="manualConfiguration"></app-charging-station-connector>
</div>
</div>
</div>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ export class ChargingStationChargePointComponent implements OnInit, OnChanges {
@Input() public formChargePointsArray: FormArray;
@Input() public formConnectorsArray: FormArray;
@Input() public isAdmin!: boolean;
@Input() public manualConfiguration!: boolean;
@Output() public chargePointChanged = new EventEmitter<any>();

public connectedPhaseMap = [
Expand All @@ -36,6 +37,8 @@ export class ChargingStationChargePointComponent implements OnInit, OnChanges {
public ngOnInit() {
// Init charge point
this.formChargePointGroup = new FormGroup({
chargePointID: new FormControl(this.chargePoint.chargePointID),
ocppParamForPowerLimitation: new FormControl(this.chargePoint.ocppParamForPowerLimitation),
currentType: new FormControl(CurrentType.AC,
Validators.compose([
])
Expand Down Expand Up @@ -96,7 +99,6 @@ export class ChargingStationChargePointComponent implements OnInit, OnChanges {
this.power = this.formChargePointGroup.controls['power'];
this.efficiency = this.formChargePointGroup.controls['efficiency'];
this.connectorIDs = this.formChargePointGroup.controls['connectorIDs'];
this.formChargePointsArray.disable();
this.loadChargePoint();
}

Expand All @@ -118,6 +120,11 @@ export class ChargingStationChargePointComponent implements OnInit, OnChanges {
this.efficiency.setValue(this.chargePoint.efficiency);
this.connectorIDs.setValue(this.chargePoint.connectorIDs);
}
if (this.manualConfiguration) {
this.formChargePointsArray.enable();
} else {
this.formChargePointsArray.disable();
}
}

public numberOfConnectedPhaseChanged() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -77,20 +77,26 @@
{{'chargers.force_inactive' | translate}}
</mat-checkbox>
</div>
<div
class="col-md-3 text-left form-group">
<mat-checkbox [formControl]="manualConfiguration" (change)="manualConfigurationChanged($event.checked)">
{{'chargers.manual_configuration' | translate}}
</mat-checkbox>
</div>
</div>
<div class="row charging-station-connector-component"
*ngIf="chargingStation?.chargePoints?.length > 0; else chargingStationWithNoChargePoints">
<div class="col-md-12" *ngFor="let chargePoint of chargingStation.chargePoints">
<app-charging-station-charge-point [chargingStation]="chargingStation" [chargePoint]="chargePoint"
[formChargePointsArray]="chargePoints" [formConnectorsArray]="connectors" [isAdmin]="isAdmin"
(chargePointChanged)="chargePointChanged()"></app-charging-station-charge-point>
(chargePointChanged)="chargePointChanged()" [manualConfiguration]="manualConfiguration.value"></app-charging-station-charge-point>
</div>
</div>
<ng-template #chargingStationWithNoChargePoints>
<div class="row charging-station-connector-component">
<div class="col-md-6" *ngFor="let connector of chargingStation?.connectors">
<app-charging-station-connector [chargingStation]="chargingStation" [connector]="connector"
[formConnectorsArray]="connectors" [isAdmin]="isAdmin" (connectorChanged)="connectorChanged()">
[formConnectorsArray]="connectors" [isAdmin]="isAdmin" (connectorChanged)="connectorChanged()" [manualConfiguration]="manualConfiguration.value">
</app-charging-station-connector>
</div>
</div>
Expand Down
Loading

0 comments on commit 7c37655

Please sign in to comment.