docs: [bending] resolve-item expected_code 추가 이력 반영

This commit is contained in:
김보곤
2026-03-18 20:28:09 +09:00
parent a1df11fede
commit 9e3f8f3746

View File

@@ -79,14 +79,54 @@ LOT 코드 기준 26개 제품+종류 조합 × 12개 길이 = 320개 조합 중
> `lot_base`, `date_code` 필드 제거. `lot_number`에 일련번호 미포함.
### 4. resolve-item 응답에 expected_code 추가
품목 매핑 조회(`GET /api/v1/bending/resolve-item`) 응답에 `expected_code` 필드를 추가했다.
매핑 실패 시 어떤 품목 코드(`BD-XX-nn`)를 찾고 있는지 사용자가 확인할 수 있다.
**매핑 실패 응답:**
```json
{
"error": "NOT_MAPPED",
"message": "해당 조합에 매핑된 품목이 없습니다.",
"expected_code": "BD-BE-20"
}
```
**매핑 성공 응답:**
```json
{
"item_id": 16448,
"item_code": "BD-BE-20",
"item_name": "하단마감재(스크린) EGI 2000mm",
"expected_code": "BD-BE-20"
}
```
---
## React 영향 (프론트엔드 전달 필요)
### 호환성 (수정 불필요)
- `BendingLotForm.tsx`의 LOT 프리뷰(`lotPreview`)는 이미 올바르게 동작 (일련번호 없는 형태)
- 저장 시 `generateBendingLot()` API 응답에서 `lot_base`, `date_code` 필드 제거됨
- 현재 코드에서 `lotData.lot_number``lotData.material`만 사용하므로 **호환성 문제 없음**
- 추가 구현 권장: 3요소 선택 시 매핑 품목이 자동 표시되는 UX 강화 (현재도 동작하나 확인 필요)
### 구현 요청
1. **매핑 실패 경고에 품목 코드 표시** (`BendingLotForm.tsx` 320행):
```tsx
// 변경 전
setResolveError('해당 조합에 매핑된 품목이 없습니다.');
// 변경 후
const code = result.data?.expected_code || '';
setResolveError(`해당 조합에 매핑된 품목이 없습니다. (${code})`);
```
2. **매핑 성공 시 품목 코드 함께 표시** (권장)
---