-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
Description
🔁 리팩토링이 필요한 부분
- Row 단위로 productRepository.findByCode, inventoryRepository.findByProduct을 호출합니다.
- 업로드 데이터 증가 시 N+1 쿼리 및 불필요한 DB 접근이 발생할 수 있습니다.
- 재고 차감 로직이 조회 + 차감을 반복 수행하여 flush 비용이 증가할 수 있습니다.
🧱 작업 내용
- Excel 전체 row에서 productCode 목록 선수집
- findByCodeIn()을 이용한 Product 일괄 조회 후 Map 캐싱
- Product 기반 Inventory 일괄 조회 후 Map으로 변환
- loop 내부에서는 Map 기반 접근으로 조회 제거
- 재고 차감은 메모리 내 엔티티 상태 변경 후 한 번에 flush
⚠️ 유의 사항 (선택)
리팩토링 시 주의해야 할 부분이나 테스트 범위가 있다면 작성해주세요.
📌 참고 자료
Reactions are currently unavailable