Skip to content

[Main] feat: 출고요청시 창고이름 변경#57

Merged
ksoheee merged 1 commit intomainfrom
feat/#30
Nov 10, 2025
Merged

[Main] feat: 출고요청시 창고이름 변경#57
ksoheee merged 1 commit intomainfrom
feat/#30

Conversation

@ksoheee
Copy link
Contributor

@ksoheee ksoheee commented Nov 10, 2025

📝 Summary

  • 출고요청 "서울대리점" 이름에서 "서울"추출해서 "서울창고"로 변경

Summary by CodeRabbit

릴리스 노트

버그 수정

  • 구매 주문 처리 중 특정 요청자 유형에 대한 창고 할당 로직이 개선되었습니다.
  • 주문 승인 프로세스의 창고 지정 및 배송 관리가 더욱 정확해졌습니다.

@ksoheee ksoheee self-assigned this Nov 10, 2025
@coderabbitai
Copy link

coderabbitai bot commented Nov 10, 2025

Walkthrough

PurchaseOrderServiceImpl.java에서 구매 주문 승인 흐름을 수정했습니다. 요청자 코드가 "대리점"을 포함할 때, 이를 "창고" 코드로 변환한 새로운 warehouseCode 변수를 도입하고, 창고 할당 및 배송 명령 생성 시 이 변수를 사용하도록 업데이트했습니다.

Changes

집단 / 파일 변경 요약
승인 흐름 로직 업데이트
src/main/java/com/gearfirst/backend/api/order/service/PurchaseOrderServiceImpl.java
요청자 코드에서 "대리점"을 "창고"로 변환하는 warehouseCode 로컬 변수 추가. 창고 할당 및 배송 명령 생성 시 조건에 따라 변환된 코드 사용

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8분

  • 변수 변환 로직과 조건부 할당 로직이 명확한지 확인
  • "대리점"에서 "창고"로의 코드 변환 규칙 검증

Possibly related PRs

  • [Main] feat: 입고 요청 추가, 문서 정리 #55: 동일하게 PurchaseOrderServiceImpl의 승인 흐름에서 지점("대리점")과 창고("창고")를 다르게 처리하며, 창고에 대한 수령 생성 요청 도입 및 전송되는 창고 코드 변경
  • [Main] 엔티티필드 이름변경 #48: 동일하게 PurchaseOrderServiceImpl의 창고/승인 흐름을 수정하며, requesterCode에서 warehouseCode 도출 및 할당과 배송/선적 로직에 영향

Pre-merge checks and finishing touches

❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Description check ❓ Inconclusive 설명에 요약 섹션이 포함되어 있으나 관련 이슈, 질문 포인트, 참고자료 섹션이 누락되어 있습니다. 기본 내용은 있지만 템플릿 구조를 완전히 따르지 않았습니다. 관련 이슈(#번호), 팀원에게 알릴 사항이나 질문 포인트, 참고 자료를 템플릿에 따라 추가하여 완성도를 높이세요.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed 제목이 PR의 주요 변경 사항을 명확하게 설명하고 있습니다. 출고요청 시 창고이름 변경이라는 핵심 변화를 간결하게 요약하고 있습니다.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feat/#30

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (1)
src/main/java/com/gearfirst/backend/api/order/service/PurchaseOrderServiceImpl.java (1)

368-368: 로직이 올바르게 구현되었습니다.

요청자 코드에서 "대리점"을 "창고"로 변환하는 로직이 PR 목표를 정확하게 구현했습니다.

더 나은 코드 구조를 위해 warehouseCode 변수 선언을 실제 사용되는 if 블록(377번 줄) 내부로 이동하는 것을 고려해보세요:

     String code = order.getRequesterCode();
-    String warehouseCode = code.replace("대리점", "창고");
     //발주 품목 조회
     List<OrderItem> items = orderItemRepository.findByPurchaseOrder_Id(orderId);

     try {
         //비고 저장
         order.updateNote(note);
         //상태 변경
         order.decide(OrderStatus.APPROVED);
         if(order.getRequesterCode().contains("대리점")){
+            String warehouseCode = code.replace("대리점", "창고");
             //창고지정
             order.assignWarehouse(warehouseCode);
📜 Review details

Configuration used: Path: .coderabbit.yml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between c417e7a and a6045eb.

📒 Files selected for processing (1)
  • src/main/java/com/gearfirst/backend/api/order/service/PurchaseOrderServiceImpl.java (2 hunks)
🧰 Additional context used
🧠 Learnings (3)
📓 Common learnings
Learnt from: ksoheee
Repo: Gear-First/gearfirst-order-BE PR: 28
File: src/main/java/com/gearfirst/backend/api/order/service/PurchaseOrderServiceImpl.java:146-148
Timestamp: 2025-10-30T09:27:59.696Z
Learning: In the gearfirst-order-BE project, the `completeRepairAndGetParts` method in `PurchaseOrderServiceImpl` is called exclusively from the repair reception page, ensuring that the `receiptNum` parameter is always present and does not require null validation.
📚 Learning: 2025-10-28T05:05:49.715Z
Learnt from: ksoheee
Repo: Gear-First/gearfirst-order-BE PR: 26
File: src/main/java/com/gearfirst/backend/api/order/controller/PurchaseOrderController.java:93-98
Timestamp: 2025-10-28T05:05:49.715Z
Learning: In the Gear-First order backend (gearfirst-order-BE) Java Spring Boot project, when an endpoint performs state changes on the PurchaseOrder entity (such as calling order.completeRepair()), ensure the endpoint's Operation summary and description clearly document that state modification occurs, and use appropriate HTTP methods (POST/PATCH/PUT) rather than GET, even if the endpoint also returns data.

Applied to files:

  • src/main/java/com/gearfirst/backend/api/order/service/PurchaseOrderServiceImpl.java
📚 Learning: 2025-10-30T09:27:59.696Z
Learnt from: ksoheee
Repo: Gear-First/gearfirst-order-BE PR: 28
File: src/main/java/com/gearfirst/backend/api/order/service/PurchaseOrderServiceImpl.java:146-148
Timestamp: 2025-10-30T09:27:59.696Z
Learning: In the gearfirst-order-BE project, the `completeRepairAndGetParts` method in `PurchaseOrderServiceImpl` is called exclusively from the repair reception page, ensuring that the `receiptNum` parameter is always present and does not require null validation.

Applied to files:

  • src/main/java/com/gearfirst/backend/api/order/service/PurchaseOrderServiceImpl.java
🔇 Additional comments (1)
src/main/java/com/gearfirst/backend/api/order/service/PurchaseOrderServiceImpl.java (1)

379-379: 변경 사항이 올바릅니다.

창고 지정 시 변환된 warehouseCode를 사용하도록 수정한 것이 PR 목표와 일치하며, 출고 명령 생성 시 올바른 창고 코드가 사용됩니다.

@ksoheee ksoheee merged commit 786b496 into main Nov 10, 2025
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant