'\d+'], normalizationContext: ['groups' => ['bovine:read']], ), new GetCollection( normalizationContext: ['groups' => ['bovine:read']], ), new Post( normalizationContext: ['groups' => ['bovine:read']], denormalizationContext: ['groups' => ['bovine:write']], security: "is_granted('ROLE_ADMIN')", ), new Patch( requirements: ['id' => '\d+'], normalizationContext: ['groups' => ['bovine:read']], denormalizationContext: ['groups' => ['bovine:write']], security: "is_granted('ROLE_ADMIN')", ), ], security: "is_granted('ROLE_USER')", )] class Bovine { #[ORM\Id] #[ORM\GeneratedValue] #[ORM\Column] #[Groups(['bovine:read'])] private ?int $id = null; #[ORM\Column(length: 50)] #[Groups(['bovine:read', 'bovine:write'])] private string $nationalNumber = ''; #[ORM\Column(nullable: true)] #[Groups(['bovine:read', 'bovine:write'])] private ?int $receivedWeight = null; #[ORM\Column(type: 'date_immutable', nullable: true)] #[Groups(['bovine:read', 'bovine:write'])] #[Context([DateTimeNormalizer::FORMAT_KEY => 'Y-m-d'])] private ?DateTimeImmutable $arrivalDate = null; #[ORM\ManyToOne(inversedBy: 'bovines')] #[Groups(['bovine:read', 'bovine:write'])] private ?BuildingCase $buildingCase = null; public function getId(): ?int { return $this->id; } public function getNationalNumber(): string { return $this->nationalNumber; } public function setNationalNumber(string $nationalNumber): static { $this->nationalNumber = $nationalNumber; return $this; } public function getReceivedWeight(): ?int { return $this->receivedWeight; } public function setReceivedWeight(?int $receivedWeight): static { $this->receivedWeight = $receivedWeight; return $this; } public function getArrivalDate(): ?DateTimeImmutable { return $this->arrivalDate; } public function setArrivalDate(?DateTimeImmutable $arrivalDate): static { $this->arrivalDate = $arrivalDate; return $this; } public function getBuildingCase(): ?BuildingCase { return $this->buildingCase; } public function setBuildingCase(?BuildingCase $buildingCase): static { $this->buildingCase = $buildingCase; return $this; } }