Apply revenue_status in subscriber stats

[MAILPOET-5485]
This commit is contained in:
David Remer
2023-09-04 16:22:16 +03:00
committed by Aschepikov
parent 71453f0c14
commit 84faac8257

View File

@@ -104,6 +104,7 @@ class SubscriberStatisticsRepository extends Repository {
return null;
}
$revenueStatus = $this->wcHelper->getPurchaseStates();
$currency = $this->wcHelper->getWoocommerceCurrency();
$queryBuilder = $this->entityManager->createQueryBuilder()
->select('stats.orderPriceTotal')
@@ -112,6 +113,10 @@ class SubscriberStatisticsRepository extends Repository {
->andWhere('stats.orderCurrency = :currency')
->setParameter('subscriber', $subscriber)
->setParameter('currency', $currency)
->andWhere('stats.status IN (:revenue_status)')
->setParameter('subscriber', $subscriber)
->setParameter('currency', $currency)
->setParameter('revenue_status', $revenueStatus)
->groupBy('stats.orderId, stats.orderPriceTotal');
if ($startTime) {
$queryBuilder
@@ -119,9 +124,8 @@ class SubscriberStatisticsRepository extends Repository {
->setParameter('dateTime', $startTime);
}
$purchases =
$queryBuilder
->getQuery()
->getResult();
$queryBuilder->getQuery()
->getResult();
$sum = array_sum(array_column($purchases, 'orderPriceTotal'));
return new WooCommerceRevenue(
$currency,