From a37ca068c2e24eca44278cc07700c71bd2e616fe Mon Sep 17 00:00:00 2001 From: "Claude (auto-fix)" Date: Fri, 19 Jun 2026 03:34:21 +0530 Subject: [PATCH] fix(my-orders): correct closed PO filters for manager and submitter Managers and superusers were silently filtered to only their own submitted POs because submitterId: userId was applied unconditionally. Submitters were also shown MGR_APPROVED, SENT_FOR_PAYMENT, PAID_DELIVERED and REJECTED orders alongside CLOSED ones. Fix: managers/superusers see all CLOSED POs (no submitterId filter); submitters see only their own CLOSED POs. Fixes #6 --- App/app/(portal)/my-orders/page.tsx | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/App/app/(portal)/my-orders/page.tsx b/App/app/(portal)/my-orders/page.tsx index 2bd44a8..d3b913c 100644 --- a/App/app/(portal)/my-orders/page.tsx +++ b/App/app/(portal)/my-orders/page.tsx @@ -15,11 +15,12 @@ export default async function MyOrdersPage() { const { role, id: userId } = session.user; if (!["TECHNICAL", "MANNING", "MANAGER", "SUPERUSER"].includes(role)) redirect("/dashboard"); + const isManager = role === "MANAGER" || role === "SUPERUSER"; + const closed = await db.purchaseOrder.findMany({ - where: { - submitterId: userId, - status: { in: ["MGR_APPROVED", "SENT_FOR_PAYMENT", "PAID_DELIVERED", "CLOSED", "REJECTED"] }, - }, + where: isManager + ? { status: "CLOSED" } + : { submitterId: userId, status: "CLOSED" }, orderBy: { updatedAt: "desc" }, include: { vessel: { select: { name: true } },