feat(claimFilesMetadata) - Added feature for having claims uploaded files metadata

This commit is contained in:
2025-09-17 00:29:58 +05:30
parent cb7123afc5
commit d0a984a7e9
6 changed files with 125 additions and 6 deletions

View File

@@ -121,6 +121,7 @@ model Claim {
staff Staff? @relation("ClaimStaff", fields: [staffId], references: [id])
serviceLines ServiceLine[]
claimFiles ClaimFile[]
payment Payment?
}
@@ -162,6 +163,15 @@ enum ServiceLineStatus {
DENIED
}
model ClaimFile {
id Int @id @default(autoincrement())
claimId Int
filename String
mimeType String
claim Claim @relation(fields: [claimId], references: [id], onDelete: Cascade)
}
model InsuranceCredential {
id Int @id @default(autoincrement())
userId Int

View File

@@ -1,5 +1,8 @@
import { ClaimStatusSchema, ClaimUncheckedCreateInputObjectSchema } from "@repo/db/usedSchemas";
import {z} from "zod";
import {
ClaimStatusSchema,
ClaimUncheckedCreateInputObjectSchema,
} from "@repo/db/usedSchemas";
import { z } from "zod";
import { Decimal } from "decimal.js";
import { Staff } from "@repo/db/types";
@@ -21,7 +24,7 @@ export const updateClaimSchema = (
updatedAt: true,
})
.partial();
export type UpdateClaim = z.infer<typeof updateClaimSchema>;
// Extend the schema to inject `userId` manually (since it's not passed by the client)
@@ -34,7 +37,11 @@ export const ExtendedClaimSchema = (
export type Claim = z.infer<typeof ClaimUncheckedCreateInputObjectSchema>;
export type ClaimStatus = z.infer<typeof ClaimStatusSchema>;
export type ClaimFileMeta = {
id?: number;
filename: string;
mimeType?: string | null;
};
//used in claim-form
export interface InputServiceLine {
@@ -64,4 +71,5 @@ export type ClaimWithServiceLines = Claim & {
status: string;
}[];
staff?: Staff | null;
claimFiles?: ClaimFileMeta[] | null;
};