Files
lcbp3/frontend/types/rfa.ts
admin ec35521258
Some checks failed
Spec Validation / validate-markdown (push) Has been cancelled
Spec Validation / validate-diagrams (push) Has been cancelled
Spec Validation / check-todos (push) Has been cancelled
251213:1509 Docunment Number Businee Rule not correct
2025-12-13 15:09:01 +07:00

66 lines
1.5 KiB
TypeScript

export interface RFAItem {
id?: number;
itemNo: string;
description: string;
quantity: number;
unit: string;
status?: "PENDING" | "APPROVED" | "REJECTED";
}
export interface RFA {
id: number; // Shared PK with Correspondence
rfaTypeId: number;
createdBy: number;
disciplineId?: number;
revisions: {
id: number;
revisionNumber: number;
subject: string;
isCurrent: boolean;
createdAt?: string;
statusCode?: { statusCode: string; statusName: string };
items?: {
shopDrawingRevision?: {
id: number;
revisionLabel: string;
shopDrawing?: { drawingType?: { hasNumber: boolean } }; // Mock structure
attachments?: { id: number; url: string; name: string }[]
}
}[];
}[];
discipline?: {
id: number;
name: string;
code: string;
};
// Shared Correspondence Relation
correspondence?: {
id: number;
correspondenceNumber: string;
projectId: number;
originatorId?: number;
createdAt?: string;
project?: {
projectName: string;
projectCode: string;
};
};
// Deprecated/Mapped fields
correspondenceNumber?: string; // Convenience accessor
}
export interface CreateRFADto {
projectId: number;
rfaTypeId: number;
disciplineId?: number;
subject: string;
body?: string; // [New]
remarks?: string; // [New]
dueDate?: string; // [New]
description?: string;
documentDate?: string;
details?: Record<string, any>;
shopDrawingRevisionIds?: number[];
}