write the route if it hasn't been set by acars #184
This commit is contained in:
parent
7a6b228d8f
commit
5a89b4f194
@ -177,6 +177,7 @@ class PirepController extends RestController
|
||||
* @return PirepResource
|
||||
* @throws \Symfony\Component\HttpKernel\Exception\BadRequestHttpException
|
||||
* @throws \Illuminate\Database\Eloquent\ModelNotFoundException
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function file($id, FileRequest $request)
|
||||
{
|
||||
@ -198,6 +199,15 @@ class PirepController extends RestController
|
||||
Log::error($e);
|
||||
}
|
||||
|
||||
# See if there there is any route data posted
|
||||
# If there isn't, then just write the route data from the
|
||||
# route that's been posted from the PIREP
|
||||
$w = ['pirep_id' => $pirep->id, 'type' => AcarsType::ROUTE];
|
||||
$count = Acars::where($w)->count(['id']);
|
||||
if($count === 0) {
|
||||
$this->pirepSvc->saveRoute($pirep);
|
||||
}
|
||||
|
||||
PirepResource::withoutWrapping();
|
||||
return new PirepResource($pirep);
|
||||
}
|
||||
|
@ -102,6 +102,7 @@ class PIREPService extends BaseService
|
||||
* Save the route into the ACARS table with AcarsType::ROUTE
|
||||
* @param Pirep $pirep
|
||||
* @return Pirep
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function saveRoute(Pirep $pirep): Pirep
|
||||
{
|
||||
@ -111,13 +112,13 @@ class PIREPService extends BaseService
|
||||
'type' => AcarsType::ROUTE,
|
||||
])->delete();
|
||||
|
||||
# Delete the route
|
||||
if (empty($pirep->route)) {
|
||||
# See if a route exists
|
||||
if (!filled($pirep->route)) {
|
||||
return $pirep;
|
||||
}
|
||||
|
||||
if(!$pirep->dpt_airport) {
|
||||
Log::error('saveRoute: dpt_airport not found: '.$pirep->dpt_airport_id);
|
||||
if (!filled($pirep->dpt_airport)) {
|
||||
Log::error('saveRoute: dpt_airport not found: ' . $pirep->dpt_airport_id);
|
||||
return $pirep;
|
||||
}
|
||||
|
||||
|
@ -55,7 +55,7 @@
|
||||
|
||||
<div class="form-group col-sm-6">
|
||||
{!! Form::label('timezone', 'Timezone:') !!}
|
||||
{!! Form::select('timezone', $timezones, null, ['class' => 'select2']); !!}
|
||||
{!! Form::select('timezone', $timezones, null, ['id' => 'timezone', 'class' => 'select2']); !!}
|
||||
<p class="text-danger">{{ $errors->first('timezone') }}</p>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -32,7 +32,7 @@ $(document).ready(function() {
|
||||
|
||||
$('a.airport_data_lookup').click(function(e) {
|
||||
e.preventDefault();
|
||||
var icao = $("input#airport_icao").val();
|
||||
const icao = $("input#airport_icao").val();
|
||||
if(icao === '') {
|
||||
return;
|
||||
}
|
||||
|
@ -189,7 +189,7 @@ class AcarsTest extends TestCase
|
||||
# File the PIREP now
|
||||
$uri = '/api/pireps/'.$pirep_id.'/file';
|
||||
$response = $this->post($uri, []);
|
||||
$response->assertStatus(400); // missing the flight time
|
||||
$response->assertStatus(400); // missing field
|
||||
|
||||
$response = $this->post($uri, ['flight_time' => '1:30']);
|
||||
$response->assertStatus(400); // invalid flight time
|
||||
|
Loading…
Reference in New Issue
Block a user