AkJeond commited on
Commit
68e2fa7
·
1 Parent(s): 3e96ff5

Revert "feat(projects): 상태 전용 API와 프런트 폴링 최적화"

Browse files

This reverts commit 57c3a6dbdc6267f78b5c75e98465f514f5d3d203.

Files changed (3) hide show
  1. app/crud.py +1 -16
  2. app/routers/projects.py +0 -29
  3. app/schemas.py +0 -14
app/crud.py CHANGED
@@ -8,7 +8,7 @@ models.py와 100% 호환
8
  """
9
  from sqlalchemy.orm import Session, joinedload
10
  from sqlalchemy import desc, asc, and_, or_, func
11
- from typing import Optional, List, Dict, Any, Tuple
12
  from datetime import datetime
13
  from . import models, schemas
14
  from passlib.context import CryptContext
@@ -208,21 +208,6 @@ def get_project_with_pages(db: Session, project_id: int) -> Optional[models.Proj
208
  ).first()
209
 
210
 
211
- def get_project_page_statuses(db: Session, project_id: int) -> List[Tuple[int, int, models.AnalysisStatusEnum]]:
212
- """프로젝트 페이지 ID, 번호, 상태만 조회"""
213
- rows = (
214
- db.query(
215
- models.Page.page_id,
216
- models.Page.page_number,
217
- models.Page.analysis_status,
218
- )
219
- .filter(models.Page.project_id == project_id)
220
- .order_by(asc(models.Page.page_number))
221
- .all()
222
- )
223
- return rows
224
-
225
-
226
  def get_project_with_details(db: Session, project_id: int) -> Optional[models.Project]:
227
  """프로젝트 전체 정보 조회 (페이지, 문서타입, 통합결과)"""
228
  return db.query(models.Project).options(
 
8
  """
9
  from sqlalchemy.orm import Session, joinedload
10
  from sqlalchemy import desc, asc, and_, or_, func
11
+ from typing import Optional, List, Dict, Any
12
  from datetime import datetime
13
  from . import models, schemas
14
  from passlib.context import CryptContext
 
208
  ).first()
209
 
210
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
211
  def get_project_with_details(db: Session, project_id: int) -> Optional[models.Project]:
212
  """프로젝트 전체 정보 조회 (페이지, 문서타입, 통합결과)"""
213
  return db.query(models.Project).options(
app/routers/projects.py CHANGED
@@ -91,35 +91,6 @@ def get_project_detail(
91
  )
92
 
93
 
94
- @router.get(
95
- "/{project_id}/status",
96
- response_model=schemas.ProjectStatusResponse,
97
- )
98
- def get_project_status(
99
- project_id: int,
100
- db: Session = Depends(get_db),
101
- ) -> schemas.ProjectStatusResponse:
102
- project = crud.get_project(db, project_id)
103
- if not project:
104
- raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="프로젝트를 찾을 수 없습니다.")
105
-
106
- page_rows = crud.get_project_page_statuses(db, project_id)
107
- page_statuses = [
108
- schemas.ProjectPageStatusResponse(
109
- page_id=row[0],
110
- page_number=row[1],
111
- analysis_status=row[2],
112
- )
113
- for row in page_rows
114
- ]
115
-
116
- return schemas.ProjectStatusResponse(
117
- project_id=project.project_id,
118
- status=project.status,
119
- pages=page_statuses,
120
- )
121
-
122
-
123
  @router.patch(
124
  "/{project_id}",
125
  response_model=schemas.ProjectResponse,
 
91
  )
92
 
93
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
94
  @router.patch(
95
  "/{project_id}",
96
  response_model=schemas.ProjectResponse,
app/schemas.py CHANGED
@@ -165,20 +165,6 @@ class ProjectWithPagesResponse(ProjectResponse):
165
  pages: List["PageResponse"] = []
166
 
167
 
168
- class ProjectPageStatusResponse(BaseModel):
169
- """페이지 상태 전용 응답"""
170
- page_id: int
171
- page_number: int
172
- analysis_status: AnalysisStatusEnum
173
-
174
-
175
- class ProjectStatusResponse(BaseModel):
176
- """프로젝트 상태 및 페이지 상태 요약"""
177
- project_id: int
178
- status: ProjectStatusEnum
179
- pages: List[ProjectPageStatusResponse]
180
-
181
-
182
  # ============================================================================
183
  # 4. Page Schemas
184
  # ============================================================================
 
165
  pages: List["PageResponse"] = []
166
 
167
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
168
  # ============================================================================
169
  # 4. Page Schemas
170
  # ============================================================================