From 3e15e55ea2d3291dd60a94eb417358302f928a0c Mon Sep 17 00:00:00 2001 From: Akhil Meka Date: Wed, 17 Sep 2025 17:25:43 +0530 Subject: [PATCH] feat: let bot R/W RTS, add fileValidationStatus to RTS --- src/rts/rts.schema.ts | 2 ++ src/rts/rts.service.ts | 2 ++ src/utils/roles.ts | 2 +- 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/rts/rts.schema.ts b/src/rts/rts.schema.ts index b347cf3..2a6d0a9 100644 --- a/src/rts/rts.schema.ts +++ b/src/rts/rts.schema.ts @@ -55,6 +55,7 @@ const rtsSchema = new mongoose.Schema({ ref: "user", }, taggedUsers: Array, + fileValidationStatus: String, }); export const rtsFields = Object.keys(rtsSchema.paths).filter( @@ -110,6 +111,7 @@ const rtsUpdateInput = z.object({ .optional(), assignedTo: z.string().optional(), status: z.string().optional(), + fileValidationStatus: z.string().optional(), }); const rtsNewUpload = z.object({ diff --git a/src/rts/rts.service.ts b/src/rts/rts.service.ts index 15c8a09..ec2fb6a 100644 --- a/src/rts/rts.service.ts +++ b/src/rts/rts.service.ts @@ -37,6 +37,7 @@ export async function createRts( client: user.role == "client" ? defaultClient : input.client, createdAt: new Date(), createdBy: user.userId ?? null, + fileValidationStatus: "pending", }); await createAlert( @@ -162,6 +163,7 @@ export async function listRts( priority: 1, dueDate: 1, taggedUsers: 1, + fileValidationStatus: 1, county: { $let: { vars: { county: { $arrayElemAt: ["$countyRec", 0] } }, diff --git a/src/utils/roles.ts b/src/utils/roles.ts index 7d052ba..f431cc2 100644 --- a/src/utils/roles.ts +++ b/src/utils/roles.ts @@ -164,7 +164,7 @@ export const rules: Record< }, }, bot: { - claims: ["file:download", "note:write"], + claims: ["file:download", "note:write", "rts:read", "rts:write"], hiddenFields: { orgs: ["__v"], permits: ["__v"],