Track last sending at

MAILPOET-4998
This commit is contained in:
John Oleksowicz
2023-06-05 16:12:22 -05:00
committed by Aschepikov
parent 0e9b96d0b7
commit b22217420f
4 changed files with 59 additions and 0 deletions

View File

@@ -2,6 +2,7 @@
namespace MailPoet\Subscribers;
use DateTimeInterface;
use MailPoet\Config\SubscriberChangesNotifier;
use MailPoet\Doctrine\Repository;
use MailPoet\Entities\SegmentEntity;
@@ -287,6 +288,21 @@ class SubscribersRepository extends Repository {
return count($ids);
}
public function bulkUpdateLastSendingAt(array $ids, DateTimeInterface $dateTime): int {
if (empty($ids)) {
return 0;
}
$this->entityManager->createQueryBuilder()
->update(SubscriberEntity::class, 's')
->set('s.lastSendingAt', ':lastSendingAt')
->where('s.id IN (:ids)')
->setParameter('lastSendingAt', $dateTime)
->setParameter('ids', $ids)
->getQuery()
->execute();
return count($ids);
}
public function findWpUserIdAndEmailByEmails(array $emails): array {
return $this->entityManager->createQueryBuilder()
->select('s.wpUserId AS wp_user_id, LOWER(s.email) AS email')