hyerimmy 910bd902b1
Some checks failed
HealthSync Intelligence CI / build-and-push (push) Has been cancelled
feat : initial commit
2025-06-20 05:28:30 +00:00

36 lines
1.2 KiB
Python

"""
HealthSync AI 기본 데이터 모델
"""
from pydantic import BaseModel, Field
from datetime import datetime
from typing import Optional, Generic, TypeVar, List
from enum import Enum
# Generic 타입 정의
T = TypeVar('T')
class BaseResponse(BaseModel, Generic[T]):
"""기본 응답 모델"""
success: bool = Field(default=True, description="요청 성공 여부")
message: str = Field(default="", description="응답 메시지")
data: Optional[T] = Field(default=None, description="응답 데이터")
timestamp: datetime = Field(default_factory=datetime.now, description="응답 시간")
class Config:
json_encoders = {
datetime: lambda v: v.isoformat()
}
class ErrorResponse(BaseModel):
"""에러 응답 모델"""
success: bool = Field(default=False, description="요청 성공 여부")
error_code: str = Field(..., description="에러 코드")
message: str = Field(..., description="에러 메시지")
details: Optional[dict] = Field(default=None, description="에러 상세 정보")
timestamp: datetime = Field(default_factory=datetime.now, description="에러 발생 시간")
class Config:
json_encoders = {
datetime: lambda v: v.isoformat()
}