@@ -101,7 +101,7 @@ class AirportService extends Service
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Don't lookup the airport, so just add in something generic
|
// Don't lookup the airport, so just add in something generic
|
||||||
if (!setting('general.auto_airport_lookup')) {
|
if (!setting('general.auto_airport_lookup', false)) {
|
||||||
$airport = new Airport([
|
$airport = new Airport([
|
||||||
'id' => $icao,
|
'id' => $icao,
|
||||||
'icao' => $icao,
|
'icao' => $icao,
|
||||||
|
|||||||
@@ -51,8 +51,13 @@ class FlightImporter extends ImportExport
|
|||||||
'fields' => 'nullable',
|
'fields' => 'nullable',
|
||||||
];
|
];
|
||||||
|
|
||||||
|
/** @var AirportService */
|
||||||
private $airportSvc;
|
private $airportSvc;
|
||||||
|
|
||||||
|
/** @var FareService */
|
||||||
private $fareSvc;
|
private $fareSvc;
|
||||||
|
|
||||||
|
/** @var FlightService */
|
||||||
private $flightSvc;
|
private $flightSvc;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -117,12 +117,7 @@ class ImportService extends Service
|
|||||||
|
|
||||||
// turn it into a collection and run some filtering
|
// turn it into a collection and run some filtering
|
||||||
$row = collect($row)->map(function ($val, $index) {
|
$row = collect($row)->map(function ($val, $index) {
|
||||||
$val = trim($val);
|
return trim($val);
|
||||||
if ($val === '') {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
return $val;
|
|
||||||
})->toArray();
|
})->toArray();
|
||||||
|
|
||||||
// Try to validate
|
// Try to validate
|
||||||
|
|||||||
@@ -467,6 +467,11 @@ class ImporterTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testFlightImporter(): void
|
public function testFlightImporter(): void
|
||||||
{
|
{
|
||||||
|
$this->updateSetting('general.auto_airport_lookup', false);
|
||||||
|
|
||||||
|
factory(Airport::class)->create(['icao' => 'KAUS']);
|
||||||
|
factory(Airport::class)->create(['icao' => 'KJFK']);
|
||||||
|
|
||||||
[$airline, $subfleet] = $this->insertFlightsScaffoldData();
|
[$airline, $subfleet] = $this->insertFlightsScaffoldData();
|
||||||
|
|
||||||
$file_path = base_path('tests/data/flights.csv');
|
$file_path = base_path('tests/data/flights.csv');
|
||||||
@@ -531,6 +536,19 @@ class ImporterTest extends TestCase
|
|||||||
// Check the subfleets
|
// Check the subfleets
|
||||||
$subfleets = $flight->subfleets;
|
$subfleets = $flight->subfleets;
|
||||||
$this->assertCount(1, $subfleets);
|
$this->assertCount(1, $subfleets);
|
||||||
|
|
||||||
|
// Reimport, see that data updates
|
||||||
|
$file_path = base_path('tests/data/flights-update.csv');
|
||||||
|
$status = $this->importSvc->importFlights($file_path);
|
||||||
|
|
||||||
|
$flight = Flight::where([
|
||||||
|
'airline_id' => $airline->id,
|
||||||
|
'flight_number' => '1972',
|
||||||
|
])->first();
|
||||||
|
|
||||||
|
$this->assertCount(1, $status['success']);
|
||||||
|
$this->assertEquals('12:00 CST', $flight->dpt_time);
|
||||||
|
$this->assertEquals('18:35 EST', $flight->arr_time);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -0,0 +1,2 @@
|
|||||||
|
airline,flight_number,route_code,route_leg,dpt_airport,arr_airport,alt_airport,days,dpt_time,arr_time,level,distance,flight_time,flight_type,load_factor, load_factor_variance,pilot_pay,route,notes,active,subfleets,fares,fields
|
||||||
|
VMS,1972, ,,KAUS,KJFK,KLGA,15,12:00 CST,18:35 EST,350,1477,207,J,85,0,100, ILEXY2 ZENZI LFK ELD J29 MEM Q29 JHW J70 STENT J70 MAGIO J70 LVZ LENDY6,"Just a flight",1,A32X,Y?price=300&cost=100&capacity=130;F?price=600&cost=400;B?,Departure Gate=4;Arrival Gate=C41
|
||||||
|
Reference in New Issue
Block a user