|
|
@@ -121,25 +121,38 @@ class ScheduleBusinessRules
|
|
|
}
|
|
|
|
|
|
$provider = Provider::find($provider_id);
|
|
|
+ $min_price_proportional = 0 ;
|
|
|
+ $max_price_proportional = 0;
|
|
|
+
|
|
|
$provider_price_period = 0;
|
|
|
switch ($period_type):
|
|
|
case '2': //2 horas
|
|
|
$provider_price_period = $provider->daily_price_2h;
|
|
|
+ $min_price_proportional = $min_price * 0.30;
|
|
|
+ $max_price_proportional = $max_price * 0.30;
|
|
|
break;
|
|
|
case '4': //4 horas
|
|
|
$provider_price_period = $provider->daily_price_4h;
|
|
|
+ $min_price_proportional = $min_price * 0.55;
|
|
|
+ $max_price_proportional = $max_price * 0.55;
|
|
|
break;
|
|
|
case '6': //6 horas
|
|
|
$provider_price_period = $provider->daily_price_6h;
|
|
|
+ $min_price_proportional = $min_price * 0.85;
|
|
|
+ $max_price_proportional = $max_price * 0.85;
|
|
|
+
|
|
|
break;
|
|
|
case '8': //8 horas
|
|
|
$provider_price_period = $provider->daily_price_8h;
|
|
|
+ $min_price_proportional = $min_price;
|
|
|
+ $max_price_proportional = $max_price;
|
|
|
+
|
|
|
break;
|
|
|
default:
|
|
|
throw new \Exception(__('validation.custom.schedule.invalid_period_type'));
|
|
|
endswitch;
|
|
|
|
|
|
- if ($provider_price_period < $min_price || $provider_price_period > $max_price) {
|
|
|
+ if ($provider_price_period < $min_price_proportional || $provider_price_period > $max_price_proportional) {
|
|
|
throw new \Exception(__('validation.custom.schedule.price_not_in_range'));
|
|
|
}
|
|
|
|