From 1cd0d7b5ca5c9ad442a36f356d0a4195cb36cca5 Mon Sep 17 00:00:00 2001 From: sean-brydon <55134778+sean-brydon@users.noreply.github.com> Date: Fri, 25 Aug 2023 17:14:28 +0100 Subject: [PATCH] use team id :/ (#10957) --- .../team/listTeamAvailability.handler.ts | 33 ++++--------------- 1 file changed, 6 insertions(+), 27 deletions(-) diff --git a/packages/trpc/server/routers/viewer/availability/team/listTeamAvailability.handler.ts b/packages/trpc/server/routers/viewer/availability/team/listTeamAvailability.handler.ts index f503b3994f..e3df16fc9f 100644 --- a/packages/trpc/server/routers/viewer/availability/team/listTeamAvailability.handler.ts +++ b/packages/trpc/server/routers/viewer/availability/team/listTeamAvailability.handler.ts @@ -1,5 +1,3 @@ -import { Prisma } from "@prisma/client"; - import type { Dayjs } from "@calcom/dayjs"; import dayjs from "@calcom/dayjs"; import type { DateRange } from "@calcom/lib/date-ranges"; @@ -29,22 +27,11 @@ async function getTeamMembers({ cursor: number | null | undefined; limit: number; }) { - let whereQuery: Prisma.MembershipWhereInput = { - teamId, - }; - - if (teamIds) { - whereQuery = { - teamId: { - in: teamIds, - }, - }; - } - return await prisma.membership.findMany({ where: { - ...whereQuery, - accepted: true, + teamId: { + in: teamId ? [teamId] : teamIds, + }, }, select: { id: true, @@ -116,23 +103,15 @@ async function getInfoForAllTeams({ ctx, input }: GetOptions) { }, select: { id: true, + teamId: true, }, }) - .then((memberships) => memberships.map((membership) => membership.id)); + .then((memberships) => memberships.map((membership) => membership.teamId)); if (!teamIds.length) { throw new TRPCError({ code: "NOT_FOUND", message: "User is not part of any organization or team." }); } - const getTotalMembers = await prisma.$queryRaw<{ - count: number; - }>(Prisma.sql` - SELECT - COUNT(DISTINCT "userId") as "count" - FROM "Membership" - WHERE "teamId" IN (${Prisma.join(teamIds)}) -`); - const teamMembers = await getTeamMembers({ teamIds, cursor, @@ -141,7 +120,7 @@ async function getInfoForAllTeams({ ctx, input }: GetOptions) { return { teamMembers, - totalTeamMembers: getTotalMembers.count, + totalTeamMembers: teamMembers.length, }; }