Skip to content

[ReadMe] updated readMe file for Magento_Msrp-Magento_MysqlMq modules #31938

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
123 changes: 123 additions & 0 deletions app/code/Magento/Msrp/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
# Magento_Msrp module

The **Magento_Msrp** module is responsible for Manufacturer’s Suggested Retail Price functionality.
A current module provides base functional for msrp pricing rendering, configuration and calculation.

## Installation
The Magento_Msrp module creates the following attributes:

Entity type - `catalog_product`.

Attribute group - `Advanced Pricing`.

- `msrp` - Manufacturer's Suggested Retail Price
- `msrp_display_actual_price_type` -Display Actual Price

**Pay attention** if described attributes not removed when the module is removed/disabled, it would trigger errors
because they use models and blocks from Magento_Msrp module:
- `\Magento\Msrp\Block\Adminhtml\Product\Helper\Form\Type`
- `\Magento\Msrp\Model\Product\Attribute\Source\Type\Price`
- `\Magento\Msrp\Block\Adminhtml\Product\Helper\Form\Type\Price`

For information about a module installation in Magento 2, see [Enable or disable modules](https://devdocs.magento.com/guides/v2.4/install-gde/install/cli/install-cli-subcommands-enable.html).

## Structure
`Pricing\` - directory contains interfaces and implementation for msrp pricing calculations
(`\Magento\Msrp\Pricing\MsrpPriceCalculatorInterface`), price renderers
and price models.

`Pricing\Price\` - the directory contains declares msrp price model interfaces and implementations.

`Pricing\Renderer\` - contains price renderers implementations.

For information about a typical file structure of a module in Magento 2,
see [Module file structure](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/build/module-file-structure.html#module-file-structure).

## Extensibility

Developers can pass custom `msrpPriceCalculators` for `Magento\Msrp\Pricing\MsrpPriceCalculator` using type configuration using `di.xml`.

For example:
```
<type name="Magento\Msrp\Pricing\MsrpPriceCalculator">
<arguments>
<argument name="msrpPriceCalculators" xsi:type="array">
<item name="configurable" xsi:type="array">
<item name="productType" xsi:type="const">Magento\ConfigurableProduct\Model\Product\Type\Configurable::TYPE_CODE</item>
<item name="priceCalculator" xsi:type="object">Magento\MsrpConfigurableProduct\Pricing\MsrpPriceCalculator</item>
</item>
</argument>
</arguments>
</type>
```
More information about [type configuration](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/build/di-xml-file.html).

Extension developers can interact with the Magento_Msrp module. For more information about the Magento extension mechanism, see [Magento plug-ins](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/plugins.html).

[The Magento dependency injection mechanism](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/depend-inj.html) enables you to override the functionality of the Magento_Msrp module.

### Events

This module observes the following event:

`etc/frontend/`

- `sales_quote_collect_totals_after` in the `Magento\Msrp\Observer\Frontend\Quote\SetCanApplyMsrpObserver` file.

`etc/webapi_rest`
- `sales_quote_collect_totals_after` in the `Magento\Msrp\Observer\Frontend\Quote\SetCanApplyMsrpObserver` file.

`etc/webapi_soap`
- `sales_quote_collect_totals_after` in the `Magento\Msrp\Observer\Frontend\Quote\SetCanApplyMsrpObserver` file.

For information about an event in Magento 2, see [Events and observers](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/events-and-observers.html#events).

### Layouts

The module interacts with the following layout handles:

`view/base/layout` directory:

- `catalog_product_prices`
- `cms_index_index`

`view/frontend/layout` directory:

- `catalog_category_view`
- `catalog_product_compare_index`
- `catalog_product_view`
- `catalogsearch_advanced_result`
- `catalogsearch_result_index`
- `checkout_cart_sidebar_total_renderers`
- `checkout_onepage_failure`
- `checkout_onepage_success`
- `review_product_list`
- `wishlist_index_configure_type_downloadable`
- `wishlist_index_index`
- `wishlist_search_view`
- `wishlist_shared_index`

This module introduces the following layouts and layout handles:

`view/frontend/layout` directory:

- `msrp_popup`

### UI components

Module provides product admin form modifier:

`Magento\Msrp\Ui\DataProvider\Product\Form\Modifier\Msrp` - removes `msrp_display_actual_price_type` field from the form if config disabled else adds `validate-zero-or-greater` validation to the fild.

## Additional information

### Catalog attributes

A current module extends `etc/catalog_attributes.xml` and provides following attributes for `quote_item` group:
- `msrp`
- `msrp_display_actual_price_type`

### Extension Attributes
The Magento_Msrp provides extension attributes for `Magento\Catalog\Api\Data\ProductRender\PriceInfoInterface`
- attribute code: `msrp`
- attribute type: `Magento\Msrp\Api\Data\ProductRender\MsrpPriceInfoInterface`
35 changes: 33 additions & 2 deletions app/code/Magento/MsrpConfigurableProduct/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,34 @@
# MsrpConfigurableProduct
# Magento_MsrpConfigurableProduct module

**MsrpConfigurableProduct** provides type and resolver information for the Msrp module from the ConfigurableProduct module.
The **Magento_MsrpConfigurableProduct** module provides type and resolver information for the Magento_Msrp module from the ConfigurableProduct module.
Provides implementation of msrp price calculation for Configurable Product.

## Installation

For information about a module installation in Magento 2, see [Enable or disable modules](https://devdocs.magento.com/guides/v2.4/install-gde/install/cli/install-cli-subcommands-enable.html)

## Structure

`Pricing\` - directory contains implementation of msrp price calculation
for Grouped Product (`Magento\MsrpGroupedProduct\Pricing\MsrpPriceCalculator` class).

For information about a typical file structure of a module in Magento 2,
see [Module file structure](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/build/module-file-structure.html#module-file-structure).

## Extensibility

Extension developers can interact with the Magento_Msrp module. For more information about the Magento extension mechanism, see [Magento plug-ins](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/plugins.html).

[The Magento dependency injection mechanism](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/depend-inj.html) enables you to override the functionality of the Magento_Msrp module.

### Layouts

For more information about a layout in Magento 2, see the [Layout documentation](http://devdocs.magento.com/guides/v2.3/frontend-dev-guide/layouts/layout-overview.html).

### UI components

For information about a UI component in Magento 2, see [Overview of UI components](http://devdocs.magento.com/guides/v2.3/ui_comp_guide/bk-ui_comps.html).

## Additional information

For information about significant changes in patch releases, see [2.4.x Release information](https://devdocs.magento.com/guides/v2.4/release-notes/bk-release-notes.html).
40 changes: 38 additions & 2 deletions app/code/Magento/MsrpGroupedProduct/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,39 @@
# MsrpGroupedProduct
# Magento_MsrpGroupedProduct module

**MsrpGroupedProduct** provides type and resolver information for the Msrp module from the GroupedProduct module.
**Magento_MsrpGroupedProduct** module provides type and resolver information for the Msrp module from the GroupedProduct module.
Provides implementation of msrp price calculation for Grouped Product.

## Installation

For information about a module installation in Magento 2, see [Enable or disable modules](https://devdocs.magento.com/guides/v2.4/install-gde/install/cli/install-cli-subcommands-enable.html)

## Structure

`Pricing\` - directory contains implementation of msrp price calculation
for Configurable Product (`Magento\MsrpConfigurableProduct\Pricing\MsrpPriceCalculator` class).

For information about a typical file structure of a module in Magento 2,
see [Module file structure](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/build/module-file-structure.html#module-file-structure).

## Extensibility

Extension developers can interact with the Magento_Msrp module. For more information about the Magento extension mechanism, see [Magento plug-ins](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/plugins.html).

[The Magento dependency injection mechanism](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/depend-inj.html) enables you to override the functionality of the Magento_Msrp module.

### Layouts

For more information about a layout in Magento 2, see the [Layout documentation](http://devdocs.magento.com/guides/v2.3/frontend-dev-guide/layouts/layout-overview.html).

### UI components

For information about a UI component in Magento 2, see [Overview of UI components](http://devdocs.magento.com/guides/v2.3/ui_comp_guide/bk-ui_comps.html).

## Additional information

### collection attributes

Module adds attribute `msrp` to select for the `Magento\Catalog\Model\ResourceModel\Product\Link\Product\Collection`
in `Magento\MsrpGroupedProduct\Plugin\Model\Product\Type\Grouped` plugin.

For information about significant changes in patch releases, see [2.4.x Release information](https://devdocs.magento.com/guides/v2.4/release-notes/bk-release-notes.html).
141 changes: 139 additions & 2 deletions app/code/Magento/Multishipping/README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,139 @@
Magento\Multishipping module provides functionality that allows customer to request shipping to more than one address
using different carriers. The module provides alternative to standard checkout flow.
# Magento_Multishipping module

**Magento_Multishipping** module provides functionality that allows customer to request shipping to more than one address
using different carriers. The module provides alternative to standard checkout flow.

## Installation

For information about a module installation in Magento 2, see [Enable or disable modules](https://devdocs.magento.com/guides/v2.4/install-gde/install/cli/install-cli-subcommands-enable.html).

## Structure

For information about a typical file structure of a module in Magento 2,
see [Module file structure](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/build/module-file-structure.html#module-file-structure).

## Extensibility

Developers can interact with the module and change behaviour using type configuration feature.

Namely, we can change `paymentSpecification` for `Magento\Multishipping\Block\Checkout\Billing` and `Magento\Multishipping\Model\Checkout\Type\Multishipping` classes.
As result, we will get changed behaviour, new logic or something what our business need.

For example:
```
<type name="Magento\Multishipping\Model\Checkout\Type\Multishipping">
<arguments>
<argument name="paymentSpecification" xsi:type="object">multishippingPaymentSpecification</argument>
</arguments>
</type>
```
Yo can check this configuration and find more examples in the `etc/frontend/di.xml` file.

More information about [type configuration](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/build/di-xml-file.html).


Extension developers can interact with the Magento_Multishipping module. For more information about the Magento extension mechanism, see [Magento plug-ins](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/plugins.html).

[The Magento dependency injection mechanism](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/depend-inj.html) enables you to override the functionality of the Magento_Msrp module.

### Events

This module observes the following event:

`etc/frontend/`

- `checkout_cart_save_before` in the `Magento\Multishipping\Observer\DisableMultishippingObserver` file.

The module dispatches the following events:

- `multishipping_checkout_controller_success_action` event in the
class `\Magento\Multishipping\Controller\Checkout\Success::execute()` method. Parameters:
- `order_ids` is order ids created during checkout
- `checkout_controller_multishipping_shipping_post` event in the
class `\Magento\Multishipping\Controller\Checkout\ShippingPost::execute()` method. Parameters:
- `request` is a request object `Magento\Framework\App\RequestInterface`.
- `quote` is a quote object for current checkout `Magento\Quote\Model\Quote`.
- `checkout_type_multishipping_set_shipping_items` event in the
class `\Magento\Multishipping\Model\Checkout\Type\Multishipping::setShippingItemsInformation()` method. Parameters:
- `quote` is a quote object for current checkout `Magento\Quote\Model\Quote`.
- `checkout_type_multishipping_create_orders_single` event in the
class `\Magento\Multishipping\Model\Checkout\Type\Multishipping::createOrders()` method. Parameters:
- `order` is a prepared order object for creating `\Magento\Sales\Model\Order`.
- `address` is an address array.
- `quote` is a quote object for current checkout `Magento\Quote\Model\Quote`.
- `checkout_submit_all_after` event in the
class `\Magento\Multishipping\Model\Checkout\Type\Multishipping::createOrders()` method. Parameters:
- `orders` is order object array `\Magento\Sales\Model\Order` that was created.
- `quote` is a quote object for current checkout `Magento\Quote\Model\Quote`.
- `checkout_multishipping_refund_all` event in the
class `\Magento\Multishipping\Model\Checkout\Type\Multishipping::createOrders()` method. Parameters:
- `orders` is order object array `\Magento\Sales\Model\Order` that was created.

For information about an event in Magento 2, see [Events and observers](http://devdocs.magento.com/guides/v2.3/extension-dev-guide/events-and-observers.html#events).

### Layouts

The module interacts with the following layout handles:

`view/frontend/layout` directory:

- `checkout_cart_index`

This module introduces the following layouts and layout handles:

`view/frontend/layout` directory:

- `multishipping_checkout`
- `multishipping_checkout_address_editaddress`
- `multishipping_checkout_address_editbilling`
- `multishipping_checkout_address_editshipping`
- `multishipping_checkout_address_newbilling`
- `multishipping_checkout_address_newshipping`
- `multishipping_checkout_address_select`
- `multishipping_checkout_address_selectbilling`
- `multishipping_checkout_addresses`
- `multishipping_checkout_billing`
- `multishipping_checkout_customer_address`
- `multishipping_checkout_login`
- `multishipping_checkout_overview`
- `multishipping_checkout_register`
- `multishipping_checkout_results`
- `multishipping_checkout_shipping`
- `multishipping_checkout_success`

## Additional information

### ACL

Module introduces the following resources:

- `Magento_Multishipping::config_multishipping` - Multishipping Settings Section

More information about [Access Control List rule](https://devdocs.magento.com/guides/v2.4/ext-best-practices/tutorials/create-access-control-list-rule.html).

### Page Types

Module introduces the new pages:

`etc/frontend/page_types.xml` file.

- `checkout_cart_multishipping` - Catalog Quick Search Form Suggestion
- `checkout_cart_multishipping_address_editaddress` - Multishipping Checkout One Address Edit Form
- `checkout_cart_multishipping_address_editbilling` - Multishipping Checkout Billing Address Edit Form
- `checkout_cart_multishipping_address_editshipping` - Multishipping Checkout Shipping Address Edit Form
- `checkout_cart_multishipping_address_newbilling` - Multishipping Checkout Billing Address Creation
- `checkout_cart_multishipping_address_newshipping` - Multishipping Checkout Shipping Address Creation
- `checkout_cart_multishipping_address_selectbilling` - Multishipping Checkout Billing Address Selection
- `checkout_cart_multishipping_addresses` - Multishipping Checkout Address (Any) Form
- `checkout_cart_multishipping_billing` - Multishipping Checkout Billing Information Step
- `checkout_cart_multishipping_customer_address` - Multishipping Checkout Customer Address Edit Form
- `checkout_cart_multishipping_login` - Multishipping Checkout Login User Form
- `checkout_cart_multishipping_overview` - Multishipping Checkout Overview
- `checkout_cart_multishipping_register` - Multishipping Checkout Register User Form
- `checkout_cart_multishipping_shipping` - Multishipping Checkout Shipping Information Step
- `checkout_cart_multishipping_success` - Multishipping Checkout Success

More information about [layout types](https://devdocs.magento.com/guides/v2.4/frontend-dev-guide/layouts/layout-types.html).


For information about significant changes in patch releases, see [2.3.x Release information](http://devdocs.magento.com/guides/v2.3/release-notes/bk-release-notes.html).
29 changes: 27 additions & 2 deletions app/code/Magento/MysqlMq/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,28 @@
# MysqlMq
# Magento_MysqlMq module

**MysqlMq** provides message queue implementation based on MySQL.
**Magento_MysqlMq** provides message queue implementation based on MySQL.

Module contain recurring script, declared in `Magento\MysqlMq\Setup\Recurring`
class. This script is executed by Magento post each schema installation or upgrade
stage and populates the queue table.

## Installation

Module creates the following tables:

- `queue` - Table storing unique queues
- `queue_message` - Queue messages
- `queue_message_status` - Relation table to keep associations between queues and messages


For information about a module installation in Magento 2, see [Enable or disable modules](https://devdocs.magento.com/guides/v2.4/install-gde/install/cli/install-cli-subcommands-enable.html).

## Additional information

For information about significant changes in patch releases, see [2.3.x Release information](http://devdocs.magento.com/guides/v2.3/release-notes/bk-release-notes.html).

### cron options

cron group configuration can be set in `etc/crontab.xml`.

- `mysqlmq_clean_messages` - clean up old messages from database