SourceItemConfigurationInterface.php 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. declare(strict_types=1);
  7. namespace Magento\InventoryLowQuantityNotificationApi\Api\Data;
  8. /**
  9. * Represents a Source Item Configuration object
  10. *
  11. * Used fully qualified namespaces in annotations for proper work of WebApi request parser
  12. *
  13. * @api
  14. */
  15. interface SourceItemConfigurationInterface extends \Magento\Framework\Api\ExtensibleDataInterface
  16. {
  17. /**
  18. * Constant for fields in data array
  19. */
  20. const SOURCE_CODE = 'source_code';
  21. const SKU = 'sku';
  22. const INVENTORY_NOTIFY_QTY = 'notify_stock_qty';
  23. /**
  24. * Get source code
  25. *
  26. * @return string|null
  27. */
  28. public function getSourceCode(): ?string;
  29. /**
  30. * Set source code
  31. *
  32. * @param string $sourceCode
  33. * @return void
  34. */
  35. public function setSourceCode(string $sourceCode): void;
  36. /**
  37. * Get notify stock qty
  38. *
  39. * @return float|null
  40. */
  41. public function getNotifyStockQty(): ?float;
  42. /**
  43. * Set notify stock qty
  44. *
  45. * @param float|null $quantity
  46. * @return void
  47. */
  48. public function setNotifyStockQty(?float $quantity): void;
  49. /**
  50. * Get SKU
  51. *
  52. * @return string|null
  53. */
  54. public function getSku(): ?string;
  55. /**
  56. * Set SKU
  57. *
  58. * @param string $sku
  59. * @return void
  60. */
  61. public function setSku(string $sku): void;
  62. /**
  63. * Retrieve existing extension attributes object
  64. *
  65. * @return \Magento\InventoryLowQuantityNotificationApi\Api\Data\SourceItemConfigurationExtensionInterface|null
  66. */
  67. public function getExtensionAttributes(): ?SourceItemConfigurationExtensionInterface;
  68. /**
  69. * Set an extension attributes object
  70. *
  71. * @param \Magento\InventoryLowQuantityNotificationApi\Api\Data\SourceItemConfigurationExtensionInterface
  72. * $extensionAttributes
  73. * @return void
  74. */
  75. public function setExtensionAttributes(SourceItemConfigurationExtensionInterface $extensionAttributes): void;
  76. }