| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- <?php
- declare (strict_types=1);
- namespace App\ApiResources\Access;
- use ApiPlatform\Metadata\Put;
- use ApiPlatform\Metadata\Get;
- use ApiPlatform\Metadata\ApiResource;
- use ApiPlatform\Metadata\ApiProperty;
- use App\ApiResources\ApiResourcesInterface;
- use App\State\Processor\Access\AdminAccessProcessor;
- use App\State\Provider\Access\AdminAccessProvider;
- use JetBrains\PhpStorm\Pure;
- use Symfony\Component\Process\Process;
- use Symfony\Component\Validator\Constraints as Assert;
- /**
- * Classe resource qui contient les champs d'un compte admin
- */
- #[ApiResource(
- operations: [
- new Get(
- uriTemplate: '/admin-access/{id}',
- defaults: ['id' => 0]
- ),
- new Put(
- uriTemplate: '/admin-access/{id}',
- defaults: ['id' => 0],
- security: '(is_granted("ROLE_ADMIN_CORE") and object.getOrganizationId() == user.getOrganization().getId() )'
- )
- ],
- provider: AdminAccessProvider::class,
- processor : AdminAccessProcessor::class
- )]
- class AdminAccess implements ApiResourcesInterface
- {
- #[ApiProperty(identifier: true)]
- public ?int $id = null;
- private int $organizationId;
- private ?string $username = null;
- #[Assert\Email(message: 'invalid-email-format', mode: 'strict')]
- private ?string $email = null;
- public function getId(): ?int
- {
- return $this->id;
- }
- public function setId(?int $id): self
- {
- $this->id = $id;
- return $this;
- }
- public function getOrganizationId(): ?int
- {
- return $this->organizationId;
- }
- public function setOrganizationId(?int $organizationId): self
- {
- $this->organizationId = $organizationId;
- return $this;
- }
- public function getUsername(): ?string
- {
- return $this->username;
- }
- public function setUsername(?string $username): self
- {
- $this->username = $username;
- return $this;
- }
- public function getEmail(): ?string
- {
- return $this->email;
- }
- public function setEmail(?string $email): self
- {
- $this->email = $email;
- return $this;
- }
- }
|