From b013d118ababa48faf71d99e17c29c60db04c1f1 Mon Sep 17 00:00:00 2001 From: David Bomba Date: Tue, 18 Oct 2016 19:31:21 +1100 Subject: [PATCH] Add Delete/Update methods into VendorAPIController --- app/Http/Controllers/VendorApiController.php | 70 ++++++++++++++++++++ 1 file changed, 70 insertions(+) diff --git a/app/Http/Controllers/VendorApiController.php b/app/Http/Controllers/VendorApiController.php index 3b0c2dadd764..024ec906da8c 100644 --- a/app/Http/Controllers/VendorApiController.php +++ b/app/Http/Controllers/VendorApiController.php @@ -1,5 +1,6 @@ itemResponse($vendor); } + + /** + * @SWG\Put( + * path="/vendors/{vendor_id}", + * tags={"vendor"}, + * summary="Update a vendor", + * @SWG\Parameter( + * in="body", + * name="body", + * @SWG\Schema(ref="#/definitions/Vendor") + * ), + * @SWG\Response( + * response=200, + * description="Update vendor", + * @SWG\Schema(type="object", @SWG\Items(ref="#/definitions/Vendor")) + * ), + * @SWG\Response( + * response="default", + * description="an ""unexpected"" error" + * ) + * ) + */ + + public function update(UpdateVendorRequest $request, $publicId) + { + if ($request->action) { + return $this->handleAction($request); + } + + $data = $request->input(); + $data['public_id'] = $publicId; + $vendor = $this->vendorRepo->save($data, $request->entity()); + + $vendor->load(['vendor_contacts']); + + return $this->itemResponse($vendor); + } + + + /** + * @SWG\Delete( + * path="/vendors/{vendor_id}", + * tags={"vendor"}, + * summary="Delete a vendor", + * @SWG\Parameter( + * in="body", + * name="body", + * @SWG\Schema(ref="#/definitions/Vendor") + * ), + * @SWG\Response( + * response=200, + * description="Delete vendor", + * @SWG\Schema(type="object", @SWG\Items(ref="#/definitions/Vendor")) + * ), + * @SWG\Response( + * response="default", + * description="an ""unexpected"" error" + * ) + * ) + */ + + public function destroy(UpdateVendorRequest $request) + { + $vendor = $request->entity(); + + $this->vendorRepo->delete($vendor); + + return $this->itemResponse($vendor); + } }