Fix For GH Costs (#1088)

* Fix For GH Costs.

PR aims to fix the problem where Airport GH cost is not defined but recored to db as 0.00 or 0 (default value for airports table)
In such cases settings/default apt gh cost will be used.

* Updated logic for JetA1 cost check

* Remove default costs being used during import
This commit is contained in:
B.Fatih KOZ
2021-03-19 23:42:36 +03:00
committed by GitHub
parent 9bb192b97f
commit bbd02bf5c7
2 changed files with 16 additions and 6 deletions

View File

@@ -153,7 +153,12 @@ class PirepFinanceService extends Service
{
$ap = $pirep->dpt_airport;
// Get Airport Fuel Cost or revert back to settings
$fuel_cost = $ap->fuel_jeta_cost ?? setting('airports.default_jet_a_fuel_cost');
if (empty($ap->fuel_jeta_cost)) {
$fuel_cost = setting('airports.default_jet_a_fuel_cost');
} else {
$fuel_cost = $ap->fuel_jeta_cost;
}
if (setting('pireps.advanced_fuel', false)) {
$ac = $pirep->aircraft;
// Reading second row by skip(1) to reach the previous accepted pirep. Current pirep is at the first row
@@ -546,7 +551,12 @@ class PirepFinanceService extends Service
*/
public function getGroundHandlingCost(Pirep $pirep, Airport $airport): ?float
{
$gh_cost = $airport->ground_handling_cost ?? setting('airports.default_ground_handling_cost');
if (empty($airport->ground_handling_cost)) {
$gh_cost = setting('airports.default_ground_handling_cost');
} else {
$gh_cost = $airport->ground_handling_cost;
}
if (!filled($pirep->aircraft->subfleet->ground_handling_multiplier)) {
return $gh_cost;
}

View File

@@ -31,12 +31,12 @@ class AirportImporter extends BaseImporter
$ground_handling_cost = (float) $row->ground_handling_cost;
$fuel_jetA_cost = (float) $row->fuel_jeta_cost;
if ($ground_handling_cost === null && $ground_handling_cost !== 0) {
$ground_handling_cost = (float) setting('general.default_ground_handling_cost');
if (empty($ground_handling_cost)) {
$ground_handling_cost = 0;
}
if ($fuel_jetA_cost === null && $fuel_jetA_cost !== 0) {
$fuel_jetA_cost = (float) setting('general.default_jetA_fuel_cost');
if (empty($fuel_jetA_cost)) {
$fuel_jetA_cost = 0;
}
$attrs = [