feat(backend): ํ์ผ ์
๋ก๋ API ์๋ํ - project_id/page_number ์๋ ์ฒ๋ฆฌ## ๋ณ๊ฒฝ ์ฌํญ### pages.py ์ฃผ์ ์์ - upload_page ์๋ํฌ์ธํธ์์ project_id, page_number ํ๋ผ๋ฏธํฐ ์ ๊ฑฐ- ํ๋ก ํธ์๋๋ file๋ง ์ ์กํ๋ฉด ๋๋๋ก ๊ฐ์ํ- ๋ฐฑ์๋์์ project_id, page_number ์๋ ๊ณ์ฐ ์ฒ๋ฆฌ### ์ถ๊ฐ๋ ํฌํผ ํจ์1. _get_or_create_default_project(db) - ์ฒซ ๋ฒ์งธ ํ๋ก์ ํธ ์๋ ์กฐํ - ํ๋ก์ ํธ๊ฐ ์์ผ๋ฉด '๊ธฐ๋ณธ ํ๋ก์ ํธ' ์๋ ์์ฑ - doc_type_id=1 (worksheet), analysis_mode=AUTO ๊ธฐ๋ณธ๊ฐ2. _calculate_next_page_number(db, project_id) - SELECT MAX(page_number) + 1๋ก ๋ค์ ํ์ด์ง ๋ฒํธ ๊ณ์ฐ - ๊ฐ์ ํ๋ก์ ํธ ๋ด์์ ์์ฐจ์ ํ์ด์ง ๋ฒํธ ๋ณด์ฅ### ์
๋ก๋ ๋ก์ง ๊ฐ์ - ์ด๋ฏธ์ง ์
๋ก๋: ๋จ์ผ ํ์ด์ง ์๋ ์์ฑ (page_number ์๋ ํ ๋น)- PDF ์
๋ก๋: ๋ค์ค ํ์ด์ง ์๋ ์์ฑ (์ฐ์๋ page_number ํ ๋น)- ์๋ฌ ์ฒ๋ฆฌ ๊ฐํ: ํ๋ก์ ํธ ์์ฑ ์คํจ ์ ๋ช
ํํ ์๋ฌ ๋ฉ์์ง## API ๋ณ๊ฒฝ- POST /api/pages/upload - Before: FormData { project_id, page_number, file } - After: FormData { file }## ๊ธฐ์ ์ ๊ฐ์ - ํ๋ก ํธ์๋-๋ฐฑ์๋ ๊ฒฐํฉ๋ ๊ฐ์- ์ฌ์ฉ์ ์
๋ ฅ ์ค๋ฅ ๊ฐ๋ฅ์ฑ ์ ๊ฑฐ- RESTful API ์์น ์ค์ (๋ฆฌ์์ค ์๋ ๊ด๋ฆฌ)## ํ
์คํธ ํ์- [ ] ์ด๋ฏธ์ง ์
๋ก๋ ์ page_number ์๋ ์ฆ๊ฐ ํ์ธ- [ ] PDF ์
๋ก๋ ์ ๋ค์ค ํ์ด์ง ์์ฑ ํ์ธ- [ ] ๋น DB์์ ํ๋ก์ ํธ ์๋ ์์ฑ ํ์ธ- [ ] ๊ธฐ์กด ํ๋ก์ ํธ์ ํ์ด์ง ์ถ๊ฐ ์ ๋ฒํธ ์ค๋ณต ๋ฐฉ์ง ํ์ธRelated: #ํ๋ก ํธ์๋_๋ฐฑ์๋_์ฐ๋
KwanHak
commited on