Skip to content

Commit 99283c5

Browse files
authored
fix: use also segments as filters (#3613)
1 parent d06e644 commit 99283c5

File tree

2 files changed

+26
-25
lines changed

2 files changed

+26
-25
lines changed

frontend/src/modules/member/pages/member-list-page.vue

Lines changed: 26 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -105,11 +105,12 @@ import {
105105
ref,
106106
watch,
107107
} from 'vue';
108+
import { filterApiService } from '@/shared/modules/filters/services/filter-api.service';
108109
import { memberFilters, memberSearchFilter } from '../config/filters/main';
109110
import { memberSavedViews, memberStaticViews } from '../config/saved-views/main';
110-
import { DEFAULT_MEMBER_FILTERS_NO_TEAM } from '../store/constants';
111111
112-
const getDefaultFilters = () => ({ and: DEFAULT_MEMBER_FILTERS_NO_TEAM });
112+
const { buildApiFilter } = filterApiService();
113+
113114
const memberStore = useMemberStore();
114115
const { filters, customAttributesFilter } = storeToRefs(memberStore);
115116
@@ -136,10 +137,11 @@ const pagination = ref({
136137
// Reactive state for query parameters
137138
const queryParams = ref({
138139
search: '',
139-
filter: getDefaultFilters(),
140+
filter: filters.value,
140141
offset: 0,
141142
limit: 20,
142143
orderBy: 'activityCount_DESC',
144+
segments: selectedProjectGroup.value?.id ? [selectedProjectGroup.value.id] : [],
143145
});
144146
145147
// Create a computed query key for members
@@ -156,13 +158,25 @@ const {
156158
isFetching: membersFetching,
157159
} = useQuery({
158160
queryKey: membersQueryKey,
159-
queryFn: () => MemberService.listMembers({
160-
search: queryParams.value.search,
161-
filter: queryParams.value.filter,
162-
offset: queryParams.value.offset,
163-
limit: queryParams.value.limit,
164-
orderBy: queryParams.value.orderBy,
165-
}),
161+
queryFn: () => {
162+
const transformedFilter = filters.value
163+
? buildApiFilter(
164+
filters.value,
165+
{ ...memberFilters, ...customAttributesFilter.value },
166+
memberSearchFilter,
167+
memberSavedViews,
168+
)
169+
: { search: '', filter: {}, orderBy: 'activityCount_DESC' };
170+
171+
return MemberService.listMembers({
172+
search: queryParams.value.search,
173+
filter: transformedFilter.filter,
174+
offset: queryParams.value.offset,
175+
limit: queryParams.value.limit,
176+
orderBy: transformedFilter.orderBy,
177+
segments: queryParams.value.segments,
178+
});
179+
},
166180
enabled: !!selectedProjectGroup.value?.id,
167181
});
168182
@@ -242,10 +256,11 @@ watch(
242256
// Reset query params for new project group
243257
queryParams.value = {
244258
search: '',
245-
filter: getDefaultFilters(),
259+
filter: filters.value,
246260
offset: 0,
247261
limit: pagination.value.perPage,
248262
orderBy: 'activityCount_DESC',
263+
segments: newProjectGroup ? [newProjectGroup?.id] : [],
249264
};
250265
251266
// Invalidate all related caches

frontend/src/modules/member/store/constants.js

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -15,17 +15,3 @@ export const DEFAULT_MEMBER_FILTERS = [
1515
},
1616
},
1717
];
18-
19-
export const DEFAULT_MEMBER_FILTERS_NO_TEAM = [
20-
{
21-
isBot: {
22-
not: true,
23-
},
24-
},
25-
{
26-
isOrganization: {
27-
not: true,
28-
},
29-
},
30-
{},
31-
];

0 commit comments

Comments
 (0)