From ad96319d97f337522e463baf8e117e83cc082315 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Fastr=C3=A9?= Date: Fri, 29 Apr 2022 16:41:24 +0200 Subject: [PATCH] use traits to handle createdAt/updatedAt and by on AccompanyingCourseEvaluationDocument --- .../Doctrine/Model/TrackCreationTrait.php | 3 + .../Doctrine/Model/TrackUpdateTrait.php | 3 + ...companyingPeriodWorkEvaluationDocument.php | 96 ++----------------- 3 files changed, 12 insertions(+), 90 deletions(-) diff --git a/src/Bundle/ChillMainBundle/Doctrine/Model/TrackCreationTrait.php b/src/Bundle/ChillMainBundle/Doctrine/Model/TrackCreationTrait.php index a991399c8..cb01870bc 100644 --- a/src/Bundle/ChillMainBundle/Doctrine/Model/TrackCreationTrait.php +++ b/src/Bundle/ChillMainBundle/Doctrine/Model/TrackCreationTrait.php @@ -16,17 +16,20 @@ use DateTime; use DateTimeImmutable; use DateTimeInterface; use Doctrine\ORM\Mapping as ORM; +use Symfony\Component\Serializer\Annotation as Serializer; trait TrackCreationTrait { /** * @ORM\Column(type="datetime_immutable", nullable=true, options={"default": NULL}) + * @Serializer\Groups({"read"}) */ private ?DateTimeImmutable $createdAt = null; /** * @ORM\ManyToOne(targetEntity=User::class) * @ORM\JoinColumn(nullable=true) + * @Serializer\Groups({"read"}) */ private ?User $createdBy = null; diff --git a/src/Bundle/ChillMainBundle/Doctrine/Model/TrackUpdateTrait.php b/src/Bundle/ChillMainBundle/Doctrine/Model/TrackUpdateTrait.php index 3c706459c..fbe967cca 100644 --- a/src/Bundle/ChillMainBundle/Doctrine/Model/TrackUpdateTrait.php +++ b/src/Bundle/ChillMainBundle/Doctrine/Model/TrackUpdateTrait.php @@ -16,17 +16,20 @@ use DateTime; use DateTimeImmutable; use DateTimeInterface; use Doctrine\ORM\Mapping as ORM; +use Symfony\Component\Serializer\Annotation as Serializer; trait TrackUpdateTrait { /** * @ORM\Column(type="datetime_immutable", nullable=true, options={"default": NULL}) + * @Serializer\Groups({"read"}) */ private ?DateTimeImmutable $updatedAt = null; /** * @ORM\ManyToOne(targetEntity=User::class) * @ORM\JoinColumn(nullable=true) + * @Serializer\Groups({"read"}) */ private ?User $updatedBy = null; diff --git a/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluationDocument.php b/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluationDocument.php index b3feb40dd..5e412a82c 100644 --- a/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluationDocument.php +++ b/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluationDocument.php @@ -13,10 +13,8 @@ namespace Chill\PersonBundle\Entity\AccompanyingPeriod; use Chill\DocGeneratorBundle\Entity\DocGeneratorTemplate; use Chill\DocStoreBundle\Entity\StoredObject; -use Chill\MainBundle\Doctrine\Model\TrackCreationInterface; -use Chill\MainBundle\Doctrine\Model\TrackUpdateInterface; -use Chill\MainBundle\Entity\User; -use DateTimeInterface; +use Chill\MainBundle\Doctrine\Model\TrackCreationTrait; +use Chill\MainBundle\Doctrine\Model\TrackUpdateTrait; use Doctrine\ORM\Mapping as ORM; use RuntimeException; use Symfony\Component\Serializer\Annotation as Serializer; @@ -31,6 +29,10 @@ use Symfony\Component\Validator\Constraints as Assert; */ class AccompanyingPeriodWorkEvaluationDocument implements \Chill\MainBundle\Doctrine\Model\TrackCreationInterface, \Chill\MainBundle\Doctrine\Model\TrackUpdateInterface { + use TrackCreationTrait; + + use TrackUpdateTrait; + /** * @ORM\ManyToOne( * targetEntity=AccompanyingPeriodWorkEvaluation::class, @@ -39,22 +41,6 @@ class AccompanyingPeriodWorkEvaluationDocument implements \Chill\MainBundle\Doct */ private ?AccompanyingPeriodWorkEvaluation $accompanyingPeriodWorkEvaluation = null; - /** - * @ORM\Column(type="datetime_immutable", nullable=true, options={"default": null}) - * @Serializer\Groups({"read"}) - * @Serializer\Groups({"accompanying_period_work_evaluation:create"}) - */ - private ?\DateTimeImmutable $createdAt = null; - - /** - * @ORM\ManyToOne( - * targetEntity=User::class - * ) - * @Serializer\Groups({"read"}) - * @Serializer\Groups({"accompanying_period_work_evaluation:create"}) - */ - private ?User $createdBy = null; - /** * @ORM\Id * @ORM\GeneratedValue @@ -110,40 +96,11 @@ class AccompanyingPeriodWorkEvaluationDocument implements \Chill\MainBundle\Doct */ private ?string $title = ''; - /** - * @ORM\Column(type="datetime_immutable", nullable=true, options={"default": null}) - * @Serializer\Groups({"read"}) - * @Serializer\Groups({"accompanying_period_work_evaluation:create"}) - */ - private ?\DateTimeImmutable $updatedAt = null; - - /** - * @ORM\ManyToOne( - * targetEntity=User::class - * ) - * @Serializer\Groups({"read"}) - * @Serializer\Groups({"accompanying_period_work_evaluation:create"}) - */ - private ?User $updatedBy = null; - public function getAccompanyingPeriodWorkEvaluation(): ?AccompanyingPeriodWorkEvaluation { return $this->accompanyingPeriodWorkEvaluation; } - /** - * @return \DateTimeImmutable|null - */ - public function getCreatedAt(): ?DateTimeInterface - { - return $this->createdAt; - } - - public function getCreatedBy(): ?User - { - return $this->createdBy; - } - public function getId(): ?int { return $this->id; @@ -172,19 +129,6 @@ class AccompanyingPeriodWorkEvaluationDocument implements \Chill\MainBundle\Doct return $this->title; } - /** - * @return DateTimeImmutable|null - */ - public function getUpdatedAt(): ?DateTimeInterface - { - return $this->updatedAt; - } - - public function getUpdatedBy(): ?User - { - return $this->updatedBy; - } - public function setAccompanyingPeriodWorkEvaluation(?AccompanyingPeriodWorkEvaluation $accompanyingPeriodWorkEvaluation): AccompanyingPeriodWorkEvaluationDocument { // if an evaluation is already associated, we cannot change the association (removing the association, @@ -202,20 +146,6 @@ class AccompanyingPeriodWorkEvaluationDocument implements \Chill\MainBundle\Doct return $this; } - public function setCreatedAt(DateTimeInterface $datetime): TrackCreationInterface - { - $this->createdAt = $datetime; - - return $this; - } - - public function setCreatedBy(User $user): TrackCreationInterface - { - $this->createdBy = $user; - - return $this; - } - /** * @param mixed $key * @@ -248,18 +178,4 @@ class AccompanyingPeriodWorkEvaluationDocument implements \Chill\MainBundle\Doct return $this; } - - public function setUpdatedAt(DateTimeInterface $datetime): TrackUpdateInterface - { - $this->updatedAt = $datetime; - - return $this; - } - - public function setUpdatedBy(User $user): TrackUpdateInterface - { - $this->updatedBy = $user; - - return $this; - } }