feat: Integrate CSV cleaning functionality into the application, adding a new GUI tab for user interaction, enabling CSV loading, analysis, and rule application for data cleaning. Implement backend tracking for batch processing and enhance the BatchProcessor with tracking capabilities.

This commit is contained in:
erik
2026-04-22 00:04:15 -05:00
parent 7a38b0843b
commit 6b3eccdc19
30 changed files with 3590 additions and 19 deletions
+1
View File
@@ -0,0 +1 @@
+54
View File
@@ -0,0 +1,54 @@
from pydantic import BaseModel
from typing import Optional, List, Dict
from datetime import datetime
from enum import Enum
class BatchStatus(str, Enum):
PENDING = "pending"
PROCESSING = "processing"
COMPLETED = "completed"
FAILED = "failed"
class BatchBase(BaseModel):
root_path: str
total_radicados: int
csv_output_path: Optional[str] = None
hostname: Optional[str] = None
username: Optional[str] = None
config: Optional[Dict] = None
class BatchCreate(BatchBase):
pass
class BatchUpdate(BaseModel):
status: Optional[BatchStatus] = None
current_radicado_index: Optional[int] = None
success_count: Optional[int] = None
error_count: Optional[int] = None
total_tokens: Optional[int] = None
total_cost_usd: Optional[float] = None
last_error: Optional[str] = None
current_phase: Optional[str] = None
current_radicado: Optional[str] = None
class BatchRead(BatchBase):
id: str
status: BatchStatus
current_radicado_index: int = 0
success_count: int = 0
error_count: int = 0
total_tokens: int = 0
total_cost_usd: float = 0.0
last_error: Optional[str] = None
current_phase: Optional[str] = None
current_radicado: Optional[str] = None
created_at: datetime
updated_at: datetime
class Config:
from_attributes = True