From: Stephen Smith Date: Thu, 31 Mar 2022 01:10:04 +0000 (-0400) Subject: 18559: Use full text user search instead of fname or lname only X-Git-Tag: 2.4.0~1^2~7 X-Git-Url: https://git.arvados.org/arvados-workbench2.git/commitdiff_plain/1ef4bffbfa4d05ae4356ef22b3964d6152310fb9 18559: Use full text user search instead of fname or lname only Arvados-DCO-1.1-Signed-off-by: Stephen Smith --- diff --git a/src/store/users/user-panel-middleware-service.ts b/src/store/users/user-panel-middleware-service.ts index 83af302c..c0589a60 100644 --- a/src/store/users/user-panel-middleware-service.ts +++ b/src/store/users/user-panel-middleware-service.ts @@ -29,15 +29,10 @@ export class UserMiddlewareService extends DataExplorerMiddlewareService { const state = api.getState(); const dataExplorer = getDataExplorer(state.dataExplorer, this.getId()); try { - const responseFirstName = await this.services.userService.list(getParamsFirstName(dataExplorer)); - if (responseFirstName.itemsAvailable) { - api.dispatch(updateResources(responseFirstName.items)); - api.dispatch(setItems(responseFirstName)); - } else { - const responseLastName = await this.services.userService.list(getParamsLastName(dataExplorer)); - api.dispatch(updateResources(responseLastName.items)); - api.dispatch(setItems(responseLastName)); - } + const users = await this.services.userService.list(getParams(dataExplorer)); + api.dispatch(updateResources(users.items)); + api.dispatch(setItems(users)); + // Get "all users" group memberships const allUsersGroupUuid = getBuiltinGroupUuid(state.auth.localCluster, BuiltinGroups.ALL); const allUserMemberships = await this.services.permissionService.list({ @@ -53,32 +48,14 @@ export class UserMiddlewareService extends DataExplorerMiddlewareService { } } -const getParamsFirstName = (dataExplorer: DataExplorer) => ({ - ...dataExplorerToListParams(dataExplorer), - order: getOrder(dataExplorer), - filters: getFiltersFirstName(dataExplorer) -}); - -const getParamsLastName = (dataExplorer: DataExplorer) => ({ +const getParams = (dataExplorer: DataExplorer) => ({ ...dataExplorerToListParams(dataExplorer), order: getOrder(dataExplorer), - filters: getFiltersLastName(dataExplorer) + filters: new FilterBuilder() + .addFullTextSearch(dataExplorer.searchValue) + .getFilters() }); -const getFiltersFirstName = (dataExplorer: DataExplorer) => { - const filters = new FilterBuilder() - .addILike("first_name", dataExplorer.searchValue) - .getFilters(); - return filters; -}; - -const getFiltersLastName = (dataExplorer: DataExplorer) => { - const filters = new FilterBuilder() - .addILike("last_name", dataExplorer.searchValue) - .getFilters(); - return filters; -}; - export const getOrder = (dataExplorer: DataExplorer) => { const sortColumn = getSortColumn(dataExplorer); const order = new OrderBuilder();