Magento_RequisitionList
The Magento_RequisitionList module allows a customer to create multiple lists of frequently-purchased items and use those lists for order placement. This feature is available for both logged-in users and guests. # Magento Modules: * Magento_RequisitionList * Magento_RequisitionListGraphQl * Magento_BundleRequisitionList * Magento_BundleRequisitionListGraphQl * Magento_ConfigurableRequisitionList * Magento_ConfigurableRequisitionListGraphQl * Magento_DownloadableRequisitionListGraphQl * Magento_GiftCardRequisitionList * Magento_GiftCardRequisitionListGraphQl * Magento_GroupedRequisitionList > `Magento_RequisitionList` is the main storefront affecting module. > `Magento_BundleRequisitionList`, `Magento_ConfigurableRequisitionList`, `Magento_GroupedRequisitionList` each contain a layout XML change only. All other modules have no storefront impact. # Adobe Commerce Packages * magento/module-requisition-list * magento/module-requisition-list-graph-ql * magento/module-bundle-requisition-list * magento/module-bundle-requisition-list-graph-ql * magento/module-configurable-requisition-list * magento/module-configurable-requisition-list-graph-ql * magento/module-downloadable-requisition-list-graph-ql * magento/module-gift-card-requisition-list * magento/module-gift-card-requisition-list-graph-ql * magento/module-grouped-requisition-list # Repository > Note: this repo is only accessible with a Hyvä Enterprise license or as a contributor. > > For more details, see: https://www.hyva.io/hyva-enterprise.html. https://gitlab.hyva.io/hyva-enterprise/b2b/magento2-ee-magento-requisition-list ## Features > All points are rated according to priority as P1 (critical), P2 (important), P3 (minor). - [x] basic - does not break layout/design > Note: All below features assume output only if requisitions lists are enabled in Stores > Configuration: `btob/website_configuration/requisition_list_active`. > Note: requisition lists are a customer feature and unlike most B2B features are in no way related to company accounts. ### Global - Customer Account Header - [x] [P3] Add 'My Requisition Lists' when logged in > Requires https://gitlab.hyva.io/hyva-themes/magento2-default-theme/-/merge_requests/837 to be merged to allow for extensibility. ### Category & Search Pages (`/catalog/category/view/id/{id}/`, `/catalogsearch/result/?q=*` & `/catalogsearch/advanced/result/?*`) - [x] [P1] Add product to existing requisition list - [x] [P1] Create new requisition list and add product to it (see modal features below) - [x] [P1] Redirect to product page with message for selecting options if a complex product / custom options - [x] [P2] Add product to requisition list with configurable swatch selections #### Add Requisition List Modal - [x] [P1] Add list name (required) - [x] [P1] Add list description (optional) - [x] [P1] Submit (save/create) list - [x] [P1] Cancel/close modal ### Product Detail Pages (`/catalog/product/view/id/{id}/`) - [x] [P1] Add product to existing requisition list - [x] [P1] Create new requisition list and add product to it (see modal features below) - [x] [P2] Validation for selecting required options before adding to list (submitting) - [x] [P3] Support for related / upsell products (see category/search list above) ###### Visual QA - [x] [P2] While above completed areas are functional, they need styling #### Add Requisition List Modal - [x] [P1] Add list name (required) - [x] [P1] Add list description (optional) - [x] [P1] Submit (save/create) list - [x] [P1] Cancel/close modal ### Cart (`/checkout/cart/`) - [x] [P2] Add all cart items to existing requistion list - [x] [P2] Create new requisition list and add all cart items to it (see modal features below) - [x] [P2] Add individual cart items to existing requistion list - [x] [P2] Create new requisition list and add individual cart item to it - [x] [P3] Support for crosssell products (see category/search list above) #### Add Requisition List Modal - [x] [P1] Add list name (required) - [x] [P1] Add list description (optional) - [x] [P1] Submit (save/create) list - [x] [P1] Cancel/close modal ### Account Area (all pages) - [x] [P1] Add 'My Requisition Lists' to account area navigation menu ### Requisition List Listing Page (`/requisition_list/requisition/`) - [x] [P1] Create new requisition list link (see modal features below) - [x] [P1] Show requisition lists table - Name, description, items count, last updated (activity), action columns - [x] [P1] View existing requisition list link - [x] [P2] Pagination works - [x] [P2] Limiter works - [x] UX improvement - should consider being able to delete lists from this page like other grids ###### Visual QA - [x] [P2] While above completed areas are functional, they need styling - [x] [P2] Rename any mention of 'Project' to 'Requisition List' #### Add Requisition List Modal - [x] [P1] Add list name (required) - [x] [P1] Add list description (optional) - [x] [P1] Submit (save/create) list - [x] [P1] Cancel/close modal ### Requisition List Detail Page (`/requisition_list/requisition/view/requisition_id/{id}/`) - [x] [P1] Update list details - 'rename' link (see modal features below) - [x] [P2] Export list to CSV link - [x] [P3] Print list link - [x] [P3] Total items count - [x] [P1] Requisition list items table - Name, SKU, price, qty and subtotal - [x] [P1] Change item qty and update list (button below table) - Qtys not updating at present - [x] [P1] Delete requisition list item (see modal features below) - [x] [P2] Configure items link/icon (for products with options) - [x] [P1] Select/deselect indivdual items - [x] [P2] Select/deselect all items - [x] [P1] Mass action - add selected items to cart (via button below table) - [x] [P1] Mass action - remove selected items (see modal features below) - [x] [P2] Mass action - move selected items to new/existing list - [x] [P2] Mass action - copy selected items to new/existing list ###### Visual QA - [x] [P2] While above completed areas are functional, they need styling - [x] [P2] Rename any mention of 'Project' to 'Requisition List' #### Update Requisition List Details Modal - [x] [P1] Add list name (required) - [x] [P1] Add list description (optional) - [x] [P1] Submit (save/create) list - [x] [P1] Cancel/close modal #### Remove Requisition List Item(s) Modal - [x] [P1] Add list name (required) - [x] [P1] Add list description (optional) - [x] [P1] Submit (save/create) list - [x] [P1] Cancel/close modal ### Requisition List Print (`/requisition_list/requisition/print/requisition_id/{id}/`) - [x] [P3] Can view/print (output as per Luma) > Just missing title/item count - items output working ### Requisition List Configure Item (`/requisition_list/item/configure/item_id/{id}/id/{id}/requisition_id/{id}/`) - [x] [P2] Update product options and update in requisition list - [x] [P2] Ensure product option validation works (i.e. required options selected) > Note: separate layout XML files for bundle, configurable and grouped products exist for this page in their respective additional modules, e.g. `Magento_BundleRequisitionList`. > Could improve UX here - main 'add to cart' button is prominent when in most cases it's the requisition list that will want to be updated on this page <img src="/uploads/78ca27bcf12159e348c532f00dc00300/Requisition_List_Item_Configure.png" width="400" height="auto" /> ### Order Detail Page (`/sales/order/view/order_id/{id}/`) - [x] [P2] Add order items to existing requisition list - [x] [P2] Add order items to new requisition list (see modal features below) #### Add Requisition List Modal - [x] [P1] Add list name (required) - [x] [P1] Add list description (optional) - [x] [P1] Submit (save/create) list - [x] [P1] Cancel/close modal ## Contributors * @anastasiia.bondar * @jward * @ryanhissey * @ryan-copeland ## Voting Use :thumbsup: to cast your vote.
issue