110 lines
3.7 KiB
PHP
110 lines
3.7 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Http\RedirectResponse;
|
|
use App\Models\Turnos;
|
|
use App\Http\Requests\UpdatedTurnosRequest;
|
|
|
|
class TurnosController extends Controller
|
|
{
|
|
public function index(Request $request){
|
|
|
|
$turnos = Turnos::withTrashed()->get();
|
|
|
|
// $turnos = Turnos::findOrFail(13);
|
|
//$turnos = Turnos::where('id_turno', 1)->first();
|
|
//$turnos = Turnos::where('descripcion', 'Cursos, capacitaciones y formación')->get();
|
|
//$turnos = Turnos::where('descripcion', 'like', '%Prod%')->get();
|
|
|
|
//$turnos = Turnos::orderBy('nombre', 'desc')->get();
|
|
|
|
//$turnos = Turnos::first();
|
|
//$turnos = Turnos::last();
|
|
/*Turnos::count();*/
|
|
|
|
|
|
return view('turnos.index', ["turnos"=>$turnos]);
|
|
}
|
|
public function show($id){
|
|
$turnos = Turnos::findOrfail($id);
|
|
return view('turnos.show', ["turnos"=>$turnos]);
|
|
}
|
|
|
|
public function destroy(Request $request, $id){
|
|
$turnos = Turnos::findOrfail($id);
|
|
$turnos->delete();
|
|
$request->session()->flash('mensaje-success', 'El turno fue eliminado.');
|
|
return redirect('/turnos');
|
|
}
|
|
|
|
|
|
public function create(){
|
|
return view('turnos.new');
|
|
}
|
|
|
|
public function store(Request $request){
|
|
|
|
$request->validate([
|
|
|
|
'nombre' => 'required|unique:turnos,nombre|regex:/^[a-zA-ZáéíóúñÁÉÍÓÚ]+( [a-zA-ZáéíóúñÁÉÍÓÚ]+)*$/|max:20',
|
|
'domicilio' => 'required',
|
|
'apellido' => 'required',
|
|
'dni' => 'required|numeric|digits_between:7,8',
|
|
],
|
|
[
|
|
'dni.unique' => 'el campo dni no se puede repetir',
|
|
'dni.required' => 'el campo dni es requerido',
|
|
'dni.numeric' => 'el campo dni debe ser un número',
|
|
'dni.digits_between' => 'el campo dni debe contener entre 7 y 8 dígitos',
|
|
'nombre.required' => 'el campo nombre es requerido',
|
|
'nombre.regex' => 'el campo nombre solo debe contener letras',
|
|
'nombre.max' => 'el campo nombre debe contener un maximo de 20 caracteres',
|
|
'apellido.required' => 'el campo apellido es requerido',
|
|
'domicilio.required' => 'el campo domicilio es requerido',
|
|
|
|
]
|
|
);
|
|
|
|
$turnos = new Turnos();
|
|
$turnos->fill([
|
|
'nombre' => $request->input('nombre'),
|
|
'domicilio' => $request->input('domicilio'),
|
|
'dni' => $request->input('dni'),
|
|
'apellido' => $request->input('apellido'),
|
|
]);
|
|
$turnos->save();
|
|
$request->session()->flash('mensaje-success', 'El turno fue agregado.');
|
|
return redirect('/turnos');
|
|
}
|
|
|
|
public function edit($id){
|
|
$turnos = Turnos::findOrfail($id);
|
|
//$turno = Turnos::where('id_turno',$id)->first();
|
|
return view('turnos.edit', ["turnos"=>$turnos]);
|
|
}
|
|
|
|
public function update(UpdatedTurnosRequest $request, $id){
|
|
$turnos = Turnos::findOrfail($id);
|
|
$turnos->fill([
|
|
'nombre' => $request->input('nombre'),
|
|
'domicilio' => $request->input('domicilio'),
|
|
'dni' => $request->input('dni'),
|
|
'apellido' => $request->input('apellido'),
|
|
]);
|
|
$turnos->update();
|
|
$request->session()->flash('mensaje-success', 'El turno fue modificado.');
|
|
return redirect('/turnos');
|
|
}
|
|
|
|
public function restaurar(Request $request, $id){
|
|
$turnos = Turnos::withTrashed()->findOrfail($id);
|
|
$turnos->restore();
|
|
$request->session()->flash('mensaje-success', 'El turno fue restaurado.');
|
|
return redirect('/turnos');
|
|
}
|
|
|
|
|
|
}
|