Add a /api/pirep/{id}/update call

This commit is contained in:
Nabeel Shahzad
2018-01-30 11:36:22 -06:00
parent 9a426f79f9
commit c8ac739820
3 changed files with 84 additions and 6 deletions

View File

@@ -2,6 +2,7 @@
namespace App\Http\Controllers\Api;
use App\Http\Requests\Acars\UpdateRequest;
use Auth;
use Log;
use Illuminate\Http\Request;
@@ -114,6 +115,33 @@ class PirepController extends RestController
return new PirepResource($pirep);
}
/**
* Create a new PIREP and place it in a "inprogress" and "prefile" state
* Once ACARS updates are being processed, then it can go into an 'ENROUTE'
* status, and whatever other statuses may be defined
*
* @param $id
* @param UpdateRequest $request
* @return PirepResource
* @throws \Symfony\Component\HttpKernel\Exception\BadRequestHttpException
* @throws \Prettus\Validator\Exceptions\ValidatorException
*/
public function update($id, UpdateRequest $request)
{
Log::info('PIREP Update, user ' . Auth::id(), $request->post());
$pirep = $this->pirepRepo->find($id);
$this->checkCancelled($pirep);
$attrs = $request->post();
$attrs['user_id'] = Auth::id();
$pirep = $this->pirepRepo->update($attrs, $id);
PirepResource::withoutWrapping();
return new PirepResource($pirep);
}
/**
* File the PIREP
* @param $id