wip: improved insurance selection

This commit is contained in:
Björn Fromme
2025-10-02 12:11:23 +02:00
parent 8a495346d6
commit d7929dd855
6 changed files with 91 additions and 17 deletions
+5 -1
View File
@@ -5,6 +5,7 @@ declare(strict_types=1);
namespace App\Service;
use App\BusProNet\Model\Insurance;
use App\BusProNet\Traits\SortByPriceTrait;
use App\Form\Model\BookingCreateDto;
use App\Form\Model\ParticipantDto;
use App\Model\InsuranceEligibilityCriteria;
@@ -19,6 +20,7 @@ use Carbon\Carbon;
*/
class InsuranceMatchingService
{
use SortByPriceTrait;
public function __construct(
private readonly BookingPriceCalculatorService $priceCalculatorService,
) {
@@ -41,10 +43,12 @@ class InsuranceMatchingService
return []; // Cannot match insurances without travel dates
}
return array_filter(
$eligibleInsurances = array_filter(
$insurances,
fn (Insurance $insurance) => $this->isInsuranceEligible($insurance, $criteria)
);
return $this->sortByPrice($eligibleInsurances);
}
/**