![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/medad.corals.io/Corals/modules/Medad/Http/Controllers/API/ |
<?php namespace Corals\Modules\Medad\Http\Controllers\API; use Corals\Foundation\Http\Controllers\APIBaseController; use Corals\Modules\Medad\DataTables\BranchesDataTable; use Corals\Modules\Medad\Http\Requests\BranchRequest; use Corals\Modules\Medad\Models\Branch; use Corals\Modules\Medad\Models\Company; use Corals\Modules\Medad\Services\BranchService; use Corals\Modules\Medad\Transformers\API\BranchPresenter; use Illuminate\Http\JsonResponse; class BranchesController extends APIBaseController { protected $branchService; public function __construct(BranchService $branchService) { $this->branchService = $branchService; $this->branchService->setPresenter(new BranchPresenter()); parent::__construct(); } /** * @param BranchRequest $request * @param BranchesDataTable $dataTable * @param Company $company * @return mixed */ public function index(BranchRequest $request, BranchesDataTable $dataTable) { $branches = $dataTable->query(new Branch()); return $this->branchService->index($branches, $dataTable); } /** * @param BranchRequest $request * @param Company $company * @return JsonResponse */ public function store(BranchRequest $request, Company $company) { try { $company = $this->branchService->store($request, Branch::class, ['parent_id' => $company->id]); return apiResponse($this->branchService->getModelDetails(), trans('Corals::messages.success.created', ['item' => $company->name])); } catch (\Exception $exception) { return apiExceptionResponse($exception); } } /** * @param BranchRequest $request * @param Company $company * @param Branch $branch * @return JsonResponse */ public function show(BranchRequest $request, Company $company, Branch $branch) { try { return apiResponse($this->branchService->getModelDetails($branch)); } catch (\Exception $exception) { return apiExceptionResponse($exception); } } /** * @param BranchRequest $request * @param Company $company * @param Branch $branch * @return JsonResponse */ public function update(BranchRequest $request, Company $company, Branch $branch) { try { $this->branchService->update($request, $branch); return apiResponse($this->branchService->getModelDetails(), trans('Corals::messages.success.updated', ['item' => $company->name])); } catch (\Exception $exception) { return apiExceptionResponse($exception); } } /** * @param BranchRequest $request * @param Company $company * @param Branch $branch * @return JsonResponse */ public function destroy(BranchRequest $request, Company $company, Branch $branch) { try { $this->branchService->destroy($request, $branch); return apiResponse([], trans('Corals::messages.success.deleted', ['item' => $company->name])); } catch (\Exception $exception) { return apiExceptionResponse($exception); } } }