src/Entity/Translation.php line 14

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Repository\TranslationRepository;
  4. use Doctrine\ORM\Mapping as ORM;
  5. #[ORM\Entity(repositoryClass: TranslationRepository::class)]
  6. #[ORM\Table(name: 'translation')]
  7. #[ORM\Index(
  8. name: 'translation_lookup_idx',
  9. columns: ['entity_type', 'entity_id', 'key_name', 'locale']
  10. )]
  11. class Translation
  12. {
  13. #[ORM\Id]
  14. #[ORM\GeneratedValue]
  15. #[ORM\Column]
  16. private ?int $id = null;
  17. // Module ERP (catalogue, user, stock, etc.)
  18. #[ORM\Column(length: 100)]
  19. private string $entityType;
  20. // ID de l’objet (ex: catalogue id = 5)
  21. #[ORM\Column(nullable: true)]
  22. private ?int $entityId = null;
  23. // Clé de traduction (name, description, title...)
  24. #[ORM\Column(length: 255)]
  25. private string $keyName;
  26. // Langue (fr, en, etc.)
  27. #[ORM\Column(length: 10)]
  28. private string $locale;
  29. // Contenu traduit
  30. #[ORM\Column(type: 'text')]
  31. private string $content;
  32. // Domaine optionnel (messages, catalogue, security...)
  33. #[ORM\Column(length: 100, nullable: true)]
  34. private ?string $domain = 'messages';
  35. // =========================
  36. // GETTERS / SETTERS
  37. // =========================
  38. public function getId(): ?int
  39. {
  40. return $this->id;
  41. }
  42. public function getEntityType(): string
  43. {
  44. return $this->entityType;
  45. }
  46. public function setEntityType(string $entityType): self
  47. {
  48. $this->entityType = $entityType;
  49. return $this;
  50. }
  51. public function getEntityId(): ?int
  52. {
  53. return $this->entityId;
  54. }
  55. public function setEntityId(?int $entityId): self
  56. {
  57. $this->entityId = $entityId;
  58. return $this;
  59. }
  60. public function getKeyName(): string
  61. {
  62. return $this->keyName;
  63. }
  64. public function setKeyName(string $keyName): self
  65. {
  66. $this->keyName = $keyName;
  67. return $this;
  68. }
  69. public function getLocale(): string
  70. {
  71. return $this->locale;
  72. }
  73. public function setLocale(string $locale): self
  74. {
  75. $this->locale = $locale;
  76. return $this;
  77. }
  78. public function getContent(): string
  79. {
  80. return $this->content;
  81. }
  82. public function setContent(string $content): self
  83. {
  84. $this->content = $content;
  85. return $this;
  86. }
  87. public function getDomain(): ?string
  88. {
  89. return $this->domain;
  90. }
  91. public function setDomain(?string $domain): self
  92. {
  93. $this->domain = $domain;
  94. return $this;
  95. }
  96. }