PickupRepositoryInterface.php 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <?php
  2. /**
  3. * Refer to LICENSE.txt distributed with the Temando Shipping module for notice of license
  4. */
  5. namespace Temando\Shipping\Model\ResourceModel\Repository;
  6. use Magento\Framework\Api\SearchCriteriaInterface;
  7. use Temando\Shipping\Model\PickupInterface;
  8. /**
  9. * Temando Pickup Fulfillment Repository Interface.
  10. *
  11. * @package Temando\Shipping\Model
  12. * @author Sebastian Ertner <sebastian.ertner@netresearch.de>
  13. * @license https://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
  14. * @link https://www.temando.com/
  15. */
  16. interface PickupRepositoryInterface
  17. {
  18. /**
  19. * Load pickup fulfillment by entity id.
  20. *
  21. * @param string $pickupId
  22. * @return \Temando\Shipping\Model\PickupInterface
  23. * @throws \Magento\Framework\Exception\NoSuchEntityException
  24. * @throws \Magento\Framework\Exception\LocalizedException
  25. */
  26. public function getById($pickupId);
  27. /**
  28. * Load pickup fulfillments.
  29. *
  30. * @param \Magento\Framework\Api\SearchCriteriaInterface $criteria
  31. * @return \Temando\Shipping\Model\PickupInterface[]
  32. */
  33. public function getList(SearchCriteriaInterface $criteria);
  34. /**
  35. * Save pickup fulfillment.
  36. *
  37. * @param \Temando\Shipping\Model\PickupInterface $pickup
  38. * @return \Temando\Shipping\Model\PickupInterface
  39. * @throws \Magento\Framework\Exception\CouldNotSaveException
  40. */
  41. public function save(PickupInterface $pickup);
  42. }