feat: SQLAlchemy 모델 및 스키마 파일 생성 완료
- database.py: PostgreSQL 연결 설정 및 세션 관리 - models.py: Project, File, Material SQLAlchemy 모델 정의 - schemas.py: Pydantic 요청/응답 스키마 정의 - 완전한 데이터베이스 연동 구조 완성
This commit is contained in:
36
backend/app/schemas.py
Normal file
36
backend/app/schemas.py
Normal file
@@ -0,0 +1,36 @@
|
||||
from pydantic import BaseModel
|
||||
from datetime import datetime
|
||||
from typing import Optional, List
|
||||
from decimal import Decimal
|
||||
|
||||
# 프로젝트 스키마
|
||||
class ProjectBase(BaseModel):
|
||||
official_project_code: Optional[str] = None
|
||||
project_name: str
|
||||
client_name: Optional[str] = None
|
||||
design_project_code: Optional[str] = None
|
||||
design_project_name: Optional[str] = None
|
||||
description: Optional[str] = None
|
||||
notes: Optional[str] = None
|
||||
|
||||
class ProjectCreate(ProjectBase):
|
||||
pass
|
||||
|
||||
class ProjectUpdate(ProjectBase):
|
||||
project_name: Optional[str] = None
|
||||
|
||||
class Project(ProjectBase):
|
||||
id: int
|
||||
is_code_matched: bool
|
||||
status: str
|
||||
created_at: datetime
|
||||
updated_at: datetime
|
||||
|
||||
class Config:
|
||||
from_attributes = True
|
||||
|
||||
# 응답 스키마
|
||||
class ProjectResponse(BaseModel):
|
||||
projects: List[Project]
|
||||
total: int
|
||||
message: str
|
||||
Reference in New Issue
Block a user