From 080d2e904696d42e7abc2deacbb0e02eba592aac Mon Sep 17 00:00:00 2001 From: Silvia Moya Date: Tue, 2 Jun 2026 16:59:53 -0300 Subject: [PATCH] editar, eliminar y restaurar personal --- app/Http/Controllers/personalController.php | 62 ++++++++++++++++++++- app/Models/personal.php | 13 +++++ resources/views/personal/edit.blade.php | 48 ++++++++++++++++ resources/views/personal/index.blade.php | 48 ++++++++++++++++ resources/views/personal/new.blade.php | 43 ++++++++++++++ resources/views/personal/show.blade.php | 43 ++++++++++++++ routes/web.php | 15 ++++- 7 files changed, 269 insertions(+), 3 deletions(-) create mode 100644 resources/views/personal/edit.blade.php create mode 100644 resources/views/personal/index.blade.php create mode 100644 resources/views/personal/new.blade.php create mode 100644 resources/views/personal/show.blade.php diff --git a/app/Http/Controllers/personalController.php b/app/Http/Controllers/personalController.php index 4baf087..973695a 100644 --- a/app/Http/Controllers/personalController.php +++ b/app/Http/Controllers/personalController.php @@ -3,8 +3,68 @@ namespace App\Http\Controllers; use Illuminate\Http\Request; +use Illuminate\Http\RedirectResponse; +use App\Models\personal; + class personalController extends Controller { - // + public function index(Request $request){ + + $personal = personal::withTrashed()-> get(); + + return view('personal.index', ['personal'=>$personal]); + } + public function show($id){ + $personal = personal::findOrfail($id); + return view('personal.show', ["per"=>$personal]); + } + + public function destroy(Request $request, $id){ + $personal = personal::findOrfail($id); + $personal->delete(); + return redirect('/personal'); + } + + public function create(){ + return view('personal.new'); + } + + public function store(Request $request){ + + $personal = new personal(); + $personal->fill([ + 'nombre' => $request->input('nombre'), + 'apellido' => $request->input('apellido'), + 'dni' => $request->input('dni'), + 'domicilio' => $request->input('domicilio'), + ]); + $personal->save(); + return redirect('/personal'); + } + + public function edit($id){ + $personal = personal::findOrfail($id); + return view('personal.edit', ["per"=>$personal]); + } + + public function update(Request $request, $id){ + $personal = personal::findOrfail($id); + $personal->fill([ + 'nombre' => $request->input('nombre'), + 'apellido' => $request->input('apellido'), + 'dni' => $request->input('dni'), + 'domicilio' => $request->input('domicilio'), + ]); + $personal->update(); + return redirect('/personal'); + } + + public function restaurar(Request $request, $id){ + $cpersonal = personal::withTrashed()->findOrfail($id); + $personal->restore(); + return redirect('/personal'); + } + } + diff --git a/app/Models/personal.php b/app/Models/personal.php index 7c73234..906360e 100644 --- a/app/Models/personal.php +++ b/app/Models/personal.php @@ -4,8 +4,21 @@ namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; +use Illuminate\Database\Eloquent\SoftDeletes; class personal extends Model { use HasFactory; + use SoftDeletes; + protected $table = 'personal'; + + public $primaryKey = 'id_personal'; + + public $timestamps = true; + protected $fillable = [ + 'nombre', + 'apellido', + 'dni', + 'domicilio', + ]; } diff --git a/resources/views/personal/edit.blade.php b/resources/views/personal/edit.blade.php new file mode 100644 index 0000000..2842443 --- /dev/null +++ b/resources/views/personal/edit.blade.php @@ -0,0 +1,48 @@ + + + + + + Editar personal + + + +

Editar datos de personal

+ +
+ @csrf + @method('PUT') + +
+
+ + +
+ +
+
+ +
+ +
+
+ +
+ +
+
+ +
+ +
+ + Volver al listado +
+
+ + + diff --git a/resources/views/personal/index.blade.php b/resources/views/personal/index.blade.php new file mode 100644 index 0000000..7d83227 --- /dev/null +++ b/resources/views/personal/index.blade.php @@ -0,0 +1,48 @@ + + + + Personal policial + + + +

+ +

+ + diff --git a/resources/views/personal/new.blade.php b/resources/views/personal/new.blade.php new file mode 100644 index 0000000..7ddf754 --- /dev/null +++ b/resources/views/personal/new.blade.php @@ -0,0 +1,43 @@ + + + + + + Agresar personal + + + +

Nuevo personal

+ +
+ @csrf + +
+
+ +
+ +
+
+ +
+ +
+
+ +
+ +
+
+ +
+ + +
+ + Volver al listado +
+
+ + + \ No newline at end of file diff --git a/resources/views/personal/show.blade.php b/resources/views/personal/show.blade.php new file mode 100644 index 0000000..f5e01c1 --- /dev/null +++ b/resources/views/personal/show.blade.php @@ -0,0 +1,43 @@ + + + + + + Ver personal + + + +

Ver personal

+ + + +
+
+ +
+ +
+
+ +
+ +
+
+ +
+ +
+
+ +
+ +
+ Volver al listado +
+ + + diff --git a/routes/web.php b/routes/web.php index d259f33..88ee372 100644 --- a/routes/web.php +++ b/routes/web.php @@ -1,7 +1,7 @@ name('personal.restaurar'); + +/*Route::get('personal', [personalController::class, 'index'])->name('personal.index'); +Route::post('personal', [personalController::class, 'store'])->name('personal.store'); +Route::get('personal/create', [personalController::class, 'create'])->name('personal.create'); +Route::get('personal/{personal}', [personalController::class, 'show'])->name('personal.show'); +Route::delete('personal/{personal}', [personalController::class, 'destroy'])->name('personal.destroy'); +Route::get('personal/{personal}/edit', [personalController::class, 'edit'])->name('personal.edit'); +Route::put('personal/{personal}', [personalController::class, 'update'])->name('personal.update');*/