Fix referrers display to show only current referrers.

Updated the view to loop through current referrers in the accompanying period. Added new method `getReferrersHistoryCurrent` to the entity to filter and return only active referrers, ensuring correct display in the UI. Also included documentation for better code clarity.
This commit is contained in:
2024-09-16 15:25:25 +02:00
parent 5dfbdad13d
commit 6f28d154c8
3 changed files with 27 additions and 3 deletions

View File

@@ -394,7 +394,13 @@ class AccompanyingPeriodWork implements AccompanyingPeriodLinkedWithSocialIssues
}
/**
* @return ReadableCollection<int, User>
* Retrieves a collection of current referrers.
*
* This method filters the referrer history to get only those entries
* where the end date is null, maps them to their associated users,
* and returns them as a new ReadableCollection.
*
* @return ReadableCollection<int, User> collection of active referrers
*
* @Serializer\Groups({"accompanying_period_work:edit"})
*/
@@ -408,6 +414,18 @@ class AccompanyingPeriodWork implements AccompanyingPeriodLinkedWithSocialIssues
return new ArrayCollection(array_values($users));
}
/**
* @return ReadableCollection<int, AccompanyingPeriodWorkReferrerHistory>
*/
public function getReferrersHistoryCurrent(): ReadableCollection
{
return new ArrayCollection(
$this->getReferrersHistory()
->filter(fn (AccompanyingPeriodWorkReferrerHistory $h) => null === $h->getEndDate())
->getValues()
);
}
/**
* @return Collection<int, AccompanyingPeriodWorkReferrerHistory>
*/