from pydantic import BaseModel from typing import Optional from datetime import datetime class AccountBase(BaseModel): username: str password: str status: Optional[int] = 1 today_updated: Optional[int] = 0 project_name: Optional[str] = None class AccountCreate(AccountBase): pass class AccountUpdate(BaseModel): username: Optional[str] = None password: Optional[str] = None status: Optional[int] = None today_updated: Optional[int] = None project_name: Optional[str] = None class AccountResponse(AccountBase): id: int created_at: datetime updated_at: datetime class Config: from_attributes = True class AccountListRequest(BaseModel): skip: Optional[int] = 0 limit: Optional[int] = 100 class AccountGetRequest(BaseModel): account_id: Optional[int] = None username: Optional[str] = None project_name: Optional[str] = None status: Optional[int] = None today_updated: Optional[int] = None class AccountUpdateRequest(BaseModel): account_id: int account_data: AccountUpdate class AccountDeleteRequest(BaseModel): account_id: int