From ae57f81c147b8be4b03618ac3969db5c87b3c4fd Mon Sep 17 00:00:00 2001 From: David Remer Date: Wed, 28 Jun 2023 11:09:28 +0300 Subject: [PATCH] Query short statistics for automation [MAILPOET-5091] --- .../Analytics/Endpoints/AutomationFlowEndpoint.php | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/mailpoet/lib/Automation/Integrations/MailPoet/Analytics/Endpoints/AutomationFlowEndpoint.php b/mailpoet/lib/Automation/Integrations/MailPoet/Analytics/Endpoints/AutomationFlowEndpoint.php index 3766fc2258..3ce8582c99 100644 --- a/mailpoet/lib/Automation/Integrations/MailPoet/Analytics/Endpoints/AutomationFlowEndpoint.php +++ b/mailpoet/lib/Automation/Integrations/MailPoet/Analytics/Endpoints/AutomationFlowEndpoint.php @@ -7,6 +7,7 @@ use MailPoet\API\REST\Response; use MailPoet\Automation\Engine\API\Endpoint; use MailPoet\Automation\Engine\Exceptions\NotFoundException; use MailPoet\Automation\Engine\Mappers\AutomationMapper; +use MailPoet\Automation\Engine\Storage\AutomationStatisticsStorage; use MailPoet\Automation\Engine\Storage\AutomationStorage; use MailPoet\Automation\Integrations\MailPoet\Analytics\Controller\AutomationTimeSpanController; use MailPoet\Automation\Integrations\MailPoet\Analytics\Entities\Query; @@ -17,6 +18,9 @@ class AutomationFlowEndpoint extends Endpoint { /** @var AutomationStorage */ private $automationStorage; + /** @var AutomationStatisticsStorage */ + private $automationStatisticsStorage; + /** @var AutomationMapper */ private $automationMapper; @@ -25,10 +29,12 @@ class AutomationFlowEndpoint extends Endpoint { public function __construct( AutomationStorage $automationStorage, + AutomationStatisticsStorage $automationStatisticsStorage, AutomationMapper $automationMapper, AutomationTimeSpanController $automationTimeSpanController ) { $this->automationStorage = $automationStorage; + $this->automationStatisticsStorage = $automationStatisticsStorage; $this->automationMapper = $automationMapper; $this->automationTimeSpanController = $automationTimeSpanController; } @@ -45,9 +51,15 @@ class AutomationFlowEndpoint extends Endpoint { throw new NotFoundException(__('The automation did not exist in the selected time span', 'mailpoet')); } $automation = end($automations); + $shortStatistics = $this->automationStatisticsStorage->getAutomationStats( + $automation->getId(), + null, + $query->getAfter(), + $query->getBefore() + ); $data = [ - 'automation' => $this->automationMapper->buildAutomation($automation), + 'automation' => $this->automationMapper->buildAutomation($automation, $shortStatistics), ]; return new Response($data); }