diff --git a/src/main/types/cleaner.types.ts b/src/main/types/cleaner.types.ts new file mode 100644 index 0000000..36094cc --- /dev/null +++ b/src/main/types/cleaner.types.ts @@ -0,0 +1,21 @@ +export interface CleanerInput { + orderNumbers: string[]; + materialCodes: string[]; + dryRun: boolean; + onProgress?: (message: string, progress: number) => void; +} + +export interface CleanerResult { + ordersProcessed: number; + materialsDeleted: number; + materialsSkipped: number; + errors: string[]; + details: OrderCleanDetail[]; +} + +export interface OrderCleanDetail { + orderNumber: string; + materialsDeleted: number; + materialsSkipped: number; + errors: string[]; +} \ No newline at end of file diff --git a/src/main/types/erp.types.ts b/src/main/types/erp.types.ts new file mode 100644 index 0000000..b57ad5a --- /dev/null +++ b/src/main/types/erp.types.ts @@ -0,0 +1,16 @@ +export interface ErpConfig { + url: string; + username: string; + password: string; +} + +export interface ErpSession { + browser: import('playwright').Browser; + context: import('playwright').BrowserContext; + page: import('playwright').Page; + isLoggedIn: boolean; +} + +export interface ProgressCallback { + (message: string, progress?: number): void; +} \ No newline at end of file diff --git a/src/main/types/extractor.types.ts b/src/main/types/extractor.types.ts new file mode 100644 index 0000000..14addb6 --- /dev/null +++ b/src/main/types/extractor.types.ts @@ -0,0 +1,17 @@ +export interface ExtractorInput { + orderNumbers: string[]; + batchSize?: number; + onProgress?: (message: string, progress: number) => void; +} + +export interface ExtractorResult { + downloadedFiles: string[]; + mergedFile: string | null; + recordCount: number; + errors: string[]; +} + +export interface OrderInfo { + orderNumber: string; + productionId: string; +} \ No newline at end of file