ACP2E-4799: GraphQL查詢requisition_lists傳回錯誤的分頁total_count
ACP2E-4799修補程式修正requisition_lists GraphQL查詢傳回不正確的total_count值的問題,該值僅反映目前頁面上的專案數,而非符合查詢條件的請購單清單實體總數。 安裝Quality Patches Tool (QPT) 1.1.82時,即可使用此修補程式。 修補程式ID為ACP2E-4799。 請注意,此問題已排程在Adobe Commerce B2B 1.5.4中修正。
受影響的產品和版本
已為Adobe Commerce版本建立修補程式:
- Adobe Commerce (所有部署方法) B2B 1.5.2-p4
與Adobe Commerce版本相容:
- Adobe Commerce (所有部署方法) B2B >=1.5.0 <1.5.3
NOTE
此修補程式可能適用於發行版本為Quality Patches Tool的其他版本。 若要檢查修補程式是否與您的Adobe Commerce版本相容,請將
magento/quality-patches套件更新至最新版本,並在Quality Patches Tool上檢查相容性:搜尋修補程式頁面。 使用修補程式ID作為搜尋關鍵字,以尋找修補程式。問題
當客戶查詢具有分頁的請購單清單時,total_count欄位未反映相符請購單清單的完整數目。 相反地,它只報告目前頁面傳回的專案數,這會使分頁中繼資料不正確。
必要條件:
Adobe Commerce B2B已啟用請購單清單。
要再現的步驟:
-
在Admin中,移至Stores > 設定 > 設定。
-
在左側面板的 一般 下,選擇B2B功能。
-
將 Enable Requisition List 設為 Yes 並選取Save Config。
-
以客戶身分登入店面。
-
選擇 My Requisition Lists 並建立六個請購單清單。
-
請確定客戶只有六個請購單清單,且每個清單名稱都包含
ABC,因此所有六個清單都與篩選的查詢相符。 -
執行下列GraphQL查詢,
pageSize設為2且currentPage設為1:code language-graphql query { customer { requisition_lists( pageSize: 2 currentPage: 1 ) { items { uid name } total_count page_info { current_page page_size total_pages } } } } -
執行此GraphQL查詢:
code language-graphql query { customer { requisition_lists( filter: { name: { match: "%ABC%" } } pageSize: 2 currentPage: 1 ) { items { uid name } total_count page_info { current_page page_size total_pages } } } }
預期結果:
requisition_lists查詢傳回total_count等於客戶擁有的請購單清單總數,獨立於pageSize和currentPage。- 分頁資料會與完整相符的結果集保持一致。
實際結果:
total_count只傳回目前頁面中的專案數,例如2個而非6個。
套用修補程式
若要套用個別修補程式,請根據您的部署方法使用下列連結:
- Adobe Commerce或Magento Open Source內部部署: Quality Patches Tool指南中的Quality Patches Tool >使用狀況
- 雲端基礎結構上的Adobe Commerce:雲端基礎結構上的Commerce指南中的升級和修補程式>套用修補程式
相關閱讀
若要進一步瞭解Quality Patches Tool,請參閱:
recommendation-more-help
commerce-operations-help-tools