Ordersreset.php 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. <?php
  2. namespace Dotdigitalgroup\Email\Controller\Adminhtml\Run;
  3. class Ordersreset extends \Magento\Backend\App\AbstractAction
  4. {
  5. /**
  6. * Authorization level of a basic admin session
  7. *
  8. * @see _isAllowed()
  9. */
  10. const ADMIN_RESOURCE = 'Dotdigitalgroup_Email::config';
  11. /**
  12. * @var \Magento\Framework\Message\ManagerInterface
  13. */
  14. protected $messageManager;
  15. /**
  16. * @var \Dotdigitalgroup\Email\Model\ResourceModel\Order
  17. */
  18. private $order;
  19. /**
  20. * @var \Dotdigitalgroup\Email\Helper\Data
  21. */
  22. private $helper;
  23. /**
  24. * @var \Magento\Framework\Escaper
  25. */
  26. private $escaper;
  27. /**
  28. * Ordersreset constructor.
  29. *
  30. * @param \Dotdigitalgroup\Email\Model\ResourceModel\Order $order
  31. * @param \Magento\Backend\App\Action\Context $context
  32. * @param \Dotdigitalgroup\Email\Helper\Data $data
  33. * @param \Magento\Framework\Escaper $escaper
  34. */
  35. public function __construct(
  36. \Dotdigitalgroup\Email\Model\ResourceModel\Order $order,
  37. \Magento\Backend\App\Action\Context $context,
  38. \Dotdigitalgroup\Email\Helper\Data $data,
  39. \Magento\Framework\Escaper $escaper
  40. ) {
  41. $this->order = $order;
  42. $this->messageManager = $context->getMessageManager();
  43. $this->helper = $data;
  44. $this->escaper = $escaper;
  45. parent::__construct($context);
  46. }
  47. /**
  48. * Refresh suppressed contacts.
  49. *
  50. * @return null
  51. */
  52. public function execute()
  53. {
  54. $params = $this->getRequest()->getParams();
  55. $from = $params['from'];
  56. $to = $params['to'];
  57. if ($from && $to) {
  58. $error = $this->helper->validateDateRange(
  59. $from,
  60. $to
  61. );
  62. if (is_string($error)) {
  63. $this->messageManager->addErrorMessage($error);
  64. } else {
  65. $this->order->resetOrders($from, $to);
  66. $this->messageManager->addSuccessMessage(__('Done.'));
  67. }
  68. } else {
  69. $this->order->resetOrders();
  70. $this->messageManager->addSuccessMessage(__('Done.'));
  71. }
  72. $redirectUrl = $this->getUrl(
  73. 'adminhtml/system_config/edit',
  74. ['section' => 'connector_developer_settings']
  75. );
  76. $this->_redirect($redirectUrl);
  77. }
  78. }