ACSD-69261: 부분 송장 및 취소 흐름에서 잘못된 times_used 처리로 인해 일회용 장바구니 가격 규칙 쿠폰이 재사용됨
ACSD-69261 패치는 부분 송장 및 남은 수량 취소 시나리오에서 times_used 특성의 잘못된 처리로 인해 고객당 한 번 사용하도록 구성된 장바구니 가격 규칙 쿠폰이 여러 번 재사용된 문제를 해결합니다. 이 패치는 Quality Patches Tool (QPT) 1.1.76이 설치된 경우에 사용할 수 있습니다. 패치 ID는 ACSD-69261입니다. 이 문제는 Adobe Commerce 2.4.9에서 수정됩니다.
영향을 받는 제품 및 버전
Adobe Commerce 버전에 대한 패치가 만들어졌습니다.
- Adobe Commerce(모든 배포 방법) 2.4.6-p13
Adobe Commerce 버전과 호환:
- Adobe Commerce(모든 배포 방법) 2.4.4 - 2.4.8-p3
magento/quality-patches 패키지를 최신 버전으로 업데이트하고 Quality Patches Tool에서 호환성을 확인합니다. 패치 검색 페이지. 패치 ID를 검색 키워드로 사용하여 패치를 찾습니다.문제
일부 송장을 만들고 나머지 미청구 수량을 취소하는 동안 times_used 특성을 잘못 처리했기 때문에 고객당 한 번 사용하도록 구성된 장바구니 가격 규칙 쿠폰을 여러 번 잘못 사용할 수 있습니다.
재현 단계:
-
고객당 한 번으로 제한된 쿠폰을 사용하는 장바구니 가격 규칙을 만듭니다.
-
두 가지 품목이 포함된 주문을 합니다.
-
한 항목의 수량을 두 개 이상 늘린 후 쿠폰을 적용하세요.
-
다음 데이터베이스 테이블에 항목이 있는지 확인합니다.
- 주문은
sales_order표에 쿠폰을 올바르게 저장합니다. salesrule_coupon_usage테이블에times_used= 1이(가) 표시됩니다.salesrule_customer테이블에times_used= 1이(가) 표시됩니다.
- 주문은
-
품목의 한 단위만 송장발행하여 부분 송장을 생성합니다.
-
나머지 미송장 수량을 취소합니다.
-
times_used및salesrule_coupon_usage테이블에서salesrule_customer필드 값을 확인합니다.
예상 결과:
부분 송장 다음에 미송장 수량을 취소한 후에만 times_used 값이 감소하므로 고객당 한 번 사용하도록 구성된 경우 쿠폰을 다시 사용할 수 있습니다.
실제 결과:
취소 후 times_used 값은 올바른 사용 횟수를 유지하는 대신 영(으)로 다시 설정됩니다.
패치 적용
개별 패치를 적용하려면 배포 방법에 따라 다음 링크를 사용합니다.
- Adobe Commerce 또는 Magento Open Source 온-프레미스: Quality Patches Tool 가이드의 > 사용량Quality Patches Tool
- 클라우드 인프라의 Adobe Commerce: Commerce on Cloud Infrastructure 안내서의 업그레이드 및 패치 > 패치 적용
관련 읽기
Quality Patches Tool에 대한 자세한 내용은 다음을 참조하세요.