service->getAll($request); $metadata['count'] = count($models); if(!$models){ return $this->ResponseError([], null, 'No Data Found!'); } return $this->ResponseSuccess($models, $metadata, 'DummyModel has been fetch successfully.'); } public function index(Request $request) { $perPage = request('per_page') ?? env('PER_PAGE'); $models = $this->service->index($request, $perPage); if(!$models){ return $this->ResponseError([], null, 'No Data Found!'); } return $this->ResponseSuccess($models, null, 'DummyModel has been fetch successfully.'); } public function store(DummyModelStoreRequest $request) { DB::beginTransaction(); try { $data = $this->service->create($request->validated()); DB::commit(); return $this->ResponseSuccess($data, [], 'DummyModel has been create successfully.'); } catch (\Exception $e) { DB::rollBack(); return $this->ResponseError($e->getMessage(). " in " . $e->getFile() . " on line " . $e->getLine(), null, 'Data Process Error!'); } } public function show(int $id) { $model = $this->service->getById($id); if(!$model){ return $this->ResponseError([], null, 'No Data Found!'); } return $this->ResponseSuccess($model, null, 'DummyModel has been show successfully.'); } public function update(DummyModelUpdateRequest $request, int $id) { DB::beginTransaction(); try { $data = $this->service->update($id, $request->validated()); DB::commit(); return $this->ResponseSuccess($data, null, 'DummyModel has been update successfully.'); } catch (\Exception $e) { DB::rollBack(); return $this->ResponseError($e->getMessage(). " in " . $e->getFile() . " on line " . $e->getLine(), null, 'Data Process Error!'); } } public function destroy(int $id) { DB::beginTransaction(); try { $data = $this->service->delete($id); if(!$data){ return $this->ResponseError([], null, 'Data Not Found!', 204); } DB::commit(); return $this->ResponseSuccess($data, null, 'DummyModel has been delete successfully.', 200); } catch (\Exception $e) { DB::rollBack(); return $this->ResponseError($e->getMessage(). " in " . $e->getFile() . " on line " . $e->getLine(), null, 'Data Not Found!'); } } }