diff --git a/src/transformers/data_transformer.py b/src/transformers/data_transformer.py index 3111c6a..4fbc0e0 100644 --- a/src/transformers/data_transformer.py +++ b/src/transformers/data_transformer.py @@ -1,6 +1,6 @@ """Data transformation from MySQL to PostgreSQL format.""" from typing import Dict, Any, List, Tuple -from datetime import datetime, time, timedelta +from datetime import datetime, time, timedelta, date from config import ( RAWDATACOR_COLUMNS, ELABDATADISP_FIELD_MAPPING, @@ -15,25 +15,25 @@ class DataTransformer: """Transform MySQL data to PostgreSQL format.""" @staticmethod - def _convert_date(event_date: Any) -> datetime.date: - """Convert event_date to datetime.date object. + def _convert_date(event_date: Any) -> date: + """Convert event_date to date object. Handles multiple input types: - str: Parse from "YYYY-MM-DD" format - - datetime.date: Return as-is - - datetime.datetime: Extract date component + - date: Return as-is + - datetime: Extract date component Args: event_date: Date value from MySQL (str or date) Returns: - datetime.date object + date object """ if isinstance(event_date, str): return datetime.strptime(event_date, "%Y-%m-%d").date() elif isinstance(event_date, datetime): return event_date.date() - elif isinstance(event_date, datetime.date): + elif isinstance(event_date, date): return event_date else: raise ValueError(f"Unsupported event_date type: {type(event_date)}")