瀏覽代碼

replace mapped superclass by entities with single table inheritance

Olivier Massot 6 月之前
父節點
當前提交
498829c7bd
共有 38 個文件被更改,包括 18 次插入39 次删除
  1. 2 1
      src/Entity/Billing/AbstractBillAccounting.php
  2. 2 1
      src/Entity/Billing/AbstractBillingPayer.php
  3. 0 1
      src/Entity/Billing/AccessIntangible.php
  4. 0 1
      src/Entity/Billing/AccessPayer.php
  5. 0 1
      src/Entity/Billing/AdvancePayment.php
  6. 0 1
      src/Entity/Billing/Bill.php
  7. 0 2
      src/Entity/Billing/BillAccounting.php
  8. 0 1
      src/Entity/Billing/BillCredit.php
  9. 0 1
      src/Entity/Billing/EducationalProjectIntangible.php
  10. 0 1
      src/Entity/Billing/EducationalProjectPayer.php
  11. 2 1
      src/Entity/Booking/AbstractBookingRecur.php
  12. 0 1
      src/Entity/Booking/CourseRecur.php
  13. 0 1
      src/Entity/Booking/EducationalProjectRecur.php
  14. 0 1
      src/Entity/Booking/EventRecur.php
  15. 0 1
      src/Entity/Booking/ExamenRecur.php
  16. 0 1
      src/Entity/Booking/OrganizationHolidayRecur.php
  17. 0 1
      src/Entity/Booking/PersonHolidayRecur.php
  18. 2 1
      src/Entity/Core/AbstractControl.php
  19. 2 1
      src/Entity/Core/AbstractRepair.php
  20. 0 1
      src/Entity/Core/Notification.php
  21. 0 1
      src/Entity/Core/Tips.php
  22. 2 1
      src/Entity/Message/AbstractMessage.php
  23. 2 1
      src/Entity/Message/AbstractReport.php
  24. 0 1
      src/Entity/Message/Email.php
  25. 0 1
      src/Entity/Message/Mail.php
  26. 0 1
      src/Entity/Message/Sms.php
  27. 2 1
      src/Entity/Place/AbstractPlace.php
  28. 0 1
      src/Entity/Place/Place.php
  29. 0 1
      src/Entity/Place/PlaceControl.php
  30. 0 1
      src/Entity/Place/PlaceRepair.php
  31. 0 1
      src/Entity/Place/PlaceSystem.php
  32. 0 1
      src/Entity/Place/RoomControl.php
  33. 0 1
      src/Entity/Place/RoomRepair.php
  34. 2 1
      src/Entity/Product/AbstractProduct.php
  35. 0 1
      src/Entity/Product/Equipment.php
  36. 0 1
      src/Entity/Product/EquipmentControl.php
  37. 0 1
      src/Entity/Product/EquipmentRepair.php
  38. 0 1
      src/Entity/Product/Intangible.php

+ 2 - 1
src/Entity/Billing/AbstractBillAccounting.php

@@ -19,8 +19,9 @@ use Doctrine\ORM\Mapping as ORM;
  *
  * @todo : A la suite de la migration, il faut supprimer le nom de la table pour avoir une table BillAccounting, et supprimer l'attribut discr.
  */
-#[ORM\MappedSuperclass]
+#[ORM\Entity]
 #[ORM\Table(name: 'BillAccounting')]
