src/Entity/ChannelUserData/AdminChannelUserData/AdminChannelUserDataOrganization.php line 24

Open in your IDE?
  1. <?php
  2. namespace App\Entity\ChannelUserData\AdminChannelUserData;
  3. use App\Entity\Channel\Organization;
  4. use App\Entity\ChannelUserData\AdminChannelUserData;
  5. use App\Enum\ChannelUserData\Activity\AdminChannelUserDataActivityTagEnum;
  6. use Doctrine\ORM\Mapping\JoinColumn;
  7. use Doctrine\ORM\Mapping as ORM;
  8. use Nellapp\Bundle\SDKBundle\TrackData\Attribute\TrackEntity;
  9. use Nellapp\Bundle\SDKBundle\TrackData\Attribute\TrackField;
  10. #[
  11. ORM\Entity(),
  12. ORM\Table(name: 'channel_user_data_admin_organizations'),
  13. TrackEntity(
  14. fieldGroups: [
  15. 'organization' => [
  16. 'tags' => [AdminChannelUserDataActivityTagEnum::INFORMATIONS],
  17. ],
  18. ]
  19. ),
  20. ]
  21. class AdminChannelUserDataOrganization
  22. {
  23. #[ORM\Id, ORM\GeneratedValue, ORM\Column(type: 'integer')]
  24. private ?int $id = null;
  25. #[ORM\ManyToOne(targetEntity: AdminChannelUserData::class, fetch: 'EAGER', inversedBy: 'adminChannelUserDataOrganizations')]
  26. #[JoinColumn(nullable: false, onDelete: 'CASCADE')]
  27. private ?AdminChannelUserData $channelUserData = null;
  28. #[ORM\ManyToOne(targetEntity: Organization::class, fetch: 'EAGER')]
  29. #[JoinColumn(nullable: false, onDelete: 'CASCADE')]
  30. #[TrackField(name: 'structure', fieldKey: 'organization')]
  31. private ?Organization $organization = null;
  32. public function __toString(): string
  33. {
  34. return $this->organization?->__toString() ?? '';
  35. }
  36. public function getId(): ?int
  37. {
  38. return $this->id;
  39. }
  40. public function getChannelUserData(): ?AdminChannelUserData
  41. {
  42. return $this->channelUserData;
  43. }
  44. public function setChannelUserData(?AdminChannelUserData $channelUserData): AdminChannelUserDataOrganization
  45. {
  46. $this->channelUserData = $channelUserData;
  47. return $this;
  48. }
  49. public function getOrganization(): ?Organization
  50. {
  51. return $this->organization;
  52. }
  53. public function setOrganization(?Organization $organization): AdminChannelUserDataOrganization
  54. {
  55. $this->organization = $organization;
  56. return $this;
  57. }
  58. }