From 9cae6725ef64fff47109b73f2f024ca1ad59ed92 Mon Sep 17 00:00:00 2001 From: Daniel Subiabre Date: Sat, 25 Jan 2025 12:33:36 +0100 Subject: [PATCH] Add territory data to project resources --- .../Project/ProjectApiResource.php | 6 +++ src/ApiResource/Project/ProjectTerritory.php | 30 ++++++++++++++ src/Entity/Project/Project.php | 18 +++++++++ src/Entity/Project/ProjectTerritory.php | 39 +++++++++++++++++++ 4 files changed, 93 insertions(+) create mode 100644 src/ApiResource/Project/ProjectTerritory.php create mode 100644 src/Entity/Project/ProjectTerritory.php diff --git a/src/ApiResource/Project/ProjectApiResource.php b/src/ApiResource/Project/ProjectApiResource.php index aab7519..6633352 100644 --- a/src/ApiResource/Project/ProjectApiResource.php +++ b/src/ApiResource/Project/ProjectApiResource.php @@ -66,6 +66,12 @@ class ProjectApiResource #[Assert\NotBlank()] public string $subtitle; + /** + * ISO 3166 data about the Project's territory of interest. + */ + #[Assert\Valid()] + public ProjectTerritory $territory; + /** * Free-form rich text description for the Project. */ diff --git a/src/ApiResource/Project/ProjectTerritory.php b/src/ApiResource/Project/ProjectTerritory.php new file mode 100644 index 0000000..1211d3e --- /dev/null +++ b/src/ApiResource/Project/ProjectTerritory.php @@ -0,0 +1,30 @@ +territory; + } + + public function setTerritory(ProjectTerritory $territory): static + { + $this->territory = $territory; + + return $this; + } + public function getDescription(): ?string { return $this->description; diff --git a/src/Entity/Project/ProjectTerritory.php b/src/Entity/Project/ProjectTerritory.php new file mode 100644 index 0000000..fd0f811 --- /dev/null +++ b/src/Entity/Project/ProjectTerritory.php @@ -0,0 +1,39 @@ +country = $country; + $this->subLvl1 = $subLvl1 ?? null; + $this->subLvl2 = $subLvl2 ?? null; + } +}