input('deleted'); $orderBy = $request->input('sortBy','nombre'); $order = $request->input('order','asc'); $queryBuilder = CatEstatuServicio::orderBy($orderBy,$order); if($query = $request->get('query',false)){ $queryBuilder->where(function($q) use ($query){ $q->where('nombre','like','%' .$query.'%'); }); } if($deleted) { $queryBuilder->onlyTrashed(); } if($perPage = $request->input('perPage',false)){ $estatus = $queryBuilder->paginate($perPage); }else{ $estatus = ['data'=>$queryBuilder->get()]; } return response()->success($estatus); } /** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(EstatusServiciosRequest $request) { $data = $request->all(); try { $estatus = CatEstatuServicio::create($data); return response()->success($estatus); } catch (\Exception $e) { return response()->unprocessable('Error', ['Error al guardar el Estatus de Servicio.']); } } /** * Display the specified resource. * * @param int $id * @return \Illuminate\Http\Response */ public function show($id) { $estatus = CatEstatuServicio::where('id', $id) ->withTrashed() ->firstOrFail(); return response()->success($estatus); } /** * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request * @param int $id * @return \Illuminate\Http\Response */ public function update(EstatusServiciosRequest $request, $id) { $data = $request->all(); try { $estatus = CatEstatuServicio::where('id',$id) ->withTrashed() ->firstOrFail(); $estatus->update($data); return response()->success($estatus); } catch (\Exception $e) { return response()->unprocessable('Error', ['Error al actualizar el Estatus de Servicio.']); } } /** * Remove the specified resource from storage. * * @param int $id * @return \Illuminate\Http\Response */ public function destroy($id, Request $request) { $deleted = $request->input('deleted'); if($deleted){ $estatus = CatEstatuServicio::where('id',$id) ->onlyTrashed() ->first(); $estatus->restore(); }else{ $estatus = CatEstatuServicio::findOrFail($id); $estatus->delete(); } return response()->success(['result' => 'ok']); } }