noticeRepository = $noticeRepositoryEloquent; } /** * @param Request $request * * @return mixed * @throws \Prettus\Repository\Exceptions\RepositoryException */ public function handleList(Request $request) { $this->noticeRepository->pushCriteria(new NoticeCriteria($request)); $this->noticeRepository->setPresenter(NoticePresenter::class); return $this->noticeRepository->searchNoticesByPage(); } /** * @param $id * * @return \Illuminate\Database\Eloquent\Model */ public function handleProfile($id) { $this->noticeRepository->setPresenter(NoticePresenter::class); return $this->noticeRepository->searchNoticeBy($id); } /** * @param Request $request * * @return mixed * @throws \Prettus\Validator\Exceptions\ValidatorException */ public function handleStore(Request $request) { $data = $request->all(); $data['admin_id'] = login_admin_id(); $notice = $this->noticeRepository->create($data); return $notice; } /** * @param Request $request * * @return mixed * @throws \Prettus\Validator\Exceptions\ValidatorException */ public function handleUpdate(Request $request) { $notice = $this->noticeRepository->update($request->all(), $request->get('id')); return $notice; } /** * @param Request $request * * @return mixed * @throws \Prettus\Validator\Exceptions\ValidatorException */ public function handleDelete($id) { return $this->noticeRepository->delete($id); } }