src/Entity/ChannelUserData/Cursus/PurchaseOrder.php line 28

Open in your IDE?
  1. <?php
  2. namespace App\Entity\ChannelUserData\Cursus;
  3. use Nellapp\Bundle\SDKBundle\TrackData\Attribute\TrackEntity;
  4. use Nellapp\Bundle\SDKBundle\TrackData\Attribute\TrackField;
  5. use App\Enum\ChannelUserData\Activity\CursusActivityTagEnum;
  6. use App\Repository\ChannelUserData\Cursus\PurchaseOrderRepository;
  7. use Doctrine\ORM\Mapping as ORM;
  8. use DrosalysWeb\ObjectExtensions\Blame\Model\BlameInterface;
  9. use DrosalysWeb\ObjectExtensions\Blame\Model\BlameTrait;
  10. use DrosalysWeb\ObjectExtensions\Timestamp\Model\TimestampInterface;
  11. use DrosalysWeb\ObjectExtensions\Timestamp\Model\TimestampTrait;
  12. use Symfony\Component\Validator\Constraints as Assert;
  13. #[
  14. ORM\Entity(repositoryClass: PurchaseOrderRepository::class),
  15. ORM\Table(name: 'channel_user_data_cursus_purchase_order'),
  16. TrackEntity(
  17. name: 'purchaseOrder.entity.track_data.entity.name',
  18. fieldGroups: [
  19. 'purchaseOrder' => [
  20. 'tags' => [ CursusActivityTagEnum::FOUNDING ]
  21. ]
  22. ],
  23. ),
  24. ]
  25. class PurchaseOrder implements TimestampInterface, BlameInterface
  26. {
  27. use TimestampTrait;
  28. use BlameTrait;
  29. #[ORM\Id, ORM\GeneratedValue]
  30. #[ORM\Column(type: 'integer')]
  31. private ?int $id = null;
  32. #[ORM\OneToOne(inversedBy: 'purchaseOrder', targetEntity: Founder::class)]
  33. #[ORM\JoinColumn(nullable: false, onDelete: 'CASCADE')]
  34. private ?Founder $founder = null;
  35. #[ORM\Column(type: 'string', length: 255, nullable: true)]
  36. #[
  37. Assert\Length(max: 255),
  38. ]
  39. #[TrackField(name: 'purchaseOrder.entity.number.label', fieldKey: 'purchaseOrder')]
  40. private ?string $number = null;
  41. public function getId(): ?int
  42. {
  43. return $this->id;
  44. }
  45. public function getFounder(): ?Founder
  46. {
  47. return $this->founder;
  48. }
  49. public function setFounder(?Founder $founder): PurchaseOrder
  50. {
  51. $this->founder = $founder;
  52. return $this;
  53. }
  54. public function getNumber(): ?string
  55. {
  56. return $this->number;
  57. }
  58. public function setNumber(?string $number): PurchaseOrder
  59. {
  60. $this->number = $number;
  61. return $this;
  62. }
  63. }