Merge branch 'DEVELOP_FE' of ssh://172.18.22.160:29418/oK/PlannedGridMeasures/Frontend into DEVELOP_FE
diff --git a/src/app/model/grid-measure.ts b/src/app/model/grid-measure.ts
index 76d5596..ef10507 100644
--- a/src/app/model/grid-measure.ts
+++ b/src/app/model/grid-measure.ts
@@ -27,8 +27,8 @@
statusId?: number;
switchingObject?: string;
costCenter?: string;
- responsibleOnSiteName?: string; // TODO: gehört hier nicht rein, ist ein Attribut der SGM
- responsibleOnSiteDepartment?: string; // TODO: gehört hier nicht rein, ist ein Attribut der SGM
+ // responsibleOnSiteName?: string; // TODO: gehört hier nicht rein, ist ein Attribut der SGM
+ // responsibleOnSiteDepartment?: string; // TODO: gehört hier nicht rein, ist ein Attribut der SGM
approvalBy?: string;
areaOfSwitching?: string;
appointmentRepetition?: string;
@@ -51,6 +51,6 @@
listEmailDistribution?: Array<EmailDistributionEntry>;
listEmailDistributionDeleted?: Array<EmailDistributionEntry>;
selected?: boolean;
- _isValide ?= true;
- _isHeaderValide ?= true;
+ _isValide?= true;
+ _isHeaderValide?= true;
}
diff --git a/src/app/model/single-grid-measure.ts b/src/app/model/single-grid-measure.ts
index 854f2bd..9027ed4 100644
--- a/src/app/model/single-grid-measure.ts
+++ b/src/app/model/single-grid-measure.ts
@@ -22,12 +22,11 @@
plannedEndtimeSinglemeasure?: string;
description?: string;
gridmeasureId?: number;
- _isValide ?= true;
+ _isValide?= true;
delete?: boolean;
listSteps?: Array<Step>;
listStepsDeleted?: Array<Step>;
- // TODO: ist ein Attribut der SGM und so wird es Ina auch im backend implementieren
- // responsibleOnSiteName?: string;
- // responsibleOnSiteDepartment?: string;
- NetworkControls?: string;
+ responsibleOnSiteName?: string;
+ responsibleOnSiteDepartment?: string;
+ networkControl?: string;
}
diff --git a/src/app/pages/grid-measure-detail-header/grid-measure-detail-header.component.html b/src/app/pages/grid-measure-detail-header/grid-measure-detail-header.component.html
index 948d81b..baaf0d2 100644
--- a/src/app/pages/grid-measure-detail-header/grid-measure-detail-header.component.html
+++ b/src/app/pages/grid-measure-detail-header/grid-measure-detail-header.component.html
@@ -71,11 +71,11 @@
</div>
<div class="col-md-4">
<label class="form-field-label" for="createUserDepartment">Abteilung Ersteller</label>
- <select [required]="true" type="text" name="createUserDepartment" id="createUserDepartment" [(ngModel)]="gridMeasureDetail.createUserDepartment"
- class="form-control">
- <option value=""></option>
- <option *ngFor="let department of departmentList" value="{{ department.id }}">{{ department.name }}</option>
- </select>
+ <input maxlength="256" [required]="true" type="text" list="departmentList" name="createUserDepartment" id="createUserDepartment"
+ [(ngModel)]="gridMeasureDetail.createUserDepartment" class="form-control" autocomplete="off" />
+ <datalist id="departmentList">
+ <option *ngFor="let department of departmentList">{{ department.name }}</option>
+ </datalist>
</div>
<div class="col-md-4">
<label class="form-field-label" for="costCenter">Kostenstelle</label>
diff --git a/src/app/pages/grid-measure-detail-header/grid-measure-detail-header.component.ts b/src/app/pages/grid-measure-detail-header/grid-measure-detail-header.component.ts
index cc12ad4..41a3f55 100644
--- a/src/app/pages/grid-measure-detail-header/grid-measure-detail-header.component.ts
+++ b/src/app/pages/grid-measure-detail-header/grid-measure-detail-header.component.ts
@@ -20,6 +20,7 @@
import { Branch } from '../../model/branch';
import { BranchLevel } from '../../model/branch-level';
import { BaseDataService } from '../../services/base-data.service';
+import { UserDepartment } from '../../model/user-department';
@Component({
selector: 'app-grid-measure-detail-header',
@@ -42,7 +43,7 @@
brancheList: Branch[];
branchLevelList: Array<BranchLevel> = [];
areaOfSwitchingList: string[];
- departmentList: any;
+ departmentList: UserDepartment[];
costCenters: any;
isBranchLevelActive: boolean;
constructor(public sessionContext: SessionContext,
diff --git a/src/app/pages/grid-measure-detail/grid-measure-detail.component.ts b/src/app/pages/grid-measure-detail/grid-measure-detail.component.ts
index 4b3faa1..02dd6cf 100644
--- a/src/app/pages/grid-measure-detail/grid-measure-detail.component.ts
+++ b/src/app/pages/grid-measure-detail/grid-measure-detail.component.ts
@@ -58,7 +58,6 @@
startDate: Date;
switchingObjectList: string[];
areaOfSwitchingList: string[];
- responsibleOnSiteDepartmentList: string[];
responsibleOnSiteNameList: string[];
levelList: any[];
validForSave: boolean;
diff --git a/src/app/pages/single-grid-measure-detail-tab/single-grid-measure-detail-tab.component.html b/src/app/pages/single-grid-measure-detail-tab/single-grid-measure-detail-tab.component.html
index 77c007d..a0f9bd8 100644
--- a/src/app/pages/single-grid-measure-detail-tab/single-grid-measure-detail-tab.component.html
+++ b/src/app/pages/single-grid-measure-detail-tab/single-grid-measure-detail-tab.component.html
@@ -17,9 +17,11 @@
</h4>
<div class="row actions">
<div class="col-lg-12">
- <button class="btn btn-primary pull-right" id="createInvertedStep" (click)="duplicateSingleGM()" [disabled]="isSingleGridmeasureLimitReached()">Rückschaltung planen
+ <button class="btn btn-primary pull-right" id="createInvertedStep" (click)="duplicateSingleGM()" [disabled]="isSingleGridmeasureLimitReached()">Rückschaltung
+ planen
</button>
- <button class="btn btn-danger pull-left" id="deleteSingleGridMeasureBtn" (click)="onDeleteBtnClick()" [disabled]="isLastSingleGridmeasure()">Einzelmaßnahme löschen
+ <button class="btn btn-danger pull-left" id="deleteSingleGridMeasureBtn" (click)="onDeleteBtnClick()" [disabled]="isLastSingleGridmeasure()">Einzelmaßnahme
+ löschen
<span class="glyphicon glyphicon-trash" id="deleteSingleGridMeasureBtnIcon"></span>
</button>
</div>
@@ -81,7 +83,7 @@
<div class="col-md-4">
<label class="form-field-label" for="responsibleOnSiteName">Verantwortlich Vor-Ort</label>
<input maxlength="256" [required]="true" type="text" list="responsibleOnSiteNameList" name="responsibleOnSiteName" id="responsibleOnSiteName"
- [(ngModel)]="gridMeasureDetail.responsibleOnSiteName" class="form-control" autocomplete="off" />
+ [(ngModel)]="singleGridMeasure.responsibleOnSiteName" class="form-control" autocomplete="off" />
<datalist id="responsibleOnSiteNameList">
<option value=""></option>
<option *ngFor="let responsibleOnSiteNameString of responsibleOnSiteNameList" value="{{ responsibleOnSiteNameString }}">{{responsibleOnSiteNameString}}</option>
@@ -91,19 +93,18 @@
<div class="col-md-4">
<label class="form-field-label" for="responsibleOnSiteDepartment">Abteilung Verantwortlicher Vor-Ort</label>
<input maxlength="256" [required]="false" type="text" list="responsibleOnSiteDepartmentList" name="responsibleOnSiteDepartment"
- id="responsibleOnSiteDepartment" [(ngModel)]="gridMeasureDetail.responsibleOnSiteDepartment" class="form-control"
+ id="responsibleOnSiteDepartment" [(ngModel)]="singleGridMeasure.responsibleOnSiteDepartment" class="form-control"
autocomplete="off" />
<datalist id="responsibleOnSiteDepartmentList">
- <option *ngFor="let responsibleOnSiteDepartmentString of responsibleOnSiteDepartmentList">{{responsibleOnSiteDepartmentString}}</option>
+ <option *ngFor="let department of responsibleOnSiteDepartmentList">{{ department.name }}</option>
</datalist>
</div>
<div class="col-md-4">
- <label class="form-field-label" for="NetworkControls">Netzführung / Netzservice / Genehmiger</label>
- <input maxlength="256" [required]="false" type="text" list="NetworkControlsList" name="NetworkControls" id="NetworkControls"
- [(ngModel)]="singleGridMeasure.NetworkControls" class="form-control" autocomplete="off" />
- <datalist id="NetworkControlsList">
- <option value=""></option>
- <option *ngFor="let NetworkControlsString of NetworkControlsList" value="{{ NetworkControlsString }}">{{getNetworkControlsString}}</option>
+ <label class="form-field-label" for="networkControl">Netzführung / Netzservice / Genehmiger</label>
+ <input maxlength="256" [required]="false" type="text" list="networkControlsList" name="networkControl" id="networkControl"
+ [(ngModel)]="singleGridMeasure.networkControl" class="form-control" autocomplete="off" />
+ <datalist id="networkControlsList">
+ <option *ngFor="let networkControlsString of networkControlsList">{{networkControlsString}}</option>
</datalist>
</div>
</div>
diff --git a/src/app/pages/single-grid-measure-detail-tab/single-grid-measure-detail-tab.component.ts b/src/app/pages/single-grid-measure-detail-tab/single-grid-measure-detail-tab.component.ts
index 393fca0..e10d13c 100644
--- a/src/app/pages/single-grid-measure-detail-tab/single-grid-measure-detail-tab.component.ts
+++ b/src/app/pages/single-grid-measure-detail-tab/single-grid-measure-detail-tab.component.ts
@@ -27,6 +27,7 @@
import { RoleAccessHelperService } from '../../services/jobs/role-access-helper.service';
import { SessionContext } from '../../common/session-context';
import { ToasterMessageService } from '../../services/toaster-message.service';
+import { UserDepartment } from '../../model/user-department';
@Component({
selector: 'app-single-grid-measure-detail-tab',
@@ -55,8 +56,8 @@
subscription: Subscription;
inactiveFields: Array<string> = [];
responsibleOnSiteNameList: string[];
- NetworkControlsList: string[];
- responsibleOnSiteDepartmentList: string[];
+ networkControlsList: string[];
+ responsibleOnSiteDepartmentList: UserDepartment[];
@ViewChild('singleGridMeasureDetailFormCotainer') singleGridMeasureDetailFormContainer: ElementRef;
@ViewChild('singleGridForm') singleGridForm: FormGroup;
@@ -66,9 +67,9 @@
private toasterMessageService: ToasterMessageService) { }
ngOnInit() {
- this.NetworkControlsList = this.sessionContext.getNetworkControlsFromSingleGridmeasures();
+ this.networkControlsList = this.sessionContext.getNetworkControlsFromSingleGridmeasures();
this.responsibleOnSiteNameList = this.sessionContext.getResponsiblesOnSiteFromGridmeasures();
- this.responsibleOnSiteDepartmentList = ['Abteilung1', 'Abteilung2'];
+ this.responsibleOnSiteDepartmentList = this.sessionContext.getAllUserDepartments();
this.inactiveFields = this.sessionContext.getInactiveFields();
this.getRessourceTypes();
diff --git a/src/app/services/base-data.service.ts b/src/app/services/base-data.service.ts
index 1ffc7be..61491fa 100644
--- a/src/app/services/base-data.service.ts
+++ b/src/app/services/base-data.service.ts
@@ -34,7 +34,7 @@
public getNetworkControlsFromSingleGridmeasures(): Observable<string[]> {
return this.baseHttpService.callService(
- new HttpCallInfo(Globals.GRID_MEASURES_SERVICE_NAME, HttpMethodEn.get, '/getNetworkControlsFromSingelGridmeasures', null),
+ new HttpCallInfo(Globals.GRID_MEASURES_SERVICE_NAME, HttpMethodEn.get, '/getNetworkControlsFromSingleGridmeasures', null),
this.sessionContext);
}
diff --git a/src/app/test-data/grid-measures.ts b/src/app/test-data/grid-measures.ts
index 114fcf3..ed79f4e 100644
--- a/src/app/test-data/grid-measures.ts
+++ b/src/app/test-data/grid-measures.ts
@@ -28,7 +28,6 @@
createUserDepartment: 'Abteilung A',
statusId: 1,
costCenter: 'Kostenstelle',
- responsibleOnSiteName: 'Verantwortlich Vor-Ort',
approvalBy: 'Freigabe durch',
areaOfSwitching: 'Gebiet (Region) der Schaltung',
appointmentRepetition: 'Terminwiederholung täglich',
@@ -38,17 +37,21 @@
modUserDepartment: 'Meisterabteilung',
description: 'BeschreibungText',
listSingleGridmeasures: [
- { id: 3, title: 'title 1', sortorder: 11, gridmeasureId: 1111, listSteps: [
- { id: 1, sortorder: 1, switchingObject: 'Schalter 1', targetState: 'aus', singleGridmeasureId: 3, delete: false },
- { id: 2, sortorder: 2, switchingObject: 'Schalter 2', targetState: 'aus', singleGridmeasureId: 3, delete: false },
- { id: 3, sortorder: 3, switchingObject: 'Schalter 3', targetState: 'aus', singleGridmeasureId: 3, delete: false }
- ]},
- { id: 5, title: 'title 2', sortorder: 35, gridmeasureId: 1111, listSteps: [
- { id: 4, sortorder: 1, switchingObject: 'Schalter 42', targetState: 'aus', singleGridmeasureId: 5, delete: false },
- { id: 5, sortorder: 2, switchingObject: 'Schalter 43', targetState: 'aus', singleGridmeasureId: 5, delete: false },
- { id: 6, sortorder: 3, switchingObject: 'Schalter 44', targetState: 'aus', singleGridmeasureId: 5, delete: false },
- { id: 7, sortorder: 4, switchingObject: 'Schalter 45', targetState: 'aus', singleGridmeasureId: 5, delete: false }
- ]}
+ {
+ id: 3, title: 'title 1', sortorder: 11, gridmeasureId: 1111, listSteps: [
+ { id: 1, sortorder: 1, switchingObject: 'Schalter 1', targetState: 'aus', singleGridmeasureId: 3, delete: false },
+ { id: 2, sortorder: 2, switchingObject: 'Schalter 2', targetState: 'aus', singleGridmeasureId: 3, delete: false },
+ { id: 3, sortorder: 3, switchingObject: 'Schalter 3', targetState: 'aus', singleGridmeasureId: 3, delete: false }
+ ]
+ },
+ {
+ id: 5, title: 'title 2', sortorder: 35, gridmeasureId: 1111, listSteps: [
+ { id: 4, sortorder: 1, switchingObject: 'Schalter 42', targetState: 'aus', singleGridmeasureId: 5, delete: false },
+ { id: 5, sortorder: 2, switchingObject: 'Schalter 43', targetState: 'aus', singleGridmeasureId: 5, delete: false },
+ { id: 6, sortorder: 3, switchingObject: 'Schalter 44', targetState: 'aus', singleGridmeasureId: 5, delete: false },
+ { id: 7, sortorder: 4, switchingObject: 'Schalter 45', targetState: 'aus', singleGridmeasureId: 5, delete: false }
+ ]
+ }
],
emailAddresses: 'test@test.de;test2@test.de',
listEmailDistribution: [
@@ -104,7 +107,6 @@
createUserDepartment: 'Wasser',
statusId: 1,
costCenter: 'Kostenstelle',
- responsibleOnSiteName: 'Verantwortlich Vor-Ort',
approvalBy: 'Freigabe durch',
areaOfSwitching: 'Gebiet (Region) der Schaltung',
appointmentRepetition: 'Terminwiederholung täglich',