Carga inicial
This commit is contained in:
127
app/Http/Controllers/Administrador/SucursalesController.php
Normal file
127
app/Http/Controllers/Administrador/SucursalesController.php
Normal file
@@ -0,0 +1,127 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Administrador;
|
||||
|
||||
use App\Http\Requests\Administrador\SucursalesRequest;
|
||||
use App\Models\Sucursal;
|
||||
use App\Models\VehiculoSucursal;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Http\Controllers\Controller;
|
||||
|
||||
class SucursalesController extends Controller
|
||||
{
|
||||
/**
|
||||
* Display a listing of the resource.
|
||||
*
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function index(Request $request)
|
||||
{
|
||||
$deleted = $request->input('deleted');
|
||||
$orderBy = $request->input('sortBy','nombre');
|
||||
$order = $request->input('order','asc');
|
||||
$queryBuilder = Sucursal::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)){
|
||||
$sucursal = $queryBuilder->paginate($perPage);
|
||||
}else{
|
||||
$sucursal = ['data'=>$queryBuilder->get()];
|
||||
}
|
||||
|
||||
return response()->success($sucursal);
|
||||
}
|
||||
|
||||
/**
|
||||
* Store a newly created resource in storage.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function store(SucursalesRequest $request)
|
||||
{
|
||||
$data = $request->all();
|
||||
|
||||
try {
|
||||
$sucursal = Sucursal::create($data);
|
||||
|
||||
return response()->success($sucursal);
|
||||
} catch (\Exception $e) {
|
||||
return response()->unprocessable('Error', ['Error al guardar la sucursal.']);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Display the specified resource.
|
||||
*
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function show($id)
|
||||
{
|
||||
$sucursal = Sucursal::where('id', $id)
|
||||
->withTrashed()
|
||||
->firstOrFail();
|
||||
|
||||
return response()->success($sucursal);
|
||||
}
|
||||
|
||||
/**
|
||||
* Update the specified resource in storage.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\Response
|
||||
*/
|
||||
public function update(SucursalesRequest $request, $id)
|
||||
{
|
||||
$data = $request->all();
|
||||
|
||||
try {
|
||||
$sucursal = Sucursal::where('id',$id)
|
||||
->withTrashed()
|
||||
->firstOrFail();
|
||||
|
||||
$sucursal->update($data);
|
||||
|
||||
return response()->success($sucursal);
|
||||
} catch (\Exception $e) {
|
||||
return response()->unprocessable('Error', ['Error al actualizar la sucursal.']);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 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){
|
||||
$sucursal = Sucursal::where('id',$id)
|
||||
->onlyTrashed()
|
||||
->first();
|
||||
|
||||
$sucursal->restore();
|
||||
}else{
|
||||
$sucursal = Sucursal::findOrFail($id);
|
||||
$sucursal->delete();
|
||||
|
||||
VehiculoSucursal::where('sucursal_id', $id)->delete();
|
||||
}
|
||||
|
||||
return response()->success(['result' => 'ok']);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user