src/Common/EventSubscriber/ActivityLogEventSubscriber.php line 33

Open in your IDE?
  1. <?php
  2. namespace PaperKite\Common\EventSubscriber;
  3. use PaperKite\Common\Event\TicketCreatedEvent;
  4. use PaperKite\Common\Service\ActivityLogWriterService;
  5. use PaperKite\CompanyApi\Event\MemberApplicationCompanyStatusChangedEvent;
  6. use PaperKite\EmployeeApi\Event\ActivityLogEventInterface;
  7. use PaperKite\EmployeeApi\Event\CmcmRequestCommentAddedEvent;
  8. use PaperKite\EmployeeApi\Event\CmcmRequestCreatedEvent;
  9. use PaperKite\EmployeeApi\Event\CmcmRequestDepartmentChangedEvent;
  10. use PaperKite\EmployeeApi\Event\CmcmRequestDossierTypeChangedEvent;
  11. use PaperKite\EmployeeApi\Event\CmcmRequestEmployeeAssignedEvent;
  12. use PaperKite\EmployeeApi\Event\CmcmRequestMemberAssociatedEvent;
  13. use PaperKite\EmployeeApi\Event\CmcmRequestStatusChangedEvent;
  14. use PaperKite\EmployeeApi\Event\Inquiry\InquiryDepartmentChangedEvent;
  15. use PaperKite\EmployeeApi\Event\Inquiry\InquiryEmployeeAssignedEvent;
  16. use PaperKite\EmployeeApi\Event\MemberApplication\MemberApplicationCommentAddedEvent;
  17. use PaperKite\EmployeeApi\Event\MemberApplication\MemberApplicationCreatedEvent;
  18. use PaperKite\EmployeeApi\Event\MemberApplication\MemberApplicationDecisionEmailSentEvent;
  19. use PaperKite\EmployeeApi\Event\MemberApplication\MemberApplicationMissingDocumentEmailSentEvent;
  20. use PaperKite\EmployeeApi\Event\MemberApplication\MemberApplicationProcessStatusChangedEvent;
  21. use PaperKite\HealthMutualApi\Event\MemberApplicationHealthMutualStatusChangedEvent;
  22. use Symfony\Component\EventDispatcher\EventSubscriberInterface;
  23. class ActivityLogEventSubscriber implements EventSubscriberInterface
  24. {
  25.     public function __construct(
  26.         private ActivityLogWriterService $activityLogWriterService,
  27.     ) {
  28.     }
  29.     public function onActivityLogEvent(ActivityLogEventInterface $event): void
  30.     {
  31.         $this->activityLogWriterService->createActivityLog($event);
  32.     }
  33.     public static function getSubscribedEvents(): array
  34.     {
  35.         return [
  36.             CmcmRequestCreatedEvent::class => 'onActivityLogEvent',
  37.             CmcmRequestStatusChangedEvent::class => 'onActivityLogEvent',
  38.             CmcmRequestEmployeeAssignedEvent::class => 'onActivityLogEvent',
  39.             CmcmRequestDossierTypeChangedEvent::class => 'onActivityLogEvent',
  40.             CmcmRequestDepartmentChangedEvent::class => 'onActivityLogEvent',
  41.             CmcmRequestMemberAssociatedEvent::class => 'onActivityLogEvent',
  42.             CmcmRequestCommentAddedEvent::class => 'onActivityLogEvent',
  43.             InquiryDepartmentChangedEvent::class => 'onActivityLogEvent',
  44.             InquiryEmployeeAssignedEvent::class => 'onActivityLogEvent',
  45.             MemberApplicationCommentAddedEvent::class => 'onActivityLogEvent',
  46.             MemberApplicationDecisionEmailSentEvent::class => 'onActivityLogEvent',
  47.             MemberApplicationMissingDocumentEmailSentEvent::class => 'onActivityLogEvent',
  48.             MemberApplicationCreatedEvent::class => 'onActivityLogEvent',
  49.             MemberApplicationProcessStatusChangedEvent::class => 'onActivityLogEvent',
  50.             MemberApplicationHealthMutualStatusChangedEvent::class => 'onActivityLogEvent',
  51.             MemberApplicationCompanyStatusChangedEvent::class => 'onActivityLogEvent',
  52.             TicketCreatedEvent::class => 'onActivityLogEvent',
  53.         ];
  54.     }
  55. }