+sub best_price {
+ my ($self, %params) = @_;
+
+ my @prices = $self->availabe_prices;
+ my $customer = $self->record->customer;
+ my $min_price = min_by { $_->price } @prices;
+
+ return $min_price if !$customer || !$customer->cv_klass;
+
+ my $best_price = first { $_->spec == $customer->cv_class } @prices;
+
+ return $best_price || $min_price;
+}
+