fix(cupang): itemcode 조회 오류를 로그+API+화면에 노출 (원인 진단)

- ItemcodeReader.last_error 추가, _run 실패 시 logger.exception + 메시지 보존
- /api/products/all 응답에 error/count 추가
- products 화면: 결과 0 일 때 조회오류/사유 표시 (그냥 '결과 없음' 대신)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-05-30 21:16:54 +09:00
parent 8f3761aeae
commit cb43fe1257
3 changed files with 20 additions and 3 deletions
+4 -1
View File
@@ -604,11 +604,14 @@ async def product_all(
) -> JSONResponse:
"""itemcode_db 전체 상품 목록(낱개+세트). 설정 화면 왼쪽 리스트 소스."""
reader = _itemcode(request)
results = reader.list_all() if reader else []
return JSONResponse(
{
"enabled": bool(reader and reader.enabled),
"reason": (reader.reason if reader else "itemcode 리더 미초기화"),
"results": reader.list_all() if reader else [],
"error": (getattr(reader, "last_error", "") if reader else ""),
"count": len(results),
"results": results,
}
)