690320:2126 UUID agian by Claude Sonnet #02
Build and Deploy / deploy (push) Failing after 4m27s
Build and Deploy / deploy (push) Failing after 4m27s
This commit is contained in:
@@ -89,10 +89,10 @@ export interface CirculationListResponse {
|
||||
* DTO for creating a circulation
|
||||
*/
|
||||
export interface CreateCirculationDto {
|
||||
correspondenceId: number | string;
|
||||
projectId?: number | string;
|
||||
correspondenceId: string; // ADR-019: UUID string only
|
||||
projectId?: string; // ADR-019: UUID string only
|
||||
subject: string;
|
||||
assigneeIds: (number | string)[];
|
||||
assigneeIds: string[]; // ADR-019: UUID string only
|
||||
remarks?: string;
|
||||
}
|
||||
|
||||
|
||||
@@ -76,7 +76,7 @@ export interface Correspondence {
|
||||
}
|
||||
|
||||
export interface CreateCorrespondenceDto {
|
||||
projectId: number;
|
||||
projectId: string; // ADR-019: UUID string only
|
||||
typeId: number;
|
||||
subTypeId?: number;
|
||||
disciplineId?: number;
|
||||
@@ -87,7 +87,7 @@ export interface CreateCorrespondenceDto {
|
||||
description?: string;
|
||||
details?: Record<string, unknown>;
|
||||
isInternal?: boolean;
|
||||
originatorId?: number;
|
||||
recipients?: { organizationId: number; type: 'TO' | 'CC' }[];
|
||||
originatorId?: string; // ADR-019: UUID string only
|
||||
recipients?: { organizationId: string; type: 'TO' | 'CC' }[]; // ADR-019: UUID string only
|
||||
attachments?: File[];
|
||||
}
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
// File: src/types/dto/circulation/create-circulation.dto.ts
|
||||
|
||||
export interface CreateCirculationDto {
|
||||
/** เอกสารต้นเรื่องที่จะเวียน (Correspondence ID or UUID) */
|
||||
correspondenceId: number | string;
|
||||
/** UUID ของเอกสารต้นเรื่องที่จะเวียน (ADR-019: UUID string only) */
|
||||
correspondenceId: string;
|
||||
|
||||
/** หัวข้อเรื่อง (Subject) */
|
||||
subject: string;
|
||||
|
||||
/** รายชื่อ User ID/UUID ที่ต้องการส่งให้ (ผู้รับผิดชอบ) */
|
||||
assigneeIds: (number | string)[];
|
||||
/** UUID ของ User ที่ต้องการส่งให้ (ADR-019: UUID string only) */
|
||||
assigneeIds: string[];
|
||||
|
||||
/** หมายเหตุเพิ่มเติม (ถ้ามี) */
|
||||
remarks?: string;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
export interface CreateContractDto {
|
||||
contractCode: string;
|
||||
contractName: string;
|
||||
projectId: number | string;
|
||||
projectId: string; // ADR-019: UUID string only
|
||||
description?: string;
|
||||
startDate?: string;
|
||||
endDate?: string;
|
||||
@@ -11,7 +11,7 @@ export type UpdateContractDto = Partial<CreateContractDto>;
|
||||
|
||||
export interface SearchContractDto {
|
||||
search?: string;
|
||||
projectId?: number | string;
|
||||
projectId?: string; // ADR-019: UUID string only
|
||||
page?: number;
|
||||
limit?: number;
|
||||
}
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
// File: src/types/dto/correspondence/create-correspondence.dto.ts
|
||||
|
||||
export interface CreateCorrespondenceDto {
|
||||
/** ID or UUID ของโครงการ */
|
||||
projectId: number | string;
|
||||
/** UUID ของโครงการ (ADR-019: UUID string only) */
|
||||
projectId: string;
|
||||
|
||||
/** ID ของประเภทเอกสาร (เช่น RFA, LETTER) */
|
||||
typeId: number;
|
||||
@@ -34,11 +34,11 @@ export interface CreateCorrespondenceDto {
|
||||
/** เอกสารภายในหรือไม่ (True = ภายใน) */
|
||||
isInternal?: boolean;
|
||||
|
||||
/** * ✅ Field สำหรับ Impersonation (เลือกองค์กรผู้ส่ง)
|
||||
* ใช้กรณี Admin สร้างเอกสารแทนผู้อื่น
|
||||
/** ✅ Field สำหรับ Impersonation (เลือกองค์กรผู้ส่ง)
|
||||
* ใช้กรณี Admin สร้างเอกสารแทนผู้อื่น (ADR-019: UUID string only)
|
||||
*/
|
||||
originatorId?: number | string;
|
||||
originatorId?: string;
|
||||
|
||||
/** รายชื่อผู้รับ */
|
||||
recipients?: { organizationId: number | string; type: 'TO' | 'CC' }[];
|
||||
/** รายชื่อผู้รับ (ADR-019: UUID string only) */
|
||||
recipients?: { organizationId: string; type: 'TO' | 'CC' }[];
|
||||
}
|
||||
|
||||
@@ -3,8 +3,8 @@ import type { RFAItem } from '@/types/rfa';
|
||||
|
||||
// --- Create ---
|
||||
export interface CreateRfaDto {
|
||||
/** ID or UUID ของโครงการ */
|
||||
projectId: number | string; // ADR-019: Accept UUID
|
||||
/** UUID ของโครงการ (ADR-019: UUID string only) */
|
||||
projectId: string;
|
||||
|
||||
/** ประเภท RFA (เช่น DWG, MAT) */
|
||||
rfaTypeId: number;
|
||||
@@ -24,8 +24,8 @@ export interface CreateRfaDto {
|
||||
/** Contract UUID (optional) */
|
||||
contractId?: string; // ADR-019: Contract UUID
|
||||
|
||||
/** ส่งถึงใคร (สำหรับ Routing Step 1) */
|
||||
toOrganizationId: number | string; // ADR-019: Accept UUID
|
||||
/** ส่งถึงใคร (สำหรับ Routing Step 1) (ADR-019: UUID string only) */
|
||||
toOrganizationId: string;
|
||||
|
||||
/** รายละเอียดเพิ่มเติม */
|
||||
description?: string;
|
||||
@@ -48,8 +48,8 @@ export type UpdateRfaDto = Partial<CreateRfaDto>;
|
||||
|
||||
// --- Search ---
|
||||
export interface SearchRfaDto {
|
||||
/** Filter by Project ID or UUID (optional to allow cross-project search) */
|
||||
projectId?: number | string; // ADR-019: Accept UUID
|
||||
/** Filter by Project UUID (ADR-019: UUID string only) */
|
||||
projectId?: string;
|
||||
|
||||
/** กรองตามประเภท RFA */
|
||||
rfaTypeId?: number;
|
||||
|
||||
@@ -9,12 +9,12 @@ export enum TransmittalPurpose {
|
||||
|
||||
// --- Create ---
|
||||
export interface CreateTransmittalDto {
|
||||
projectId?: number | string; // ADR-019: Accept UUID
|
||||
recipientOrganizationId?: number | string; // ADR-019: Accept UUID
|
||||
projectId?: string; // ADR-019: UUID string only
|
||||
recipientOrganizationId?: string; // ADR-019: UUID string only
|
||||
subject: string;
|
||||
purpose?: string;
|
||||
remarks?: string;
|
||||
correspondenceId: number | string; // ADR-019: Accept UUID
|
||||
correspondenceId: string; // ADR-019: UUID string only
|
||||
items: CreateTransmittalItemDto[];
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ export type UpdateTransmittalDto = Partial<CreateTransmittalDto>;
|
||||
// --- Search ---
|
||||
export interface SearchTransmittalDto {
|
||||
/** บังคับระบุ Project */
|
||||
projectId: number | string; // ADR-019: Accept UUID
|
||||
projectId: string; // ADR-019: UUID string only
|
||||
|
||||
purpose?: TransmittalPurpose;
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ export interface CreateUserDto {
|
||||
firstName?: string;
|
||||
lastName?: string;
|
||||
lineId?: string;
|
||||
primaryOrganizationId?: number | string; // ADR-019: Accept UUID
|
||||
primaryOrganizationId?: string; // ADR-019: UUID string only
|
||||
isActive?: boolean;
|
||||
}
|
||||
|
||||
|
||||
@@ -54,9 +54,9 @@ export interface RFA {
|
||||
}
|
||||
|
||||
export interface CreateRFADto {
|
||||
projectId: number | string; // ADR-019: Accept UUID
|
||||
projectId: string; // ADR-019: UUID string only
|
||||
contractId?: string; // ADR-019: Contract UUID
|
||||
toOrganizationId?: number | string; // ADR-019: Recipient org UUID
|
||||
toOrganizationId?: string; // ADR-019: UUID string only
|
||||
rfaTypeId: number;
|
||||
disciplineId?: number;
|
||||
subject: string;
|
||||
|
||||
@@ -30,7 +30,7 @@ export interface TransmittalItem {
|
||||
export interface Transmittal {
|
||||
uuid: string; // ADR-019: from correspondence.uuid
|
||||
id?: number; // Excluded from API responses (ADR-019)
|
||||
correspondenceId?: number | string;
|
||||
correspondenceId?: string; // ADR-019: UUID string only
|
||||
transmittalNo: string;
|
||||
subject: string;
|
||||
purpose?: TransmittalPurpose;
|
||||
@@ -74,9 +74,9 @@ export interface CreateTransmittalItemDto {
|
||||
* DTO for creating a transmittal
|
||||
*/
|
||||
export interface CreateTransmittalDto {
|
||||
projectId?: number | string; // ADR-019: Accept UUID
|
||||
recipientOrganizationId?: number | string; // ADR-019: Accept UUID
|
||||
correspondenceId: number | string; // ADR-019: Accept UUID
|
||||
projectId?: string; // ADR-019: UUID string only
|
||||
recipientOrganizationId?: string; // ADR-019: UUID string only
|
||||
correspondenceId: string; // ADR-019: UUID string only
|
||||
subject: string;
|
||||
purpose?: TransmittalPurpose;
|
||||
remarks?: string;
|
||||
@@ -89,6 +89,6 @@ export interface CreateTransmittalDto {
|
||||
export interface SearchTransmittalDto {
|
||||
page?: number;
|
||||
limit?: number;
|
||||
projectId?: number | string; // ADR-019: Accept UUID
|
||||
projectId?: string; // ADR-019: UUID string only
|
||||
search?: string;
|
||||
}
|
||||
|
||||
@@ -5,10 +5,9 @@ export interface Role {
|
||||
}
|
||||
|
||||
export interface UserOrganization {
|
||||
organizationId: number;
|
||||
orgCode: string;
|
||||
orgName: string;
|
||||
orgNameTh?: string;
|
||||
uuid: string; // ADR-019: Public identifier
|
||||
organizationCode: string; // Matches backend Organization entity
|
||||
organizationName: string; // Matches backend Organization entity
|
||||
}
|
||||
|
||||
export interface User {
|
||||
@@ -20,8 +19,8 @@ export interface User {
|
||||
lastName: string;
|
||||
isActive: boolean;
|
||||
lineId?: string;
|
||||
primaryOrganizationId?: number | string; // ADR-019: May be INT or UUID
|
||||
organization?: UserOrganization;
|
||||
organization?: UserOrganization; // ADR-019: use organization.uuid — never expose INT id
|
||||
|
||||
roles?: Role[];
|
||||
|
||||
// Security fields (from backend v1.5.1)
|
||||
@@ -42,7 +41,7 @@ export interface CreateUserDto {
|
||||
password?: string;
|
||||
isActive: boolean;
|
||||
lineId?: string;
|
||||
primaryOrganizationId?: number | string; // ADR-019: Accept UUID
|
||||
primaryOrganizationId?: string; // ADR-019: UUID string only
|
||||
roleIds: number[];
|
||||
}
|
||||
|
||||
@@ -53,5 +52,5 @@ export interface SearchUserDto {
|
||||
limit?: number;
|
||||
search?: string;
|
||||
roleId?: number;
|
||||
primaryOrganizationId?: number | string; // ADR-019: Accept UUID
|
||||
primaryOrganizationId?: string; // ADR-019: UUID string only
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user