Skip to content

Commit f9c8981

Browse files
fix(console): eliminate duplicate entries in organization search users results
1 parent 6e3e7de commit f9c8981

File tree

2 files changed

+9
-3
lines changed

2 files changed

+9
-3
lines changed

gravitee-apim-console-webui/src/organization/configuration/users/org-settings-users.component.spec.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,10 @@ describe('OrgSettingsUsersComponent', () => {
195195
fixture.detectChanges();
196196
tick(400);
197197

198-
const req = httpTestingController.expectOne(`${CONSTANTS_TESTING.org.baseURL}/users?page=${page}&size=10${q ? `&q=${q}` : ''}`);
198+
const order = 'firstname,lastname,displayName,email,id,reference';
199+
const req = httpTestingController.expectOne(
200+
`${CONSTANTS_TESTING.org.baseURL}/users?page=${page}&size=10${q ? `&q=${q}` : ''}&order=${order}`,
201+
);
199202
expect(req.request.method).toEqual('GET');
200203
req.flush(fakePagedResult(usersResponse));
201204
}

gravitee-apim-console-webui/src/organization/configuration/users/org-settings-users.component.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,8 @@ export class OrgSettingsUsersComponent implements OnInit, OnDestroy {
5151
nbTotalUsers = 0;
5252
filteredTableData: TableData[] = [];
5353

54+
private readonly defaultOrder = 'firstname,lastname,displayName,email,id,reference';
55+
5456
private unsubscribe$: Subject<boolean> = new Subject<boolean>();
5557

5658
// Create filters stream
@@ -68,7 +70,7 @@ export class OrgSettingsUsersComponent implements OnInit, OnDestroy {
6870
// Init filters stream with state params
6971
const initialSearchValue = this.activatedRoute.snapshot.queryParams.q ?? '';
7072
const initialPageNumber = this.activatedRoute.snapshot.queryParams.page ? Number(this.activatedRoute.snapshot.queryParams.page) : 1;
71-
const initialOrder = this.activatedRoute.snapshot.queryParams.order ?? 'firstname,lastname,displayName,email,id,reference';
73+
const initialOrder = this.activatedRoute.snapshot.queryParams.order ?? this.defaultOrder;
7274
this.filters = {
7375
searchTerm: initialSearchValue,
7476
sort: { active: initialOrder, direction: 'asc' },
@@ -131,7 +133,8 @@ export class OrgSettingsUsersComponent implements OnInit, OnDestroy {
131133
}
132134

133135
onFiltersChanged(filters: GioTableWrapperFilters) {
134-
this.filtersStream.next(filters);
136+
const ensuredSort = filters.sort ?? this.filters?.sort ?? { active: this.defaultOrder, direction: 'asc' };
137+
this.filtersStream.next({ ...filters, sort: ensuredSort });
135138
}
136139

137140
private setDataSourceFromUsersList(users: PagedResult<User>) {

0 commit comments

Comments
 (0)