src/Entity/ChannelUserData/AdminChannelUserData/AdminChannelUserDataPrice.php line 25

Open in your IDE?
  1. <?php
  2. namespace App\Entity\ChannelUserData\AdminChannelUserData;
  3. use App\Entity\ChannelUserData\AdminChannelUserData;
  4. use App\Enum\ChannelUserData\Activity\AdminChannelUserDataActivityTagEnum;
  5. use Doctrine\ORM\Mapping\JoinColumn;
  6. use Nellapp\Bundle\SDKBundle\TrackData\Attribute\TrackEntity;
  7. use Doctrine\ORM\Mapping as ORM;
  8. use Nellapp\Bundle\SDKBundle\TrackData\Attribute\TrackField;
  9. use Nellapp\Bundle\SDKBundle\Utils\NellappFormatService;
  10. #[
  11.     ORM\Entity(),
  12.     ORM\Table(name'channel_user_data_admin_prices'),
  13.     TrackEntity(
  14.         name'Tarif',
  15.         fieldGroups: [
  16.             'price' => [
  17.                 'tags' => [AdminChannelUserDataActivityTagEnum::PRICES],
  18.             ],
  19.         ]
  20.     ),
  21. ]
  22. class AdminChannelUserDataPrice implements \Stringable
  23. {
  24.     #[ORM\IdORM\GeneratedValueORM\Column(type'integer')]
  25.     private ?int $id null;
  26.     #[ORM\ManyToOne(targetEntityAdminChannelUserData::class, fetch'EAGER'inversedBy'adminChannelUserDataPrices')]
  27.     #[JoinColumn(nullablefalseonDelete'CASCADE')]
  28.     private ?AdminChannelUserData $channelUserData null;
  29.     #[ORM\Column(type'integer'nullablefalse)]
  30.     #[TrackField(name'Tarif'fieldKey'price', callable: 'formatPrice'callableClassNellappFormatService::class)]
  31.     private ?int $value null//cents
  32.     #[ORM\Column(type'integer'nullablefalseoptions: ['default' => 0])]
  33.     private int $sortOrder 0;
  34.     public function __toString(): string
  35.     {
  36.         return (string) ($this->sortOrder 1);
  37.     }
  38.     public function getId(): ?int
  39.     {
  40.         return $this->id;
  41.     }
  42.     public function getChannelUserData(): ?AdminChannelUserData
  43.     {
  44.         return $this->channelUserData;
  45.     }
  46.     public function setChannelUserData(?AdminChannelUserData $channelUserData): AdminChannelUserDataPrice
  47.     {
  48.         $this->channelUserData $channelUserData;
  49.         return $this;
  50.     }
  51.     public function getValue(): ?int
  52.     {
  53.         return $this->value;
  54.     }
  55.     public function setValue(?int $value): AdminChannelUserDataPrice
  56.     {
  57.         $this->value $value;
  58.         return $this;
  59.     }
  60.     public function getSortOrder(): int
  61.     {
  62.         return $this->sortOrder;
  63.     }
  64.     public function setSortOrder(int $sortOrder): AdminChannelUserDataPrice
  65.     {
  66.         $this->sortOrder $sortOrder;
  67.         return $this;
  68.     }
  69. }