# app/models/user.py """ HealthSync Motivator Batch 사용자 모델 (user_service.user) """ from pydantic import BaseModel, Field from datetime import datetime, date from typing import Optional class User(BaseModel): """사용자 모델 (user_service.user 테이블)""" member_serial_number: int = Field(..., description="회원 일련번호") google_id: str = Field(..., max_length=255, description="구글 ID") name: str = Field(..., max_length=100, description="사용자 이름") birth_date: date = Field(..., description="생년월일") occupation: Optional[str] = Field(None, max_length=50, description="직업") created_at: datetime = Field(..., description="생성일시") updated_at: datetime = Field(..., description="수정일시") last_login_at: Optional[datetime] = Field(None, description="마지막 로그인") class Config: json_encoders = { datetime: lambda v: v.isoformat(), date: lambda v: v.isoformat() }