From 60e0ac630d6497d712647d115356f842daf9aa7b Mon Sep 17 00:00:00 2001 From: Ruslan Bakiev Date: Sat, 4 Apr 2026 10:36:05 +0700 Subject: [PATCH] Filter manager orders by customer --- src/resolvers.js | 8 +++++++- src/schema.graphql | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/resolvers.js b/src/resolvers.js index 318d459..52bd5af 100644 --- a/src/resolvers.js +++ b/src/resolvers.js @@ -550,11 +550,17 @@ export const resolvers = { })); }, - managerOrders: (_, { status }, context) => { + managerOrders: async (_, { status, customerId }, context) => { const manager = requireManagerAccess(context); + const normalizedCustomerId = normalizeOptionalText(customerId); + if (normalizedCustomerId) { + await assertManagerCanAccessUser(context.prisma, manager, normalizedCustomerId); + } + return context.prisma.order.findMany({ where: { ...(isSuperManager(manager) ? {} : { managerId: manager.id }), + ...(normalizedCustomerId ? { customerId: normalizedCustomerId } : {}), ...(status ? { status } : {}), }, include: { diff --git a/src/schema.graphql b/src/schema.graphql index 4bc7bab..3796511 100644 --- a/src/schema.graphql +++ b/src/schema.graphql @@ -335,7 +335,7 @@ type Query { myOrders: [Order!]! myCurrentOrders: [Order!]! managerUsers: [ManagerUser!]! - managerOrders(status: OrderStatus): [Order!]! + managerOrders(status: OrderStatus, customerId: ID): [Order!]! managerBonusBalances: [ManagerBonusBalance!]! managerWithdrawalRequests(status: WithdrawalStatus): [ManagerWithdrawalRequest!]! registrationRequests(status: RegistrationStatus): [RegistrationRequest!]!