vendor/crosiersource/crosierlib-radx/src/Entity/Estoque/ListaPreco.php line 51

Open in your IDE?
  1. <?php
  2. namespace CrosierSource\CrosierLibRadxBundle\Entity\Estoque;
  3. use ApiPlatform\Core\Annotation\ApiFilter;
  4. use ApiPlatform\Core\Annotation\ApiResource;
  5. use ApiPlatform\Core\Bridge\Doctrine\Orm\Filter\OrderFilter;
  6. use ApiPlatform\Core\Bridge\Doctrine\Orm\Filter\SearchFilter;
  7. use ApiPlatform\Core\Serializer\Filter\PropertyFilter;
  8. use CrosierSource\CrosierLibBaseBundle\Doctrine\Annotations\EntityHandler;
  9. use CrosierSource\CrosierLibBaseBundle\Doctrine\Annotations\TrackedEntity;
  10. use CrosierSource\CrosierLibBaseBundle\Entity\EntityId;
  11. use CrosierSource\CrosierLibBaseBundle\Entity\EntityIdTrait;
  12. use DateTime;
  13. use Doctrine\ORM\Mapping as ORM;
  14. use Symfony\Component\Serializer\Annotation\Groups;
  15. /**
  16.  * @ApiResource(
  17.  *     normalizationContext={"groups"={"listaPreco","entityId"},"enable_max_depth"=true},
  18.  *     denormalizationContext={"groups"={"listaPreco"},"enable_max_depth"=true},
  19.  *
  20.  *     itemOperations={
  21.  *          "get"={"path"="/est/listaPreco/{id}", "security"="is_granted('ROLE_ESTOQUE')"},
  22.  *          "put"={"path"="/est/listaPreco/{id}", "security"="is_granted('ROLE_ESTOQUE')"},
  23.  *          "delete"={"path"="/est/listaPreco/{id}", "security"="is_granted('ROLE_ADMIN')"}
  24.  *     },
  25.  *     collectionOperations={
  26.  *          "get"={"path"="/est/listaPreco", "security"="is_granted('ROLE_ESTOQUE')"},
  27.  *          "post"={"path"="/est/listaPreco", "security"="is_granted('ROLE_ESTOQUE')"}
  28.  *     },
  29.  *
  30.  *     attributes={
  31.  *          "pagination_items_per_page"=10,
  32.  *          "formats"={"jsonld", "csv"={"text/csv"}}
  33.  *     }
  34.  * )
  35.  * @ApiFilter(PropertyFilter::class)
  36.  *
  37.  * @ApiFilter(SearchFilter::class, properties={"descricao": "partial", "id": "exact"})
  38.  * @ApiFilter(OrderFilter::class, properties={"id", "descricao", "updated"}, arguments={"orderParameterName"="order"})
  39.  *
  40.  * @EntityHandler(entityHandlerClass="CrosierSource\CrosierLibRadxBundle\EntityHandler\Estoque\ListaPrecoEntityHandler")
  41.  *
  42.  * @ORM\Entity(repositoryClass="CrosierSource\CrosierLibRadxBundle\Repository\Estoque\ListaPrecoRepository")
  43.  * @ORM\Table(name="est_lista_preco")
  44.  * @TrackedEntity
  45.  *
  46.  * @author Carlos Eduardo Pauluk
  47.  */
  48. class ListaPreco implements EntityId
  49. {
  50.     use EntityIdTrait;
  51.     /**
  52.      *
  53.      * @ORM\Column(name="descricao", type="string", nullable=false)
  54.      * @Groups("listaPreco")
  55.      *
  56.      * @var string|null
  57.      */
  58.     public ?string $descricao null;
  59.     /**
  60.      *
  61.      * @ORM\Column(name="dt_vigencia_ini", type="datetime", nullable=false)
  62.      * @Groups("listaPreco")
  63.      *
  64.      * @var DateTime|null
  65.      */
  66.     public ?DateTime $dtVigenciaIni null;
  67.     /**
  68.      *
  69.      * @ORM\Column(name="dt_vigencia_fim", type="datetime", nullable=true)
  70.      * @Groups("listaPreco")
  71.      *
  72.      * @var DateTime|null
  73.      */
  74.     public ?DateTime $dtVigenciaFim null;
  75. }