InitQuoteAndOrderAttributes.php 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Weee\Setup\Patch\Data;
  7. use Magento\Quote\Setup\QuoteSetup;
  8. use Magento\Quote\Setup\QuoteSetupFactory;
  9. use Magento\Sales\Setup\SalesSetup;
  10. use Magento\Sales\Setup\SalesSetupFactory;
  11. use Magento\Framework\Setup\Patch\DataPatchInterface;
  12. use Magento\Framework\Setup\Patch\PatchVersionInterface;
  13. /**
  14. * Class InitQuoteAndOrderAttributes
  15. * @package Magento\Weee\Setup\Patch
  16. */
  17. class InitQuoteAndOrderAttributes implements DataPatchInterface, PatchVersionInterface
  18. {
  19. /**
  20. * @var \Magento\Framework\Setup\ModuleDataSetupInterface
  21. */
  22. private $moduleDataSetup;
  23. /**
  24. * @var QuoteSetupFactory
  25. */
  26. private $quoteSetupFactory;
  27. /**
  28. * @var SalesSetupFactory
  29. */
  30. private $salesSetupFactory;
  31. /**
  32. * InitQuoteAndOrderAttributes constructor.
  33. * @param \Magento\Framework\Setup\ModuleDataSetupInterface $moduleDataSetup
  34. * @param QuoteSetupFactory $quoteSetupFactory
  35. * @param SalesSetupFactory $salesSetupFactory
  36. */
  37. public function __construct(
  38. \Magento\Framework\Setup\ModuleDataSetupInterface $moduleDataSetup,
  39. QuoteSetupFactory $quoteSetupFactory,
  40. SalesSetupFactory $salesSetupFactory
  41. ) {
  42. $this->moduleDataSetup = $moduleDataSetup;
  43. $this->quoteSetupFactory = $quoteSetupFactory;
  44. $this->salesSetupFactory = $salesSetupFactory;
  45. }
  46. /**
  47. * {@inheritdoc}
  48. */
  49. public function apply()
  50. {
  51. /** @var QuoteSetup $quoteSetup */
  52. $quoteSetup = $this->quoteSetupFactory->create(['setup' => $this->moduleDataSetup]);
  53. $quoteSetup->addAttribute('quote_item', 'weee_tax_applied', ['type' => 'text']);
  54. $quoteSetup->addAttribute('quote_item', 'weee_tax_applied_amount', ['type' => 'decimal']);
  55. $quoteSetup->addAttribute('quote_item', 'weee_tax_applied_row_amount', ['type' => 'decimal']);
  56. $quoteSetup->addAttribute('quote_item', 'weee_tax_disposition', ['type' => 'decimal']);
  57. $quoteSetup->addAttribute('quote_item', 'weee_tax_row_disposition', ['type' => 'decimal']);
  58. $quoteSetup->addAttribute('quote_item', 'base_weee_tax_applied_amount', ['type' => 'decimal']);
  59. $quoteSetup->addAttribute('quote_item', 'base_weee_tax_applied_row_amnt', ['type' => 'decimal']);
  60. $quoteSetup->addAttribute('quote_item', 'base_weee_tax_disposition', ['type' => 'decimal']);
  61. $quoteSetup->addAttribute('quote_item', 'base_weee_tax_row_disposition', ['type' => 'decimal']);
  62. /** @var SalesSetup $salesSetup */
  63. $salesSetup = $this->salesSetupFactory->create(['setup' => $this->moduleDataSetup]);
  64. $salesSetup->addAttribute('order_item', 'weee_tax_applied', ['type' => 'text']);
  65. $salesSetup->addAttribute('order_item', 'weee_tax_applied_amount', ['type' => 'decimal']);
  66. $salesSetup->addAttribute('order_item', 'weee_tax_applied_row_amount', ['type' => 'decimal']);
  67. $salesSetup->addAttribute('order_item', 'weee_tax_disposition', ['type' => 'decimal']);
  68. $salesSetup->addAttribute('order_item', 'weee_tax_row_disposition', ['type' => 'decimal']);
  69. $salesSetup->addAttribute('order_item', 'base_weee_tax_applied_amount', ['type' => 'decimal']);
  70. $salesSetup->addAttribute('order_item', 'base_weee_tax_applied_row_amnt', ['type' => 'decimal']);
  71. $salesSetup->addAttribute('order_item', 'base_weee_tax_disposition', ['type' => 'decimal']);
  72. $salesSetup->addAttribute('order_item', 'base_weee_tax_row_disposition', ['type' => 'decimal']);
  73. $salesSetup->addAttribute('invoice_item', 'weee_tax_applied', ['type' => 'text']);
  74. $salesSetup->addAttribute('invoice_item', 'weee_tax_applied_amount', ['type' => 'decimal']);
  75. $salesSetup->addAttribute('invoice_item', 'weee_tax_applied_row_amount', ['type' => 'decimal']);
  76. $salesSetup->addAttribute('invoice_item', 'weee_tax_disposition', ['type' => 'decimal']);
  77. $salesSetup->addAttribute('invoice_item', 'weee_tax_row_disposition', ['type' => 'decimal']);
  78. $salesSetup->addAttribute('invoice_item', 'base_weee_tax_applied_amount', ['type' => 'decimal']);
  79. $salesSetup->addAttribute('invoice_item', 'base_weee_tax_applied_row_amnt', ['type' => 'decimal']);
  80. $salesSetup->addAttribute('invoice_item', 'base_weee_tax_disposition', ['type' => 'decimal']);
  81. $salesSetup->addAttribute('invoice_item', 'base_weee_tax_row_disposition', ['type' => 'decimal']);
  82. $salesSetup->addAttribute('creditmemo_item', 'weee_tax_applied', ['type' => 'text']);
  83. $salesSetup->addAttribute('creditmemo_item', 'weee_tax_applied_amount', ['type' => 'decimal']);
  84. $salesSetup->addAttribute('creditmemo_item', 'weee_tax_applied_row_amount', ['type' => 'decimal']);
  85. $salesSetup->addAttribute('creditmemo_item', 'weee_tax_disposition', ['type' => 'decimal']);
  86. $salesSetup->addAttribute('creditmemo_item', 'weee_tax_row_disposition', ['type' => 'decimal']);
  87. $salesSetup->addAttribute('creditmemo_item', 'base_weee_tax_applied_amount', ['type' => 'decimal']);
  88. $salesSetup->addAttribute('creditmemo_item', 'base_weee_tax_applied_row_amnt', ['type' => 'decimal']);
  89. $salesSetup->addAttribute('creditmemo_item', 'base_weee_tax_disposition', ['type' => 'decimal']);
  90. $salesSetup->addAttribute('creditmemo_item', 'base_weee_tax_row_disposition', ['type' => 'decimal']);
  91. }
  92. /**
  93. * {@inheritdoc}
  94. */
  95. public static function getDependencies()
  96. {
  97. return [];
  98. }
  99. /**
  100. * {@inheritdoc}
  101. */
  102. public static function getVersion()
  103. {
  104. return '2.0.0';
  105. }
  106. /**
  107. * {@inheritdoc}
  108. */
  109. public function getAliases()
  110. {
  111. return [];
  112. }
  113. }