1111use PhpList \Core \Domain \Subscription \Model \Dto \ImportSubscriberDto ;
1212use PhpList \Core \Domain \Subscription \Model \Dto \UpdateSubscriberDto ;
1313use PhpList \Core \Domain \Subscription \Model \Subscriber ;
14+ use PhpList \Core \Domain \Subscription \Repository \SubscriberHistoryRepository ;
1415use PhpList \Core \Domain \Subscription \Repository \SubscriberRepository ;
1516use PhpList \Core \Domain \Subscription \Service \SubscriberDeletionService ;
1617use Symfony \Component \HttpKernel \Exception \NotFoundHttpException ;
1718use Symfony \Contracts \Translation \TranslatorInterface ;
1819
1920class SubscriberManager
2021{
21- private SubscriberRepository $ subscriberRepository ;
22- private EntityManagerInterface $ entityManager ;
23- private SubscriberDeletionService $ subscriberDeletionService ;
24- private TranslatorInterface $ translator ;
25- private SubscriberHistoryManager $ subscriberHistoryManager ;
26-
2722 public function __construct (
28- SubscriberRepository $ subscriberRepository ,
29- EntityManagerInterface $ entityManager ,
30- SubscriberDeletionService $ subscriberDeletionService ,
31- TranslatorInterface $ translator ,
32- SubscriberHistoryManager $ subscriberHistoryManager ,
23+ private readonly SubscriberRepository $ subscriberRepository ,
24+ private readonly EntityManagerInterface $ entityManager ,
25+ private readonly SubscriberDeletionService $ subscriberDeletionService ,
26+ private readonly TranslatorInterface $ translator ,
27+ private readonly SubscriberHistoryManager $ subscriberHistoryManager ,
28+ private readonly SubscriberHistoryRepository $ subscriberHistoryRepository ,
3329 ) {
34- $ this ->subscriberRepository = $ subscriberRepository ;
35- $ this ->entityManager = $ entityManager ;
36- $ this ->subscriberDeletionService = $ subscriberDeletionService ;
37- $ this ->translator = $ translator ;
38- $ this ->subscriberHistoryManager = $ subscriberHistoryManager ;
3930 }
4031
4132 public function createSubscriber (CreateSubscriberDto $ subscriberDto ): Subscriber
@@ -57,6 +48,19 @@ public function getSubscriberById(int $subscriberId): ?Subscriber
5748 return $ this ->subscriberRepository ->find ($ subscriberId );
5849 }
5950
51+ public function getSubscriberDetails (int $ subscriberId ): ?Subscriber
52+ {
53+ $ subscriber = $ this ->getSubscriberById ($ subscriberId );
54+ if ($ subscriber === null ) {
55+ return null ;
56+ }
57+
58+ $ history = $ this ->subscriberHistoryRepository ->getBySubscriber ($ subscriber );
59+ $ subscriber ->setHistory ($ history );
60+
61+ return $ subscriber ;
62+ }
63+
6064 public function updateSubscriber (
6165 Subscriber $ subscriber ,
6266 UpdateSubscriberDto $ subscriberDto ,
0 commit comments