filter($request->all())->sort(); $list = $query->simplePaginate(Paginator::resolvePerPage('per_page', 20, 50)); return AgriculturalBaseResource::collection($list); } public function store(AgriculturalBaseRequest $request) { $cropsIds = $request->input('crops_ids', []); try { DB::beginTransaction(); //添加基地信息 $base = AgriculturalBase::create($request->input()); //添加基地农作物 $base->crops()->sync($cropsIds); DB::commit(); } catch(\Throwable $th) { DB::rollBack(); report($th); return $this->error('添加失败,请稍后再试'); } return $this->success('添加成功!'); } public function show(AgriculturalBase $agriculturalBasic) { return $this->json(AgriculturalBaseResource::make($agriculturalBasic)); } public function update(AgriculturalBase $agriculturalBasic, AgriculturalBaseRequest $request) { $cropsIds = $request->input('crops_ids', []); try { DB::beginTransaction(); //添加基地信息 $agriculturalBasic->update($request->input()); //添加基地农作物 $agriculturalBasic->crops()->sync($cropsIds); DB::commit(); } catch(\Throwable $th) { DB::rollBack(); report($th); return $this->error('修改失败,请稍后再试'); } return $this->success('修改成功!'); } public function destroy(AgriculturalBase $agriculturalBasic) { try { DB::beginTransaction(); $agriculturalBasic->crops()->sync([]); $agriculturalBasic->delete(); DB::commit(); } catch(\Throwable $th) { DB::rollBack(); report($th); return $this->error('删除失败,请稍后再试'); } return $this->success('删除成功!'); } }