## 🔁 리팩토링이 필요한 부분 - 업로드 전체가 하나의 트랜잭션으로 묶여 있어 롤백 영향 범위가 크다. - 기존 데이터 소프트 delete, 재고 차감, 신규 저장이 단일 흐름으로 결합되어 있다. - 스킵 결과가 문자열 리스트라 원인 분석 및 로그 활용에 한계가 있다. --- ## 🧱 작업 내용 - [ ] 업로드 처리 결과 모델 구조화(SkippedRow: rowIndex, code, reason, message) - [ ] 스킵 사유 enum 또는 코드화(상품 없음, 재고 없음, 재고 부족 등) - [ ] 트랜잭션 범위 재검토(저장 구간 중심 적용 또는 단계별 분리 가능성 검토) - [ ] 로그에 rowIndex 포함하여 업로드 실패/스킵 추적성 강화 --- ## ⚠️ 유의 사항 (선택) - 동일 날짜 재업로드 시 기존 데이터 소프트 삭제 후 재저장 정책 유지 ## 📌 참고 자료 관련 PR(#155, #162)