You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dlab.apache.org by an...@apache.org on 2019/09/25 14:48:57 UTC
[incubator-dlab] 06/08: [DLAB-472]: added filtering by multiple
values
This is an automated email from the ASF dual-hosted git repository.
ankovalyshyn pushed a commit to branch DLAB-1056
in repository https://gitbox.apache.org/repos/asf/incubator-dlab.git
commit 4c9df434d0ce4749dc1cbad84d837b2158d6751a
Author: Andriana Kovalyshyn <An...@epam.com>
AuthorDate: Wed Sep 25 17:30:40 2019 +0300
[DLAB-472]: added filtering by multiple values
---
.../management/management-data.service.ts | 4 ++++
.../management-grid/management-grid.component.html | 13 ++++++++-----
.../management-grid/management-grid.component.ts | 17 +++++++++++++----
3 files changed, 25 insertions(+), 9 deletions(-)
diff --git a/services/self-service/src/main/resources/webapp/src/app/administration/management/management-data.service.ts b/services/self-service/src/main/resources/webapp/src/app/administration/management/management-data.service.ts
index 090a253..3078ad9 100644
--- a/services/self-service/src/main/resources/webapp/src/app/administration/management/management-data.service.ts
+++ b/services/self-service/src/main/resources/webapp/src/app/administration/management/management-data.service.ts
@@ -35,6 +35,10 @@ export class EnvironmentsDataService {
this.getAllEnvironmentData();
}
+ public getEnvironmentDataDirect() {
+ return this.manageEnvironmentsService.getAllEnvironmentData().subscribe(response => response);
+ }
+
private getAllEnvironmentData() {
this.manageEnvironmentsService.getAllEnvironmentData().subscribe(
(response) => this._data.next(response));
diff --git a/services/self-service/src/main/resources/webapp/src/app/administration/management/management-grid/management-grid.component.html b/services/self-service/src/main/resources/webapp/src/app/administration/management/management-grid/management-grid.component.html
index 95832b5..092e483 100644
--- a/services/self-service/src/main/resources/webapp/src/app/administration/management/management-grid/management-grid.component.html
+++ b/services/self-service/src/main/resources/webapp/src/app/administration/management/management-grid/management-grid.component.html
@@ -18,7 +18,7 @@
-->
<div class="ani">
- <table mat-table [dataSource]="allEnvironmentData" class="data-grid management mat-elevation-z6">
+ <table mat-table [dataSource]="allFilteredEnvironmentData" class="data-grid management mat-elevation-z6">
<ng-container matColumnDef="user">
<th mat-header-cell *matHeaderCellDef class="user"> User </th>
<td mat-cell *matCellDef="let element">{{ element.user }}</td>
@@ -162,9 +162,9 @@
</button>
<button mat-icon-button class="btn apply" (click)="applyFilter(filterForm)"
- [disabled]="allEnvironmentData?.length == 0 && !filtering">
+ [disabled]="allFilteredEnvironmentData?.length == 0 && !filtering">
<i class="material-icons"
- [ngClass]="{'not-allowed': allEnvironmentData?.length == 0 && !filtering}">done</i>
+ [ngClass]="{'not-allowed': allFilteredEnvironmentData?.length == 0 && !filtering}">done</i>
</button>
</div>
</th>
@@ -173,7 +173,10 @@
<ng-container matColumnDef="placeholder">
<td mat-footer-cell *matFooterCellDef colspan="6" class="info">
- To start working, please, create new environment
+ <span
+ *ngIf="(!allFilteredEnvironmentData) && !filtering || (allFilteredEnvironmentData?.length == 0) && !filtering">
+ To start working, please, create new environment</span>
+ <span *ngIf="(allFilteredEnvironmentData?.length == 0) && filtering">No matches found</span>
</td>
</ng-container>
@@ -183,7 +186,7 @@
<tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
- <tr [hidden]="allEnvironmentData?.length" mat-footer-row *matFooterRowDef="['placeholder']"></tr>
+ <tr [hidden]="allFilteredEnvironmentData?.length" mat-footer-row *matFooterRowDef="['placeholder']"></tr>
</table>
</div>
diff --git a/services/self-service/src/main/resources/webapp/src/app/administration/management/management-grid/management-grid.component.ts b/services/self-service/src/main/resources/webapp/src/app/administration/management/management-grid/management-grid.component.ts
index ff62f99..2270693 100644
--- a/services/self-service/src/main/resources/webapp/src/app/administration/management/management-grid/management-grid.component.ts
+++ b/services/self-service/src/main/resources/webapp/src/app/administration/management/management-grid/management-grid.component.ts
@@ -45,6 +45,7 @@ export interface ManageAction {
})
export class ManagementGridComponent implements OnInit {
allEnvironmentData: Array<any>;
+ allFilteredEnvironmentData: Array<any>;
loading: boolean = false;
filterConfiguration: ManagementConfigModel = new ManagementConfigModel([], '', [], [], [], []);
filterForm: ManagementConfigModel = new ManagementConfigModel([], '', [], [], [], []);
@@ -69,13 +70,17 @@ export class ManagementGridComponent implements OnInit {
ngOnInit() {
this.environmentsDataService._data.subscribe(data => {
- this.allEnvironmentData = EnvironmentModel.loadEnvironments(data);
- this.getDefaultFilterConfiguration(data);
+ if (data) {
+ this.allEnvironmentData = EnvironmentModel.loadEnvironments(data);
+ this.getDefaultFilterConfiguration(data);
+ this.applyFilter(this.filterForm);
+ }
});
}
buildGrid(): void {
this.refreshGrid.emit();
+ this.filtering = false;
}
public onUpdate($event): void {
@@ -89,7 +94,7 @@ export class ManagementGridComponent implements OnInit {
}
public applyFilter(config) {
- let filteredData = this.allEnvironmentData;
+ let filteredData = this.getEnvironmentDataCopy();
const containsStatus = (list, selectedItems) => {
return list.filter((item: any) => { if (selectedItems.indexOf(item.status) !== -1) return item; });
@@ -119,7 +124,11 @@ export class ManagementGridComponent implements OnInit {
return isUser && isType && isStatus && isShape && isProject && isResources;
});
}
- this.allEnvironmentData = filteredData;
+ this.allFilteredEnvironmentData = filteredData;
+ }
+
+ getEnvironmentDataCopy() {
+ return this.allEnvironmentData;
}
toggleResourceAction(environment: any, action: string, resource?): void {
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@dlab.apache.org
For additional commands, e-mail: commits-help@dlab.apache.org