Skip to content

Commit

Permalink
update documentation #3424
Browse files Browse the repository at this point in the history
  • Loading branch information
sfinx13 committed Jan 9, 2025
1 parent 80282c7 commit 6e9ded3
Show file tree
Hide file tree
Showing 6 changed files with 67 additions and 6 deletions.
17 changes: 12 additions & 5 deletions src/Dto/Api/Response/SignalementResponse.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
use App\Entity\Enum\MotifRefus;
use App\Entity\Enum\ProfileDeclarant;
use App\Entity\Enum\Qualification;
use App\Entity\Enum\SignalementNewStatus;
use Nelmio\ApiDocBundle\Attribute\Model;
use OpenApi\Attributes as OA;

Expand Down Expand Up @@ -43,12 +44,18 @@ class SignalementResponse
)]
public Adresse $adresse;
#[OA\Property(
description: "Le statut du signalement peut prendre l'une des valeurs suivantes : `en cours` (le signalement est actif), `fermé` (le signalement est terminé), `refusé` (le signalement a été refusé), ou `archivé` (le signalement a été archivé).",
type: 'string',
enum: ['en cours', 'fermé', 'refusé', 'archivé'],
example: 'fermé'
description: "Le statut du signalement peut prendre l'une des valeurs suivantes : <br>
<ul>
<li>`NOUVEAU`</li>
<li>`EN_COURS`</li>
<li>`FERME`</li>
<li>`ARCHIVE`</li>
<li>`REFUSE`</li>
</ul>
.",
example: 'FERME'
)]
public string $statut;
public SignalementNewStatus $statut;

#[OA\Property(
description: 'Date à laquelle le signalement a été validé par un responsable territoire.<br>
Expand Down
15 changes: 15 additions & 0 deletions src/Entity/Enum/AffectationNewStatus.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
<?php

namespace App\Entity\Enum;

use App\Entity\Behaviour\EnumTrait;

enum AffectationNewStatus: string
{
use EnumTrait;

case NOUVEAU = 'NOUVEAU';
case EN_COURS = 'EN_COURS';
case FERME = 'FERME';
case REFUSE = 'REFUSE';
}
11 changes: 11 additions & 0 deletions src/Entity/Enum/AffectationStatus.php
Original file line number Diff line number Diff line change
Expand Up @@ -42,4 +42,15 @@ public static function mapFilterStatus(string $label): int
default => throw new \UnexpectedValueException('Unexpected affectation status : '.$label),
};
}

public static function mapNewStatus(int $codeStatus): string
{
return match ($codeStatus) {
0 => AffectationNewStatus::NOUVEAU->value,
1 => AffectationNewStatus::EN_COURS->value,
2 => AffectationNewStatus::REFUSE->value,
3 => AffectationNewStatus::FERME->value,
default => throw new \UnexpectedValueException('Unexpected affectation status : '.$codeStatus),
};
}
}
16 changes: 16 additions & 0 deletions src/Entity/Enum/SignalementNewStatus.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<?php

namespace App\Entity\Enum;

use App\Entity\Behaviour\EnumTrait;

enum SignalementNewStatus: string
{
use EnumTrait;

case NOUVEAU = 'NOUVEAU';
case EN_COURS = 'EN_COURS';
case FERME = 'FERME';
case ARCHIVE = 'ARCHIVE';
case REFUSE = 'REFUSE';
}
12 changes: 12 additions & 0 deletions src/Entity/Enum/SignalementStatus.php
Original file line number Diff line number Diff line change
Expand Up @@ -56,4 +56,16 @@ public static function mapFilterStatus(string $label): int
default => throw new \UnexpectedValueException('Unexpected signalement status : '.$label),
};
}

public static function mapNewStatus(int $codeStatus): SignalementNewStatus
{
return match ($codeStatus) {
1 => SignalementNewStatus::NOUVEAU,
2, 3 => SignalementNewStatus::EN_COURS,
6 => SignalementNewStatus::FERME,
7 => SignalementNewStatus::ARCHIVE,
8 => SignalementNewStatus::REFUSE,
default => throw new \UnexpectedValueException('Unexpected signalement code status : '.$codeStatus),
};
}
}
2 changes: 1 addition & 1 deletion src/Factory/Api/SignalementResponseFactory.php
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ public function createFromSignalement(Signalement $signalement): SignalementResp
$signalementResponse->uuid = $signalement->getUuid();
$signalementResponse->reference = $signalement->getReference();
$signalementResponse->dateCreation = $signalement->getCreatedAt()->format(\DATE_ATOM);
$signalementResponse->statut = SignalementStatus::tryFrom($signalement->getStatut())->label();
$signalementResponse->statut = SignalementStatus::mapNewStatus($signalement->getStatut());
$signalementResponse->dateValidation = $signalement->getValidatedAt()?->format(\DATE_ATOM);
$signalementResponse->dateCloture = $signalement->getClosedAt()?->format(\DATE_ATOM);
$signalementResponse->motifCloture = $signalement->getMotifCloture();
Expand Down

0 comments on commit 6e9ded3

Please sign in to comment.