+#[ORM\InheritanceType('SINGLE_TABLE')]
 #[ORM\DiscriminatorColumn(name: 'discr', type: 'string')]
 #[ORM\DiscriminatorMap(
     [

+ 2 - 1
src/Entity/Billing/AbstractBillingPayer.php

@@ -11,8 +11,9 @@ use Doctrine\ORM\Mapping as ORM;
  * l'EducationalProject concerné par la facture
  * Classe de base de @see  AccessPayer, EducationalProjectPayer.
  */
-#[ORM\MappedSuperclass]
+#[ORM\Entity]
 #[ORM\Table(name: 'BillingPayer')]
+#[ORM\InheritanceType('SINGLE_TABLE')]
 #[ORM\DiscriminatorColumn(name: 'discr', type: 'string')]
 #[ORM\DiscriminatorMap(
     [

+ 0 - 1
src/Entity/Billing/AccessIntangible.php

@@ -18,7 +18,6 @@ use Doctrine\ORM\Mapping as ORM;
 #[ApiResource(operations: [])]
 // #[Auditable]
 #[ORM\Entity(repositoryClass: AccessIntangibleRepository::class)]
-#[ORM\Table(name: 'BillingIntangible')]
 class AccessIntangible extends AbstractBillingIntangible
 {
     #[ORM\ManyToOne(inversedBy: 'accessIntangibles')]

+ 0 - 1
src/Entity/Billing/AccessPayer.php

@@ -16,7 +16,6 @@ use Doctrine\ORM\Mapping as ORM;
  * Fais le lien entre l'Access qui règle la facture et l'Access concerné
  */
 #[ApiResource(operations: [])]
-#[ORM\Table(name: 'BillingPayer')]
 // #[Auditable]
 #[ORM\Entity(repositoryClass: AccessPayerRepository::class)]
 class AccessPayer extends AbstractBillingPayer

+ 0 - 1
src/Entity/Billing/AdvancePayment.php

@@ -13,7 +13,6 @@ use Doctrine\ORM\Mapping as ORM;
 #[ApiResource(operations: [])]
 // #[Auditable]
 #[ORM\Entity]
-#[ORM\Table(name: 'BillAccounting')]
 class AdvancePayment extends AbstractBillAccounting
 {
 }

+ 0 - 1
src/Entity/Billing/Bill.php

@@ -15,7 +15,6 @@ use Doctrine\ORM\Mapping as ORM;
 #[ApiResource(operations: [])]
 // #[Auditable]
 #[ORM\Entity]
-#[ORM\Table(name: 'BillAccounting')]
 class Bill extends AbstractBillAccounting
 {
     /** @var Collection<int, BillLine> */

+ 0 - 2
src/Entity/Billing/BillAccounting.php

@@ -13,8 +13,6 @@ use Doctrine\ORM\Mapping as ORM;
 #[ApiResource(operations: [])]
 // #[Auditable]
 #[ORM\Entity]
-#[ORM\Table(name: 'BillAccounting')]
-#[ORM\InheritanceType('SINGLE_TABLE')]
 class BillAccounting extends AbstractBillAccounting
 {
 }

+ 0 - 1
src/Entity/Billing/BillCredit.php

@@ -13,7 +13,6 @@ use Doctrine\ORM\Mapping as ORM;
 #[ApiResource(operations: [])]
 // #[Auditable]
 #[ORM\Entity]
-#[ORM\Table(name: 'BillAccounting')]
 class BillCredit extends AbstractBillAccounting
 {
 }

+ 0 - 1
src/Entity/Billing/EducationalProjectIntangible.php

@@ -17,7 +17,6 @@ use Doctrine\ORM\Mapping as ORM;
 // #[Auditable]
 #[ApiResource(operations: [])]
 #[ORM\Entity]
-#[ORM\Table(name: 'BillingIntangible')]
 class EducationalProjectIntangible extends AbstractBillingIntangible
 {
     #[ORM\ManyToOne(inversedBy: 'educationalProjectIntangibles')]

+ 0 - 1
src/Entity/Billing/EducationalProjectPayer.php

@@ -18,7 +18,6 @@ use Doctrine\ORM\Mapping as ORM;
 #[ApiResource(operations: [])]
 // #[Auditable]
 #[ORM\Entity]
-#[ORM\Table(name: 'BillingPayer')]
 class EducationalProjectPayer extends AbstractBillingPayer
 {
     #[ORM\ManyToOne(cascade: ['persist'], inversedBy: 'billingEducationalProjectPayers')]

+ 2 - 1
src/Entity/Booking/AbstractBookingRecur.php

@@ -11,8 +11,9 @@ use Doctrine\ORM\Mapping as ORM;
  *
  * @see EventRecur, CourseRecur, EducationalProjectRecur, ExamenRecur, OrganizationHolidayRecur, PersonHolidayRecur
  */
-#[ORM\MappedSuperclass]
+#[ORM\Entity]
 #[ORM\Table(name: 'BookingRecur')]
+#[ORM\InheritanceType('SINGLE_TABLE')]
 #[ORM\DiscriminatorColumn(name: 'discr', type: 'string')]
 #[ORM\DiscriminatorMap(
     [

+ 0 - 1
src/Entity/Booking/CourseRecur.php

@@ -16,7 +16,6 @@ use Doctrine\ORM\Mapping as ORM;
 // #[Auditable]
 #[ApiResource(operations: [])]
 #[ORM\Entity]
-#[ORM\Table(name: 'BookingRecur')]
 class CourseRecur extends AbstractBookingRecur
 {
     #[ORM\ManyToOne(inversedBy: 'eventRecur')]

+ 0 - 1
src/Entity/Booking/EducationalProjectRecur.php

@@ -16,7 +16,6 @@ use Doctrine\ORM\Mapping as ORM;
 // #[Auditable]
 #[ApiResource(operations: [])]
 #[ORM\Entity]
-#[ORM\Table(name: 'BookingRecur')]
 class EducationalProjectRecur extends AbstractBookingRecur
 {
     #[ORM\ManyToOne(inversedBy: 'eventRecur')]

+ 0 - 1
src/Entity/Booking/EventRecur.php

@@ -16,7 +16,6 @@ use Doctrine\ORM\Mapping as ORM;
 // #[Auditable]
 #[ApiResource(operations: [])]
 #[ORM\Entity]
-#[ORM\Table(name: 'BookingRecur')]
 class EventRecur extends AbstractBookingRecur
 {
     #[ORM\ManyToOne(inversedBy: 'eventRecur')]

+ 0 - 1
src/Entity/Booking/ExamenRecur.php

@@ -16,7 +16,6 @@ use Doctrine\ORM\Mapping as ORM;
 // #[Auditable]
 #[ApiResource(operations: [])]
 #[ORM\Entity]
-#[ORM\Table(name: 'BookingRecur')]
 class ExamenRecur extends AbstractBookingRecur
 {
     #[ORM\ManyToOne(inversedBy: 'eventRecur')]

+ 0 - 1
src/Entity/Booking/OrganizationHolidayRecur.php

@@ -14,7 +14,6 @@ use Doctrine\ORM\Mapping as ORM;
 // #[Auditable]
 #[ApiResource(operations: [])]
 #[ORM\Entity]
-#[ORM\Table(name: 'BookingRecur')]
 class OrganizationHolidayRecur extends AbstractBookingRecur
 {
     #[ORM\ManyToOne(inversedBy: 'eventRecur')]

+ 0 - 1
src/Entity/Booking/PersonHolidayRecur.php

@@ -16,7 +16,6 @@ use Doctrine\ORM\Mapping as ORM;
 // #[Auditable]
 #[ApiResource(operations: [])]
 #[ORM\Entity]
-#[ORM\Table(name: 'BookingRecur')]
 class PersonHolidayRecur extends AbstractBookingRecur
 {
     #[ORM\ManyToOne(inversedBy: 'eventRecur')]

+ 2 - 1
src/Entity/Core/AbstractControl.php

@@ -14,8 +14,9 @@ use Doctrine\ORM\Mapping as ORM;
  * Contrôle du bon état des Place, Room et Equipment, effectué ou planifié
  * Classe de base de @see PlaceControl, RoomControl, EquipmentControl.
  */
-#[ORM\MappedSuperclass]
+#[ORM\Entity]
 #[ORM\Table(name: 'Control')]
+#[ORM\InheritanceType('SINGLE_TABLE')]
 #[ORM\DiscriminatorColumn(name: 'discr', type: 'string')]
 #[ORM\DiscriminatorMap(
     [

+ 2 - 1
src/Entity/Core/AbstractRepair.php

@@ -13,8 +13,9 @@ use Doctrine\ORM\Mapping as ORM;
 /**
  * Classe de base de @see PlaceRepair, RoomRepair, EquipmentRepair.
  */
-#[ORM\MappedSuperclass]
+#[ORM\Entity]
 #[ORM\Table(name: 'Repair')]
+#[ORM\InheritanceType('SINGLE_TABLE')]
 #[ORM\DiscriminatorColumn(name: 'discr', type: 'string')]
 #[ORM\DiscriminatorMap(
     [

+ 0 - 1
src/Entity/Core/Notification.php

@@ -34,7 +34,6 @@ use Doctrine\ORM\Mapping as ORM;
 )]
 // #[Auditable]
 #[ORM\Entity(repositoryClass: NotificationRepository::class)]
-#[ORM\Table(name: 'Information')]
 class Notification extends AbstractInformation
 {
     #[ORM\ManyToOne(inversedBy: 'notifications')]

+ 0 - 1
src/Entity/Core/Tips.php

@@ -18,7 +18,6 @@ use Doctrine\ORM\Mapping as ORM;
 #[ApiResource(operations: [])]
 // #[Auditable]
 #[ORM\Entity]
-#[ORM\Table(name: 'Information')]
 class Tips extends AbstractInformation
 {
     #[ORM\ManyToMany(targetEntity: Organization::class, mappedBy: 'tips', cascade: [], orphanRemoval: false)]

+ 2 - 1
src/Entity/Message/AbstractMessage.php

@@ -20,9 +20,10 @@ use Ramsey\Uuid\UuidInterface;
 /**
  * Classe de base de @see Mail, Sms, Email.
  */
-#[ORM\MappedSuperclass]
+#[ORM\Entity]
 #[OrganizationDefaultValue(fieldName: 'organization')]
 #[ORM\Table(name: 'Message')]
+#[ORM\InheritanceType('SINGLE_TABLE')]
 #[ORM\DiscriminatorColumn(name: 'discr', type: 'string')]
 #[ORM\DiscriminatorMap(
     [

+ 2 - 1
src/Entity/Message/AbstractReport.php

@@ -13,8 +13,9 @@ use Doctrine\ORM\Mapping as ORM;
 /**
  * TODO: documenter.
  */
-#[ORM\MappedSuperclass]
+#[ORM\Entity]
 #[ORM\Table(name: 'ReportMessage')]
+#[ORM\InheritanceType('SINGLE_TABLE')]
 class AbstractReport
 {
     #[ORM\Column(type: 'datetime', nullable: true)]

+ 0 - 1
src/Entity/Message/Email.php

@@ -19,7 +19,6 @@ use Doctrine\ORM\Mapping as ORM;
 // #[Auditable]
 #[ApiResource(operations: [])]
 #[ORM\Entity]
-#[ORM\Table(name: 'Message')]
 class Email extends AbstractMessage
 {
     #[ORM\Column(type: 'boolean', options: ['default' => false])]

+ 0 - 1
src/Entity/Message/Mail.php

@@ -17,7 +17,6 @@ use Doctrine\ORM\Mapping as ORM;
 #[ApiResource(operations: [])]
 // #[Auditable]
 #[ORM\Entity]
-#[ORM\Table(name: 'Message')]
 class Mail extends AbstractMessage
 {
 }

+ 0 - 1
src/Entity/Message/Sms.php

@@ -17,7 +17,6 @@ use Doctrine\ORM\Mapping as ORM;
 // #[Auditable]
 #[ApiResource(operations: [])]
 #[ORM\Entity]
-#[ORM\Table(name: 'Message')]
 class Sms extends AbstractMessage
 {
 }

+ 2 - 1
src/Entity/Place/AbstractPlace.php

@@ -16,8 +16,9 @@ use Doctrine\ORM\Mapping as ORM;
  *
  * Classe de base de @see Place, PlaceSystem
  */
-#[ORM\MappedSuperclass]
+#[ORM\Entity]
 #[ORM\Table(name: 'Place')]
+#[ORM\InheritanceType('SINGLE_TABLE')]
 #[ORM\DiscriminatorColumn(name: 'discr', type: 'string')]
 #[ORM\DiscriminatorMap(
     [

+ 0 - 1
src/Entity/Place/Place.php

@@ -23,7 +23,6 @@ use Doctrine\ORM\Mapping as ORM;
 // #[Auditable]
 #[ApiResource(operations: [])]
 #[ORM\Entity]
-#[ORM\Table(name: 'Place')]
 class Place extends AbstractPlace
 {
     /** @var Collection<int, Event> */

+ 0 - 1
src/Entity/Place/PlaceControl.php

@@ -19,7 +19,6 @@ use Doctrine\ORM\Mapping as ORM;
 // #[Auditable]
 #[ApiResource(operations: [])]
 #[ORM\Entity]
-#[ORM\Table(name: 'Control')]
 class PlaceControl extends AbstractControl
 {
     #[ORM\ManyToOne(inversedBy: 'controls')]

+ 0 - 1
src/Entity/Place/PlaceRepair.php

@@ -20,7 +20,6 @@ use Doctrine\ORM\Mapping as ORM;
 // #[Auditable]
 #[ApiResource(operations: [])]
 #[ORM\Entity]
-#[ORM\Table(name: 'Repair')]
 class PlaceRepair extends AbstractRepair
 {
     #[ORM\ManyToOne(inversedBy: 'placeRepairProviders')]

+ 0 - 1
src/Entity/Place/PlaceSystem.php

@@ -15,7 +15,6 @@ use Doctrine\ORM\Mapping as ORM;
 // #[Auditable]
 #[ApiResource(operations: [])]
 #[ORM\Entity]
-#[ORM\Table(name: 'Place')]
 class PlaceSystem extends AbstractPlace
 {
 }

+ 0 - 1
src/Entity/Place/RoomControl.php

@@ -17,7 +17,6 @@ use Doctrine\ORM\Mapping as ORM;
 // #[Auditable]
 #[ApiResource(operations: [])]
 #[ORM\Entity]
-#[ORM\Table(name: 'Control')]
 class RoomControl extends AbstractControl
 {
     #[ORM\ManyToOne(inversedBy: 'controls')]

+ 0 - 1
src/Entity/Place/RoomRepair.php

@@ -19,7 +19,6 @@ use Doctrine\ORM\Mapping as ORM;
 // #[Auditable]
 #[ApiResource(operations: [])]
 #[ORM\Entity]
-#[ORM\Table(name: 'Repair')]
 class RoomRepair extends AbstractRepair
 {
     #[ORM\ManyToOne(inversedBy: 'repairs')]

+ 2 - 1
src/Entity/Product/AbstractProduct.php

@@ -12,8 +12,9 @@ use Doctrine\ORM\Mapping as ORM;
 /**
  * Classe de base de @see Equipment, Intangible.
  */
-#[ORM\MappedSuperclass]
+#[ORM\Entity]
 #[ORM\Table(name: 'Product')]
+#[ORM\InheritanceType('SINGLE_TABLE')]
 #[ORM\DiscriminatorColumn(name: 'discr', type: 'string')]
 #[ORM\DiscriminatorMap(
     [

+ 0 - 1
src/Entity/Product/Equipment.php

@@ -24,7 +24,6 @@ use Doctrine\ORM\Mapping as ORM;
 #[ApiResource(operations: [])]
 // #[Auditable]
 #[ORM\Entity]
-#[ORM\Table(name: 'Product')]
 class Equipment extends AbstractProduct
 {
     #[ORM\ManyToOne(inversedBy: 'equipments')]

+ 0 - 1
src/Entity/Product/EquipmentControl.php

@@ -19,7 +19,6 @@ use Doctrine\ORM\Mapping as ORM;
 // #[Auditable]
 #[ApiResource(operations: [])]
 #[ORM\Entity]
-#[ORM\Table(name: 'Control')]
 class EquipmentControl extends AbstractControl
 {
     #[ORM\ManyToOne(inversedBy: 'accompanistControl')]

+ 0 - 1
src/Entity/Product/EquipmentRepair.php

@@ -20,7 +20,6 @@ use Doctrine\ORM\Mapping as ORM;
 // #[Auditable]
 #[ApiResource(operations: [])]
 #[ORM\Entity]
-#[ORM\Table(name: 'Repair')]
 class EquipmentRepair extends AbstractRepair
 {
     #[ORM\ManyToOne(inversedBy: 'equipmentRepairProviders')]

+ 0 - 1
src/Entity/Product/Intangible.php

@@ -23,7 +23,6 @@ use Doctrine\ORM\Mapping as ORM;
 #[ApiResource(operations: [])]
 // #[Auditable]
 #[ORM\Entity]
-#[ORM\Table(name: 'Product')]
 class Intangible extends AbstractProduct
 {
     #[ORM\ManyToOne(inversedBy: 'intangibles')]