커머스 - 0.2.8 업데이트 후 발생한 오류
- 사용 버전
- 0.2.8
- 처리 버전
- 0.2.9

1. 기본 옵션 기능이 없어져서 옵션별 추가금액, 재고, SKU 을 저장 할 수 없습니다. (자동 품절 처리됩니다.)

상품 등록을 하면 전부 품절로 고정됩니다. (재고를 넣어도 판매중 클릭 후 저장해도 품절에 고정되어 있음.)
- 2.jpg 52.0KB
- (D93F20D3-9164-43E1-A5FB-E80875F0AEAF).png 5.6KB
댓글 4
-
-
상품 생성시 옵션 패널

상품 수정시 옵션 패널 (정상)

-
고쳤습니다. 다음 커머스 판올림(0.2.9)에 나갑니다.
무엇이 문제였나
상품 등록 화면의 옵션 판이 상품 수정 화면의 옵션 판과 아예 다른 물건이었습니다. 등록 화면에는 옵션명·추가금·재고 세 칸만 있었고 SKU 칸이 없었으며, 조합형(색상 × 사이즈)도 쓸 수 없었습니다. 등록 화면 전용으로 따로 만들어 둔 화면이라 수정 화면에 있는 것들이 빠져 있었습니다.
여기에 더해 저장 쪽에도 문제가 겹쳐 있었습니다.
첫째, 상품을 저장할 때 "이 상품은 옵션이 없다"고 못박아 넣고 있었습니다. 그래서 옵션을 담아 두어도 옵션 없는 상품으로 저장됐습니다. 본품 재고는 등록 직후 0이고, 옵션도 없는 것으로 취급되니 판매 가능 여부를 따질 때 팔 수 있는 것이 하나도 없어 품절로 나왔습니다. 판매중으로 저장해도 품절로 보이던 이유입니다. 상태 값 자체는 판매중으로 잘 저장되고 있었고, 화면이 품절로 그려진 것입니다.
둘째, 화면 아래 변경사항 저장이 옵션 행에 입력한 값을 읽지 못했습니다. 옵션 행의 입력칸은 표 안에 있고 표 밖의 폼과 연결만 되어 있는 구조인데, 값을 모으는 코드가 폼 안쪽만 뒤지고 있었습니다. 그래서 옵션명이 빈 값으로 넘어갔고 서버가 그 줄을 건너뛰었습니다. 이건 등록 화면만이 아니라 수정 화면에서도 같았습니다. 지금까지는 행마다 있는 저장 버튼을 눌러야만 반영됐습니다.
어떻게 고쳤나
- 등록 화면 전용 옵션 판을 없애고, 수정 화면과 같은 판을 쓰도록 했습니다. 옵션 방식(직접 입력·조합형), 조합형 축과 조합 만들기, 옵션명·추가금·재고·SKU 표, 옵션 추가·저장·삭제가 모두 같습니다. (views/admin/item_edit.blade.php)
- 저장 전 상품도 옵션을 먼저 담을 수 있게 했습니다. 등록 화면에는 이미 상품 번호가 미리 발급되어 있어 그 번호를 그대로 씁니다. 옵션을 건드리면 지금까지 입력한 상품을 먼저 저장할지 물어보고, 저장 뒤 옵션 자리로 돌아옵니다. 입력하던 내용이 날아가지 않습니다.
- 상품을 저장할 때 그 번호에 옵션이 있으면 옵션 있는 상품으로 저장하도록 고쳤습니다. (controllers/Admin.php)
- 변경사항 저장이 옵션 행의 값을 제대로 읽도록 고쳤습니다. 이제 행별 저장 버튼을 누르지 않아도 한 번에 저장됩니다.
품절이 풀리는 기준
본품 재고가 있으면 팔 수 있고, 본품 재고가 0이어도 옵션 중에 재고가 있는 것이 하나라도 있으면 팔 수 있습니다. 옵션이 전부 매진이어도 본품 재고가 있으면 팔립니다. 재고 관리를 쓰지 않는 상품으로 두면 재고와 무관하게 항상 팔립니다.
앞서 본품 재고가 반드시 있어야 품절이 풀린다고 안내드린 것은 사실과 달랐습니다. 바로잡습니다. 옵션에만 재고를 넣으셔도 품절은 풀립니다. 등록 직후 품절로 보이셨던 것은 옵션이 옵션으로 인정되지 않고 있었기 때문입니다.
SKU 를 포함해 옵션 값이 저장되지 않던 부분까지 한 번에 잡았습니다. 자세히 짚어 주신 덕분에 화면 문제로 끝날 뻔한 것을 저장 쪽까지 찾아냈습니다. 감사합니다.
-
수고하셨습니다.
로그인 후 댓글을 쓸 수 있습니다.
먼저 저희 테스트 결과 상품 등록 과정에서 옵션 생성 패널에 문제가 있었고, 상품을 등록하면 정상적으로 옵션 생성 및 재고 입력이 가능한 것으로 확인되었습니다. 또한 옵션 생성을 하시더라도 본품재고가 없으면 품절처리가 되는 문제가 있었는데요. 해당 이슈와 함께 상품 등록시 옵션 패널이 상품 수정시 옵션 패널과 상이하게 보여지는 현상을 수정하도록 하겠습니다. 추가로 재고 및 옵션과 관련해 사용성 개선에 대한 의견이 있으시면 언제나 추가 이슈로 남겨주세요. 감사드립니다.