Skip to content

Commit cf6e073

Browse files
authored
fix: revert fields from members (#3579)
1 parent 957f676 commit cf6e073

File tree

1 file changed

+23
-1
lines changed
  • services/libs/data-access-layer/src/members

1 file changed

+23
-1
lines changed

services/libs/data-access-layer/src/members/base.ts

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import {
66
RawQueryParser,
77
generateUUIDv1,
88
getProperDisplayName,
9+
groupBy,
910
} from '@crowd/common'
1011
import { formatSql, getDbInstance, prepareForModification } from '@crowd/database'
1112
import { getServiceChildLogger } from '@crowd/logging'
@@ -19,6 +20,7 @@ import {
1920
} from '@crowd/types'
2021

2122
import { findManyLfxMemberships } from '../lfx_memberships'
23+
import { findMaintainerRoles } from '../maintainers'
2224
import {
2325
IDbMemberCreateData,
2426
IDbMemberUpdateData,
@@ -108,6 +110,7 @@ export const MEMBER_INSERT_COLUMNS = [
108110
const QUERY_FILTER_COLUMN_MAP: Map<string, { name: string; queryable?: boolean }> = new Map([
109111
['activityCount', { name: 'coalesce(msa."activityCount", 0)::integer' }],
110112
['attributes', { name: 'm.attributes' }],
113+
['averageSentiment', { name: 'coalesce(msa."averageSentiment", 0)::decimal' }],
111114
['displayName', { name: 'm."displayName"' }],
112115
['id', { name: 'm.id' }],
113116
['identityPlatforms', { name: 'coalesce(msa."activeOn", \'{}\'::text[])' }],
@@ -116,8 +119,10 @@ const QUERY_FILTER_COLUMN_MAP: Map<string, { name: string; queryable?: boolean }
116119
'isOrganization',
117120
{ name: `COALESCE((m.attributes -> 'isOrganization' ->> 'default')::BOOLEAN, FALSE)` },
118121
],
119-
['activityCount', { name: 'coalesce(msa."activityCount", 0)::integer' }],
122+
['joinedAt', { name: 'm."joinedAt"' }],
123+
['lastEnrichedAt', { name: 'me."lastUpdatedAt"' }],
120124
['organizations', { name: 'mo."organizationId"', queryable: false }],
125+
['score', { name: 'm.score' }],
121126
['segmentId', { name: 'msa."segmentId"' }],
122127
])
123128

@@ -495,6 +500,23 @@ export async function queryMembersAdvanced(
495500
})
496501
}
497502

503+
if (include.maintainers) {
504+
const maintainerRoles = await findMaintainerRoles(qx, memberIds)
505+
const segmentIds = uniq(maintainerRoles.map((m) => m.segmentId))
506+
const segmentsInfo = await fetchManySegments(qx, segmentIds)
507+
508+
const groupedMaintainers = groupBy(maintainerRoles, (m) => m.memberId)
509+
rows.forEach((member) => {
510+
member.maintainerRoles = (groupedMaintainers.get(member.id) || []).map((role) => {
511+
const segmentInfo = segmentsInfo.find((s) => s.id === role.segmentId)
512+
return {
513+
...role,
514+
segmentName: segmentInfo?.name,
515+
}
516+
})
517+
})
518+
}
519+
498520
return { rows, count, limit, offset }
499521
}
500522

0 commit comments

Comments
 (0)