Customers can create orders in different stores. All orders are saved in the same database, so each order has a store property to indicated where is the order been created. The store property is shown on the order receipt and order view pages as well as in the order confirmation email.
In the Commerce Manager client's Order Search view, a CSR can filter orders by store. CSRs with permission to search for orders in all stores can choose to search in a particular store or in all stores where they have permissions. CSRs without the appropriate permissions can only search in the stores assigned to them.
- OrderImpl - Add the store property and persist it.
- CheckoutServiceImpl - Save the store property when create the order.
- checkout\receipt.vm - Show the store property on oder receipt page.
- checkout\orderDetail.vm - Show the store property on order view page.
- email\orderConf.html.vm - Show the store property on order confirmation email.
- OrderSearchCriteria - Holds the search fields in a order search from CM Client.
- OrderQueryComposer - Composes the query string from the OrderSearchCriteria fields.
Commerce Manager client
- ISearchTab - List the available stores in the search view.
- FulfillmentPermissions - Define the permission whether CSR can search on all the stores.
- OrderSearchResultsView - Show the store property on the search results list view.
- OrderSummaryOverviewSectionPart - Show the store property on the order summary page.
How it works
- In CheckoutService, when creating the order, the system keep the store property for the order.
- The order property will be shown on the order receipt page, order view page and order confirmation email in the storefront.
- In the CM Client order search, the search can be filtered by store.
- If CSRs have permission to search the orders on all stores, they can choose to search orders either on a particular store or on all the stores. If CSRs don't have the permission, they can only search by the stores assigned to them.